diff --git a/src/main/java/org/scijava/ui/swing/console/ConsolePanel.java b/src/main/java/org/scijava/ui/swing/console/ConsolePanel.java index 1251f3c..5157da4 100644 --- a/src/main/java/org/scijava/ui/swing/console/ConsolePanel.java +++ b/src/main/java/org/scijava/ui/swing/console/ConsolePanel.java @@ -132,12 +132,12 @@ private synchronized void initGui() { textPanel.add(textPane); scrollPane = new JScrollPane(textPanel); - scrollPane.setPreferredSize(new Dimension(600, 600)); // Make the scroll bars move at a reasonable pace. - final FontMetrics fm = scrollPane.getFontMetrics(scrollPane.getFont()); + final FontMetrics fm = scrollPane.getFontMetrics(textPane.getFont()); final int charWidth = fm.charWidth('a'); final int lineHeight = fm.getHeight(); + scrollPane.setPreferredSize(new Dimension(charWidth * 80, lineHeight * 10)); //80 columns, 10 lines scrollPane.getHorizontalScrollBar().setUnitIncrement(charWidth); scrollPane.getVerticalScrollBar().setUnitIncrement(2 * lineHeight); textPane.setComponentPopupMenu(initMenu()); diff --git a/src/main/java/org/scijava/ui/swing/widget/SwingColorWidget.java b/src/main/java/org/scijava/ui/swing/widget/SwingColorWidget.java index 3161335..8d069db 100644 --- a/src/main/java/org/scijava/ui/swing/widget/SwingColorWidget.java +++ b/src/main/java/org/scijava/ui/swing/widget/SwingColorWidget.java @@ -46,6 +46,7 @@ import javax.swing.JColorChooser; import javax.swing.JDialog; import javax.swing.JPanel; +import javax.swing.UIManager; import javax.swing.colorchooser.AbstractColorChooserPanel; import org.scijava.plugin.Plugin; @@ -66,7 +67,7 @@ public class SwingColorWidget extends SwingInputWidget implements ActionListener, ColorWidget { - private static final int SWATCH_WIDTH = 64, SWATCH_HEIGHT = 16; + private static final int SWATCH_WIDTH = 64, SWATCH_HEIGHT = widgetHeight(); private static final String HSB_CLASS_NAME = "javax.swing.colorchooser.DefaultHSBChooserPanel"; @@ -211,6 +212,15 @@ private int value(final Object o) { return chooser; } + private static int widgetHeight() { + try { + return UIManager.getFont("TextField.font").getSize(); + } catch (final Exception ignored) { + // do nothing + } + return 16; + } + // -- AbstractUIInputWidget methods --- @Override diff --git a/src/main/java/org/scijava/ui/swing/widget/SwingNumberWidget.java b/src/main/java/org/scijava/ui/swing/widget/SwingNumberWidget.java index 82481b0..1cbd5c7 100644 --- a/src/main/java/org/scijava/ui/swing/widget/SwingNumberWidget.java +++ b/src/main/java/org/scijava/ui/swing/widget/SwingNumberWidget.java @@ -128,7 +128,7 @@ else if (model.isStyle(NumberWidget.SLIDER_STYLE)) { } spinner.setEditor(new JSpinner.NumberEditor(spinner, format)); - Dimension spinnerSize = spinner.getSize(); + Dimension spinnerSize = spinner.getPreferredSize(); spinnerSize.width = 50; spinner.setPreferredSize(spinnerSize); fixSpinner(type);