uk.ac.starlink.ast.gui
Class TickControls

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by uk.ac.starlink.ast.gui.TickControls
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, EventListener, Accessible, ChangeListener, PlotControls

public class TickControls
extends JPanel
implements PlotControls, ChangeListener

TickControls.Java creates a "page" of widgets that are a view of an AstTicks object. They provide the ability to configure all the properties of the AstTicks object and show a current rendering of them.

Version:
$Id$
Author:
Peter W. Draper
See Also:
AstTicks, PlotConfigurator, Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
protected  AstTicks astTicks
          AstTicks model for current state.
protected  PlotController controller
          The PlotController, used to access a Frame for formatting/unformatting axes correctly.
protected static String defaultName
          The default short name for these controls.
protected static String defaultTitle
          The default title for these controls.
protected  boolean inhibitLineChangeListener
          Whether to inhibit change events from LineControls from recyling.
protected  LineControls lineControls
          Line controls widget for all line specific properties.
protected  JCheckBox logSpacingSet
          Check box for whether log ticks setting should be applied.
protected  JCheckBox show
          Check box for whether ticks should be shown or not.
protected  JCheckBox tickAll
          Check box for whether ticks should be shown on all axes.
protected  ScientificSpinner xLogGap
          Entry for ratio gap between major ticks for log X axis.
protected  SpinnerNumberModel xLogGapModel
           
protected  JCheckBox xLogSpacing
          Check box for whether to use log spacing for X axis.
protected  AstDoubleField xMajorGap
          Entry for gap between major ticks on the X axis.
protected  ScientificSpinner xMajorLength
          Spinner for controlling the length of X axis major tick marks.
protected  SpinnerNumberModel xMajorLengthModel
          Spinner model for length of X axis major tick marks.
protected  JComboBox xMinorDivisions
           
protected  ScientificSpinner xMinorLength
          Spinner for controlling the length of X axis minor tick marks.
protected  SpinnerNumberModel xMinorLengthModel
          Spinner model for length of X axis minor tick marks.
protected  ScientificSpinner yLogGap
          Entry for the gap between major ticks on the Y axis.
protected  SpinnerNumberModel yLogGapModel
           
protected  JCheckBox yLogSpacing
          Check box for whether to use log spacing for Y axis.
protected  AstDoubleField yMajorGap
          Entry for the gap between major ticks on the Y axis.
protected  ScientificSpinner yMajorLength
          Spinner for controlling the length of Y axis major tick marks.
protected  SpinnerNumberModel yMajorLengthModel
          Spinner model for length of Y axis major tick marks.
protected  JComboBox yMinorDivisions
           
protected  ScientificSpinner yMinorLength
          Spinner for controlling the length of Y axis minor tick marks.
protected  SpinnerNumberModel yMinorLengthModel
          Spinner model for length of X axis minor tick marks.
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
TickControls(AbstractPlotControlsModel astTicks, PlotController controller)
          Create an instance.
 
Method Summary
 AstTicks getAstTicks()
          Get copy of reference to current AstTicks.
 JComponent getControlsComponent()
          Return a reference to the JComponent sub-class that will be displayed (normally a reference to this).
 AbstractPlotControlsModel getControlsModel()
          Return reference to the AbstractPlotControlsModel.
static Class getControlsModelClass()
          Return the class of object that we expect as our model.
 String getControlsName()
          Return a short name for these controls (for the tab).
 String getControlsTitle()
          Return a title for these controls (for the border).
protected  void initUI()
          Create and initialise the user interface.
protected  void matchLine()
          Match line properties.
protected  void matchLogSpacingSet()
          Match whether to apply log spacing values.
protected  void matchShow()
          Match whether to display the ticks.
protected  void matchTickAll()
          Match whether to display ticks on all axes.
protected  void matchXLogGap()
          Match X log axis ratio for the major gap.
protected  void matchXLogSpacing()
          Match whether to use log spacing along X axis.
protected  void matchXMajorGap()
          Match X axis major gap.
protected  void matchXMajorLength()
          Match length of major ticks on X axis.
protected  void matchXMinorDivisions()
          Match number of divisions between major ticks on X axis.
protected  void matchXMinorLength()
          Match length of minor ticks on X axis.
protected  void matchYLogGap()
          Match Y log axis ratio for the major gap.
protected  void matchYLogSpacing()
          Match whether to use log spacing along Y axis.
protected  void matchYMajorGap()
          Match Y axis major gap.
protected  void matchYMajorLength()
          Match length of major ticks on Y axis.
protected  void matchYMinorDivisions()
          Match number of divisions between major ticks on Y axis.
protected  void matchYMinorLength()
          Match length of minor ticks on Y axis.
 void reset()
          Reset interface to default configuration.
 void setAstTicks(AstTicks astTicks)
          Set the AstTicks object.
 void stateChanged(ChangeEvent e)
          If the AstTicks object changes then we need to update the interface.
protected  void updateFromAstTicks()
          Update interface to reflect values of the current AstAxisLabel.
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

astTicks

protected AstTicks astTicks
AstTicks model for current state.


controller

protected PlotController controller
The PlotController, used to access a Frame for formatting/unformatting axes correctly.


show

protected JCheckBox show
Check box for whether ticks should be shown or not.


logSpacingSet

protected JCheckBox logSpacingSet
Check box for whether log ticks setting should be applied.


xLogSpacing

