Package uk.ac.starlink.topcat
Class RestrictedColumnComboBoxModel
java.lang.Object
javax.swing.AbstractListModel<TableColumn>
uk.ac.starlink.topcat.ColumnComboBoxModel
uk.ac.starlink.topcat.RestrictedColumnComboBoxModel
- All Implemented Interfaces:
Serializable
,EventListener
,ComboBoxModel<TableColumn>
,TableColumnModelListener
,ListModel<TableColumn>
Does a similar job as for ColumnComboBoxModel, but when only a subset
of the available columns should show up in the combobox.
Use it in the same way as ColumnComboBoxModel, but implement the
acceptColumn(uk.ac.starlink.table.ColumnInfo)
method appropriately. In the case that
acceptColumn accepts everything, this will behave just the
same as a ColumnComboBoxModel (though perhaps less efficiently).- See Also:
-
Field Summary
Fields inherited from class uk.ac.starlink.topcat.ColumnComboBoxModel
NO_COLUMN
Fields inherited from class javax.swing.AbstractListModel
listenerList
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract boolean
acceptColumn
(uk.ac.starlink.table.ColumnInfo cinfo) Determines whether a column with given metadata in the column model should show up in the combobox.void
void
void
getElementAt
(int index) int
getSize()
makeClassColumnComboBoxModel
(TableColumnModel colModel, boolean hasNone, Class<?> clazz) Returns a column combo box model which checks for compatibility with a given class.Methods inherited from class uk.ac.starlink.topcat.ColumnComboBoxModel
columnMarginChanged, columnSelectionChanged, getColumnModel, getSelectedItem, makeComboBox, setHasNone, setSelectedItem
Methods inherited from class javax.swing.AbstractListModel
addListDataListener, fireContentsChanged, fireIntervalAdded, fireIntervalRemoved, getListDataListeners, getListeners, removeListDataListener
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface javax.swing.ListModel
addListDataListener, removeListDataListener
-
Constructor Details
-
RestrictedColumnComboBoxModel
-
-
Method Details
-
acceptColumn
public abstract boolean acceptColumn(uk.ac.starlink.table.ColumnInfo cinfo) Determines whether a column with given metadata in the column model should show up in the combobox.- Parameters:
cinfo
- column metadata to assess- Returns:
- true iff the column is to be used
-
getElementAt
- Specified by:
getElementAt
in interfaceListModel<TableColumn>
- Overrides:
getElementAt
in classColumnComboBoxModel
-
getSize
public int getSize()- Specified by:
getSize
in interfaceListModel<TableColumn>
- Overrides:
getSize
in classColumnComboBoxModel
-
columnAdded
- Specified by:
columnAdded
in interfaceTableColumnModelListener
- Overrides:
columnAdded
in classColumnComboBoxModel
-
columnRemoved
- Specified by:
columnRemoved
in interfaceTableColumnModelListener
- Overrides:
columnRemoved
in classColumnComboBoxModel
-
columnMoved
- Specified by:
columnMoved
in interfaceTableColumnModelListener
- Overrides:
columnMoved
in classColumnComboBoxModel
-
makeClassColumnComboBoxModel
public static RestrictedColumnComboBoxModel makeClassColumnComboBoxModel(TableColumnModel colModel, boolean hasNone, Class<?> clazz) Returns a column combo box model which checks for compatibility with a given class. Class matching is not strict in the following sense: any numeric class (Number
) is considered assignable to any other numeric class.- Parameters:
colModel
- the column modelhasNone
- true if you want a NO_COLUMN entryclazz
- the class that available columns have to have data assignable to
-