Author: sletellier Date: 2012-07-06 13:20:36 +0200 (Fri, 06 Jul 2012) New Revision: 2389 Url: http://nuiton.org/repositories/revision/jaxx/2389 Log: FireContentChanged like DefaultComboBoxModel Modified: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListModel.java Modified: trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListModel.java =================================================================== --- trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListModel.java 2012-07-06 10:29:24 UTC (rev 2388) +++ trunk/jaxx-runtime/src/main/java/jaxx/runtime/swing/model/GenericListModel.java 2012-07-06 11:20:36 UTC (rev 2389) @@ -28,6 +28,7 @@ import java.util.List; import javax.swing.ComboBoxModel; import javax.swing.DefaultListModel; +import javax.swing.event.ListDataEvent; import javax.swing.event.ListDataListener; /** @@ -114,6 +115,7 @@ List<B> newValues = getSelectedValues(); fireSelectionAdded(newValues); + fireContentsChanged(this, -1, -1); firePropertyChange(PROPERTY_SELECTED_VALUE, oldValue, newValues); } @@ -126,6 +128,20 @@ return selectedValues.get(0); } + protected void fireContentsChanged(Object source, int index0, int index1) { + Object[] listeners = getListModel().getListDataListeners(); + ListDataEvent e = null; + + for (int i = listeners.length - 2; i >= 0; i -= 2) { + if (listeners[i] == ListDataListener.class) { + if (e == null) { + e = new ListDataEvent(source, ListDataEvent.CONTENTS_CHANGED, index0, index1); + } + ((ListDataListener)listeners[i+1]).contentsChanged(e); + } + } + } + @Override public int getSize() { return getListModel().size();