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 TypeMethodDescriptionvoidaddActionListener(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 JComponentAbstract method called lazily duringgetComponentto obtain the graphical component used by this specifier.protected voidNotifies all the registered action listeners of a non-specific event.protected ActionListenerReturns a listener which will take ActionEvents and forward them to any listeners registered with this panel.protected ChangeListenerReturns 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.booleanisXFill()Whether the GUI component should fill the available width of a panel.voidremoveActionListener(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, waitMethods 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:SpecifierWhether 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 duringgetComponentto 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:SpecifierReturns 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/isEnabledmethods.- Specified by:
getComponentin interfaceSpecifier<V>- Returns:
- specifier component
-
addActionListener
Description copied from interface:SpecifierAdds a listener which will be informed when the user interacts with the graphical component to cause a (potential) change in the value.- Specified by:
addActionListenerin interfaceSpecifier<V>- Parameters:
listener- listener to add
-
removeActionListener
Description copied from interface:SpecifierRemoves a listener previously added byaddActionListener.- Specified by:
removeActionListenerin 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
getActionForwarderorgetChangeForwarder, 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
getActionForwarderorgetChangeForwarder, 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.
-