uk.ac.starlink.ttools.plot2.config
Class ToggleSpecifier<T>

java.lang.Object
  extended by uk.ac.starlink.ttools.plot2.config.SpecifierPanel<T>
      extended by uk.ac.starlink.ttools.plot2.config.ToggleSpecifier<T>
All Implemented Interfaces:
Specifier<T>

public class ToggleSpecifier<T>
extends SpecifierPanel<T>

Specifier that decorates another one with a toggle button for selection of a fixed value.

Since:
5 Mar 2013
Author:
Mark Taylor

Constructor Summary
ToggleSpecifier(Specifier<T> base, T toggleValue, String label)
          Constructor.
 
Method Summary
protected  JComponent createComponent()
          Abstract method called lazily during getComponent to obtain the graphical component used by this specifier.
 T getSpecifiedValue()
          Returns the typed value currently specified by the graphical component.
 void setSpecifiedValue(T value)
          Sets the typed value represented by the graphical component.
 void submitReport(ReportMap report)
          Accepts information about a completed plot that was drawn with input from this specifier.
 
Methods inherited from class uk.ac.starlink.ttools.plot2.config.SpecifierPanel
addActionListener, fireAction, getActionForwarder, getChangeForwarder, getComponent, isXFill, removeActionListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ToggleSpecifier

public ToggleSpecifier(Specifier<T> base,
                       T toggleValue,
                       String label)
Constructor.

Parameters:
base - base specifier
toggleValue - value to yield if the toggle is set
label - text to label the toggle button with
Method Detail

createComponent

protected JComponent createComponent()
Description copied from class: SpecifierPanel
Abstract method called lazily during getComponent 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.

Specified by:
createComponent in class SpecifierPanel<T>
Returns:
graphical component

getSpecifiedValue

public T getSpecifiedValue()
Description copied from interface: Specifier
Returns the typed value currently specified by the graphical component.

Returns:
specified value

setSpecifiedValue

public void setSpecifiedValue(T value)
Description copied from interface: Specifier
Sets the typed value represented by the graphical component. Calling this method ought to make it clear to the user what value it is set at; in any case a subsequent call of getSpecifiedValue should yield the same result.

However if a value is set which is of the correct type but cannot be represented by this specifier, results are unpredictable.

Parameters:
value - new value

submitReport

public void submitReport(ReportMap report)
Description copied from interface: Specifier
Accepts information about a completed plot that was drawn with input from this specifier. In many cases, the implementation of this method will be a no-op, but it gives this object a chance to update its state or its component's appearance based on the way the plot was actually drawn, which may provide information not otherwise available to this object.

Parameters:
report - report of a plot partially specified by this object


Copyright © 2015 Central Laboratory of the Research Councils. All Rights Reserved.