diff --git a/projects/samskivert/src/java/com/samskivert/util/RuntimeAdjust.java b/projects/samskivert/src/java/com/samskivert/util/RuntimeAdjust.java index 083b315f..ef10d04b 100644 --- a/projects/samskivert/src/java/com/samskivert/util/RuntimeAdjust.java +++ b/projects/samskivert/src/java/com/samskivert/util/RuntimeAdjust.java @@ -1,5 +1,5 @@ // -// $Id: RuntimeAdjust.java,v 1.4 2003/01/15 02:29:23 mdb Exp $ +// $Id: RuntimeAdjust.java,v 1.5 2003/01/15 03:24:53 mdb Exp $ package com.samskivert.util; @@ -14,9 +14,11 @@ import java.util.Iterator; import javax.swing.JButton; import javax.swing.JCheckBox; import javax.swing.JComboBox; +import javax.swing.JComponent; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JSeparator; +import javax.swing.JTabbedPane; import javax.swing.JTextField; import com.samskivert.Log; @@ -54,20 +56,19 @@ public class RuntimeAdjust * Creates a Swing user interface that can be used to adjust all * registered runtime adjustments. */ - public static JPanel createAdjustEditor () + public static JComponent createAdjustEditor () { VGroupLayout layout = new VGroupLayout( VGroupLayout.NONE, VGroupLayout.STRETCH, 3, VGroupLayout.TOP); layout.setOffAxisJustification(VGroupLayout.LEFT); - ScrollablePanel panel = new ScrollablePanel(layout); - panel.setTracksViewportWidth(true); - Font font = panel.getFont(); + JTabbedPane editor = new JTabbedPane(); + Font font = editor.getFont(); Font smaller = font.deriveFont(font.getSize()-1f); - Font bigger = font.deriveFont(Font.BOLD, font.getSize()+2f); String library = null; + ScrollablePanel lpanel = null; String pkgname = null; CollapsiblePanel pkgpanel = null; @@ -79,9 +80,9 @@ public class RuntimeAdjust if (!adjust.getLibrary().equals(library)) { library = adjust.getLibrary(); pkgname = null; - JLabel label = new JLabel(library, JLabel.CENTER); - label.setFont(bigger); - panel.add(label); + lpanel = new ScrollablePanel(layout); + lpanel.setTracksViewportWidth(true); + editor.addTab(library, lpanel); } // create a new package panel if necessary @@ -94,17 +95,17 @@ public class RuntimeAdjust pkgpanel.setTriggerContainer(pkgcheck); pkgpanel.getContent().setLayout(layout); pkgpanel.setCollapsed(false); - panel.add(pkgpanel); + lpanel.add(pkgpanel); } // add an entry for this adjustment pkgpanel.getContent().add(new JSeparator()); - JPanel editor = adjust.getEditor(); - editor.setFont(smaller); - pkgpanel.getContent().add(editor); + JPanel aeditor = adjust.getEditor(); + aeditor.setFont(smaller); + pkgpanel.getContent().add(aeditor); } - return panel; + return editor; } /** Provides runtime adjustable boolean variables. */ diff --git a/projects/samskivert/tests/src/java/com/samskivert/util/AdjustTestApp.java b/projects/samskivert/tests/src/java/com/samskivert/util/AdjustTestApp.java index 5ce2e4a6..8d2527ab 100644 --- a/projects/samskivert/tests/src/java/com/samskivert/util/AdjustTestApp.java +++ b/projects/samskivert/tests/src/java/com/samskivert/util/AdjustTestApp.java @@ -1,5 +1,5 @@ // -// $Id: AdjustTestApp.java,v 1.1 2003/01/15 00:47:06 mdb Exp $ +// $Id: AdjustTestApp.java,v 1.2 2003/01/15 03:24:53 mdb Exp $ package com.samskivert.util; @@ -7,7 +7,6 @@ import java.awt.BorderLayout; import javax.swing.BorderFactory; import javax.swing.JComponent; import javax.swing.JFrame; -import javax.swing.JPanel; /** * Does something extraordinary. @@ -38,11 +37,11 @@ public class AdjustTestApp "otherpackage.test.enum_adjust1", config, new String[] { "debug", "info", "warning" }, "info"); - JPanel editor = RuntimeAdjust.createAdjustEditor(); JFrame frame = new JFrame(); ((JComponent)frame.getContentPane()).setBorder( BorderFactory.createEmptyBorder(5, 5, 5, 5)); - frame.getContentPane().add(editor, BorderLayout.CENTER); + frame.getContentPane().add(RuntimeAdjust.createAdjustEditor(), + BorderLayout.CENTER); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.pack(); frame.show();