protected JCheckBox xLogSpacing
Check box for whether to use log spacing for X axis.


yLogSpacing

protected JCheckBox yLogSpacing
Check box for whether to use log spacing for Y axis.


xLogGap

protected ScientificSpinner xLogGap
Entry for ratio gap between major ticks for log X axis.


xLogGapModel

protected SpinnerNumberModel xLogGapModel

yLogGap

protected ScientificSpinner yLogGap
Entry for the gap between major ticks on the Y axis.


yLogGapModel

protected SpinnerNumberModel yLogGapModel

xMajorGap

protected AstDoubleField xMajorGap
Entry for gap between major ticks on the X axis.


yMajorGap

protected AstDoubleField yMajorGap
Entry for the gap between major ticks on the Y axis.


xMajorLength

protected ScientificSpinner xMajorLength
Spinner for controlling the length of X axis major tick marks.


xMajorLengthModel

protected SpinnerNumberModel xMajorLengthModel
Spinner model for length of X axis major tick marks.


yMajorLength

protected ScientificSpinner yMajorLength
Spinner for controlling the length of Y axis major tick marks.


yMajorLengthModel

protected SpinnerNumberModel yMajorLengthModel
Spinner model for length of Y axis major tick marks.


xMinorLength

protected ScientificSpinner xMinorLength
Spinner for controlling the length of X axis minor tick marks.


xMinorLengthModel

protected SpinnerNumberModel xMinorLengthModel
Spinner model for length of X axis minor tick marks.


yMinorLength

protected ScientificSpinner yMinorLength
Spinner for controlling the length of Y axis minor tick marks.


yMinorLengthModel

protected SpinnerNumberModel yMinorLengthModel
Spinner model for length of X axis minor tick marks.


xMinorDivisions

protected JComboBox xMinorDivisions

yMinorDivisions

protected JComboBox yMinorDivisions

tickAll

protected JCheckBox tickAll
Check box for whether ticks should be shown on all axes.


lineControls

protected LineControls lineControls
Line controls widget for all line specific properties.


inhibitLineChangeListener

protected boolean inhibitLineChangeListener
Whether to inhibit change events from LineControls from recyling.


defaultTitle

protected static String defaultTitle
The default title for these controls.


defaultName

protected static String defaultName
The default short name for these controls.

Constructor Detail

TickControls

public TickControls(AbstractPlotControlsModel astTicks,
                    PlotController controller)
Create an instance.

Parameters:
astTicks - the model that we're a view of
controller - used to gain access to the Plot, this is needed for the configuration of any AstDouble
Method Detail

initUI

protected void initUI()
Create and initialise the user interface.


setAstTicks

public void setAstTicks(AstTicks astTicks)
Set the AstTicks object.


updateFromAstTicks

protected void updateFromAstTicks()
Update interface to reflect values of the current AstAxisLabel.


getAstTicks

public AstTicks getAstTicks()
Get copy of reference to current AstTicks.


matchShow

protected void matchShow()
Match whether to display the ticks.


matchLogSpacingSet

protected void matchLogSpacingSet()
Match whether to apply log spacing values.


matchXLogSpacing

protected void matchXLogSpacing()
Match whether to use log spacing along X axis.


matchYLogSpacing

protected void matchYLogSpacing()
Match whether to use log spacing along Y axis.


matchXLogGap

protected void matchXLogGap()
Match X log axis ratio for the major gap.


matchYLogGap

protected void matchYLogGap()
Match Y log axis ratio for the major gap.


matchLine

protected void matchLine()
Match line properties.


matchXMajorGap

protected void matchXMajorGap()
Match X axis major gap.


matchYMajorGap

protected void matchYMajorGap()
Match Y axis major gap.


matchXMajorLength

protected void matchXMajorLength()
Match length of major ticks on X axis.


matchYMajorLength

protected void matchYMajorLength()
Match length of major ticks on Y axis.


matchXMinorLength

protected void matchXMinorLength()
Match length of minor ticks on X axis.


matchYMinorLength

protected void matchYMinorLength()
Match length of minor ticks on Y axis.


matchXMinorDivisions

protected void matchXMinorDivisions()
Match number of divisions between major ticks on X axis.


matchYMinorDivisions

protected void matchYMinorDivisions()
Match number of divisions between major ticks on Y axis.


matchTickAll

protected void matchTickAll()
Match whether to display ticks on all axes.


getControlsTitle

public String getControlsTitle()
Return a title for these controls (for the border).

Specified by:
getControlsTitle in interface PlotControls

getControlsName

public String getControlsName()
Return a short name for these controls (for the tab).

Specified by:
getControlsName in interface PlotControls

reset

public void reset()
Reset interface to default configuration.

Specified by:
reset in interface PlotControls

getControlsComponent

public JComponent getControlsComponent()
Return a reference to the JComponent sub-class that will be displayed (normally a reference to this).

Specified by:
getControlsComponent in interface PlotControls

getControlsModel

public AbstractPlotControlsModel getControlsModel()
Return reference to the AbstractPlotControlsModel. This defines the actual state of the controls and stores the current values.

Specified by:
getControlsModel in interface PlotControls

getControlsModelClass

public static Class getControlsModelClass()
Return the class of object that we expect as our model.


stateChanged

public void stateChanged(ChangeEvent e)
If the AstTicks object changes then we need to update the interface.

Specified by:
stateChanged in interface ChangeListener


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