This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository jaxx. See http://git.nuiton.org/jaxx.git commit 51a963b0762c4a499d50c65270c5370bc9a8cfaa Author: Kevin Morin <morin@codelutin.com> Date: Mon Sep 29 11:30:39 2014 +0200 fixes #3521 [Table filter] Enable to choose the popup default size --- .../runtime/swing/table/filter/TableFilterColumnPopup.java | 12 ++++++++++-- .../runtime/swing/table/filter/TableRowFilterSupport.java | 12 ++++++++++-- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/jaxx-widgets/src/main/java/jaxx/runtime/swing/table/filter/TableFilterColumnPopup.java b/jaxx-widgets/src/main/java/jaxx/runtime/swing/table/filter/TableFilterColumnPopup.java index 99161e3..1f1e9f4 100644 --- a/jaxx-widgets/src/main/java/jaxx/runtime/swing/table/filter/TableFilterColumnPopup.java +++ b/jaxx-widgets/src/main/java/jaxx/runtime/swing/table/filter/TableFilterColumnPopup.java @@ -89,7 +89,7 @@ class TableFilterColumnPopup extends MouseAdapter { private final JPopupMenu menu; - private Dimension defaultSize = new Dimension(100, 100); + private Dimension defaultSize = null; public TableFilterColumnPopup(TableFilter<?> filter) { @@ -101,7 +101,11 @@ class TableFilterColumnPopup extends MouseAdapter { public void popupMenuWillBecomeVisible(PopupMenuEvent e) { if (menu.getComponentCount() == 0) { JComponent content = buildContent(); - defaultSize = content.getPreferredSize(); + if (defaultSize == null) { + defaultSize = content.getPreferredSize(); + } else { + content.setPreferredSize(defaultSize); + } menu.add(content); @@ -162,6 +166,10 @@ class TableFilterColumnPopup extends MouseAdapter { return defaultSize; } + public final void setDefaultSize(Dimension dimension) { + defaultSize = dimension; + } + public final Dimension getPreferredSize() { return menu.getPreferredSize(); } diff --git a/jaxx-widgets/src/main/java/jaxx/runtime/swing/table/filter/TableRowFilterSupport.java b/jaxx-widgets/src/main/java/jaxx/runtime/swing/table/filter/TableRowFilterSupport.java index c177848..f98080e 100644 --- a/jaxx-widgets/src/main/java/jaxx/runtime/swing/table/filter/TableRowFilterSupport.java +++ b/jaxx-widgets/src/main/java/jaxx/runtime/swing/table/filter/TableRowFilterSupport.java @@ -34,6 +34,7 @@ package jaxx.runtime.swing.table.filter; import org.nuiton.decorator.Decorator; +import java.awt.*; import java.beans.PropertyChangeEvent; import java.beans.PropertyChangeListener; import java.util.Collections; @@ -49,6 +50,7 @@ public final class TableRowFilterSupport { private final TableFilter<?> filter; private boolean actionsVisible = true; private boolean useTableRenderers = false; + private Dimension popupDefaultSize = null; private TableRowFilterSupport( TableFilter<?> filter ) { if ( filter == null ) throw new NullPointerException(); @@ -90,14 +92,20 @@ public final class TableRowFilterSupport { return this; } - public JTable apply() { + public TableRowFilterSupport setPopupDefaultSize(Dimension popupDefaultSize) { + this.popupDefaultSize = popupDefaultSize; + return this; + } + + public JTable apply() { final TableFilterColumnPopup filterPopup = new TableFilterColumnPopup(filter); filterPopup.setEnabled(true); filterPopup.setActionsVisible(actionsVisible); filterPopup.setSearchable(searchable); filterPopup.searchDecorator(decorator); - filterPopup.setUseTableRenderers( useTableRenderers ); + filterPopup.setUseTableRenderers(useTableRenderers); + filterPopup.setDefaultSize(popupDefaultSize); setupTableHeader(); -- To stop receiving notification emails like this one, please contact nuiton.org SCM administrator <admin+scm@nuiton.org>.