Class SpecifierPanel<V>
java.lang.Object
uk.ac.starlink.ttools.plot2.config.SpecifierPanel<V>
- All Implemented Interfaces:
Specifier<V>
- Direct Known Subclasses:
BinSizer.BinSizerSpecifier
,ChooserColorSpecifier
,ComboBoxSpecifier
,MultiSpecifierPanel
,SliderSpecifier
,TextFieldSpecifier
,ToggleSpecifier
,UnitRangeSpecifier
Partial Specifier implementation.
- Since:
- 5 Mar 2013
- Author:
- Mark Taylor
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
addActionListener
(ActionListener listener) Adds a listener which will be informed when the user interacts with the graphical component to cause a (potential) change in the value.protected abstract JComponent
Abstract method called lazily duringgetComponent
to obtain the graphical component used by this specifier.protected void
Notifies all the registered action listeners of a non-specific event.protected ActionListener
Returns a listener which will take ActionEvents and forward them to any listeners registered with this panel.protected ChangeListener
Returns a listener which will take ChangeEvents and forward them to any listeners registered with this panel.Returns the graphical component that the user can interact with to supply a value.boolean
isXFill()
Whether the GUI component should fill the available width of a panel.void
removeActionListener
(ActionListener listener) Removes a listener previously added byaddActionListener
.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface uk.ac.starlink.ttools.plot2.config.Specifier
getSpecifiedValue, setSpecifiedValue, submitReport
-
Constructor Details
-
SpecifierPanel
protected SpecifierPanel(boolean isXFill) Constructor.- Parameters:
isXFill
- true if the graphical component should expand to fill the available horizontal space
-
-
Method Details
-
isXFill
public boolean isXFill()Description copied from interface:Specifier
Whether the GUI component should fill the available width of a panel. This rendering hint should on the whole this should be true for expandable components, and false for fixed size components. Components should have a fixed vertical size in any case. -
createComponent
Abstract method called lazily duringgetComponent
to obtain the graphical component used by this specifier. It will be called a maximum of once. It is not necessary that the component actually be created in this method, for instance it may be created at construction time if that's more convenient.- Returns:
- graphical component
-
getComponent
Description copied from interface:Specifier
Returns the graphical component that the user can interact with to supply a value. It should be line-like (not tall).The returned component should preferably honour the JComponent
setEnabled
/isEnabled
methods.- Specified by:
getComponent
in interfaceSpecifier<V>
- Returns:
- specifier component
-
addActionListener
Description copied from interface:Specifier
Adds a listener which will be informed when the user interacts with the graphical component to cause a (potential) change in the value.- Specified by:
addActionListener
in interfaceSpecifier<V>
- Parameters:
listener
- listener to add
-
removeActionListener
Description copied from interface:Specifier
Removes a listener previously added byaddActionListener
.- Specified by:
removeActionListener
in interfaceSpecifier<V>
- Parameters:
listener
- listener to remove
-
getActionForwarder
Returns a listener which will take ActionEvents and forward them to any listeners registered with this panel.In general any input component which forms part of this panel's GUI should have as a listener the result of
getActionForwarder
orgetChangeForwarder
, so that changes in their state are propagated to listeners of this specifier.- Returns:
- action forwarder
-
getChangeForwarder
Returns a listener which will take ChangeEvents and forward them to any listeners registered with this panel.In general any input component which forms part of this panel's GUI should have as a listener the result of
getActionForwarder
orgetChangeForwarder
, so that changes in their state are propagated to listeners of this specifier.- Returns:
- change forwarder
-
fireAction
protected void fireAction()Notifies all the registered action listeners of a non-specific event.
-