diff --git a/src/eva2/gui/PropertyDialog.java b/src/eva2/gui/PropertyDialog.java index 7b1111c2..342c2b27 100644 --- a/src/eva2/gui/PropertyDialog.java +++ b/src/eva2/gui/PropertyDialog.java @@ -24,19 +24,19 @@ public class PropertyDialog extends JDialog { /** * */ - public PropertyDialog(PropertyEditor editor, String title, int x, int y) { - super(); + public PropertyDialog(Window parent, PropertyEditor editor, String title, int x, int y) { + super(parent, title, ModalityType.APPLICATION_MODAL); setTitle(getFrameNameFromEditor(editor)); BasicResourceLoader loader = BasicResourceLoader.instance(); byte[] bytes = loader.getBytesFromResourceLocation(EvAInfo.iconLocation, true); - setDefaultCloseOperation(HIDE_ON_CLOSE); + setDefaultCloseOperation(DISPOSE_ON_CLOSE); setLayout(new BorderLayout()); propertyEditor = editor; editorComponent = editor.getCustomEditor(); add(editorComponent, BorderLayout.CENTER); + pack(); setLocation(x, y); - setVisible(true); } protected static String getFrameNameFromEditor(PropertyEditor editor) { diff --git a/src/eva2/gui/PropertyPanel.java b/src/eva2/gui/PropertyPanel.java index b1c5cd5a..07b73a0b 100644 --- a/src/eva2/gui/PropertyPanel.java +++ b/src/eva2/gui/PropertyPanel.java @@ -35,8 +35,9 @@ public class PropertyPanel extends JPanel { } public void showDialog(int initX, int initY) { + Window parent = (Window)this.getRootPane().getParent(); if (propertyDialog == null) { - propertyDialog = new PropertyDialog(propertyEditor, EVAHELP.cutClassName(propertyEditor.getClass().getName()), initX, initY); + propertyDialog = new PropertyDialog(parent, propertyEditor, EVAHELP.cutClassName(propertyEditor.getClass().getName()), initX, initY); propertyDialog.setPreferredSize(new Dimension(500, 300)); propertyDialog.setModal(true); propertyDialog.setVisible(true); @@ -67,9 +68,9 @@ public class PropertyPanel extends JPanel { Rectangle box = new Rectangle(i.left, i.top, getSize().width - i.left - i.right, getSize().height - i.top - i.bottom); - /*g.clearRect(i.left, i.top, + g.clearRect(i.left, i.top, getSize().width - i.right - i.left, - getSize().height - i.bottom - i.top);*/ + getSize().height - i.bottom - i.top); propertyEditor.paintValue(g, box); } diff --git a/src/eva2/gui/PropertySheetPanel.java b/src/eva2/gui/PropertySheetPanel.java index ab7fc544..ab03c031 100644 --- a/src/eva2/gui/PropertySheetPanel.java +++ b/src/eva2/gui/PropertySheetPanel.java @@ -96,7 +96,7 @@ public class PropertySheetPanel extends JPanel implements PropertyChangeListener } /** - * Updates the property sheet panel with a changed property and also passed + * Updates the property sheet panel with a changed property and also passes * the event along. * * @param evt a value of type 'PropertyChangeEvent' @@ -169,6 +169,7 @@ public class PropertySheetPanel extends JPanel implements PropertyChangeListener propertyTable.setDefaultRenderer(Object.class, new PropertyCellRenderer()); propertyTable.setDefaultEditor(Object.class, new PropertyCellEditor()); propertyTable.setRowHeight(20); + propertyTable.setDragEnabled(false); propertyTable.putClientProperty("terminateEditOnFocusLost", Boolean.TRUE); // Close any child windows at this point diff --git a/src/eva2/gui/editor/BigStringEditor.java b/src/eva2/gui/editor/BigStringEditor.java index 692ba6c5..f41ccf6d 100644 --- a/src/eva2/gui/editor/BigStringEditor.java +++ b/src/eva2/gui/editor/BigStringEditor.java @@ -30,7 +30,7 @@ public class BigStringEditor implements PropertyEditor { isFinished = false; BigStringEditor editor = new BigStringEditor(); - PropertyDialog dialog = new PropertyDialog(editor, file, 50, 50); + PropertyDialog dialog = new PropertyDialog(null, editor, file, 50, 50); while (isFinished == false) { try {