summaryrefslogtreecommitdiff
path: root/java/src/IceGridGUI/EditorBase.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/src/IceGridGUI/EditorBase.java')
-rw-r--r--java/src/IceGridGUI/EditorBase.java32
1 files changed, 23 insertions, 9 deletions
diff --git a/java/src/IceGridGUI/EditorBase.java b/java/src/IceGridGUI/EditorBase.java
index 17734ae40ac..6b5d6c46e7c 100644
--- a/java/src/IceGridGUI/EditorBase.java
+++ b/java/src/IceGridGUI/EditorBase.java
@@ -42,21 +42,35 @@ public abstract class EditorBase
return null;
}
- protected abstract void appendProperties(DefaultFormBuilder builder);
+ protected void appendProperties(DefaultFormBuilder builder)
+ {
+ }
+
+ protected JComponent createPropertiesPanel()
+ {
+ return null;
+ }
protected void buildPropertiesPanel()
{
- FormLayout layout = new FormLayout("right:pref, 3dlu, fill:pref:grow, 3dlu, pref", "");
-
- DefaultFormBuilder builder = new DefaultFormBuilder(layout);
- builder.border(Borders.DLU2);
- builder.rowGroupingEnabled(true);
- builder.lineGapSize(LayoutStyle.getCurrent().getLinePad());
+ JComponent contents = createPropertiesPanel();
+
+ if(contents == null)
+ {
+ FormLayout layout = new FormLayout("right:pref, 3dlu, fill:pref:grow, 3dlu, pref", "");
- appendProperties(builder);
+ DefaultFormBuilder builder = new DefaultFormBuilder(layout);
+ builder.border(Borders.DLU2);
+ builder.rowGroupingEnabled(true);
+ builder.lineGapSize(LayoutStyle.getCurrent().getLinePad());
+ appendProperties(builder);
+
+ contents = builder.getPanel();
+ }
+
JScrollPane scrollPane =
- new JScrollPane(builder.getPanel(),
+ new JScrollPane(contents,
JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);