uk.ac.starlink.ast.gui
Class TitleControls

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.TitleControls
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, EventListener, Accessible, ChangeListener, DocumentListener, PlotControls

public class TitleControls
extends JPanel
implements PlotControls, ChangeListener, DocumentListener

TitleControls creates a "page" of widgets that are a view of an AstTitle object. They provide the ability to configure all the properties of the AstTitle object (that describe how the title of an AST plot should be drawn) and show a current rendering of the title.

Version:
$Id$
Author:
Peter W. Draper
See Also:
AstTitle, 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  AstTitle astTitle
          AstTitle model for current state.
protected  JButton colourButton
          Colour button.
protected  ColourIcon colourIcon
          Colour Icon of colour button.
protected static String defaultName
          The default short name for these controls.
protected static String defaultTitle
          The default title for these controls.
protected  FontControls fontControls
          FontControls.
protected  ScientificSpinner gapSpinner
          Spinner for controlling title gap.
protected  boolean inhibitDocumentListener
          Whether to inhibit listening for Document events.
protected  JCheckBox showTitle
          Whether to show the title or not.
protected  SpinnerNumberModel spinnerModel
          Spinner model.
protected  SelectTextField textField
          The title text field (this also allows access to special characters that cannot be easily typed in).
 
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
TitleControls(AbstractPlotControlsModel astTitle)
          Create an instance.
 
Method Summary
 void changedUpdate(DocumentEvent e)
           
protected  void chooseColour()
          Choose a text colour.
 AstTitle getAstTitle()
          Get copy of reference to current AstTitle.
 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.
 void insertUpdate(DocumentEvent e)
           
protected  void matchGap()
          Match the AstTitle gap to that shown.
protected  void matchShow()
          Match whether to display the title.
protected  void matchText()
          Match the AstTitle text to that displayed.
 void removeUpdate(DocumentEvent e)
           
 void reset()
          Reset controls to the defaults.
 void setAstTitle(AstTitle astTitle)
          Set the AstTitle object.
 void setText(String text)
          Set the displayed text;
protected  void setTextColour(Color colour)
          Set the text colour.
protected  void setTextFont(Font font)
          Set the text font.
 void stateChanged(ChangeEvent e)
          If the AstTitle object changes then we need to update the interface.
protected  void updateFont(FontChangedEvent e)
          Update the displayed font.
protected  void updateFromAstTitle()
          Update interface to reflect values of the current AstTitle.
 
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

astTitle

protected AstTitle astTitle
AstTitle model for current state.


showTitle

protected JCheckBox showTitle
Whether to show the title or not.


textField

protected SelectTextField textField
The title text field (this also allows access to special characters that cannot be easily typed in).


gapSpinner

protected ScientificSpinner gapSpinner
Spinner for controlling title gap.


spinnerModel

protected SpinnerNumberModel spinnerModel
Spinner model.


colourButton

protected JButton colourButton
Colour button.


colourIcon

protected ColourIcon colourIcon
Colour Icon of colour button.


fontControls

protected FontControls fontControls
FontControls.


inhibitDocumentListener

protected boolean inhibitDocumentListener
Whether to inhibit listening for Document events.


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

TitleControls

public TitleControls(AbstractPlotControlsModel astTitle)
Create an instance.

Method Detail

initUI

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


setAstTitle

public void setAstTitle(AstTitle astTitle)
Set the AstTitle object.


updateFromAstTitle

protected void updateFromAstTitle()
Update interface to reflect values of the current AstTitle.


getAstTitle

public AstTitle getAstTitle()
Get copy of reference to current AstTitle.


setText

public void setText(String text)
Set the displayed text;


matchShow

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


matchGap

protected void matchGap()
Match the AstTitle gap to that shown.


updateFont

protected void updateFont(FontChangedEvent e)
Update the displayed font.


setTextFont

protected void setTextFont(Font font)
Set the text font.


chooseColour

protected void chooseColour()
Choose a text colour.


setTextColour

protected void setTextColour(Color colour)
Set the text colour.


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 controls to the defaults.

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 AstTitle object changes then we need to update the interface.

Specified by:
stateChanged in interface ChangeListener

changedUpdate

public void changedUpdate(DocumentEvent e)
Specified by:
changedUpdate in interface DocumentListener

insertUpdate

public void insertUpdate(DocumentEvent e)
Specified by:
insertUpdate in interface DocumentListener

removeUpdate

public void removeUpdate(DocumentEvent e)
Specified by:
removeUpdate in interface DocumentListener

matchText

protected void matchText()
Match the AstTitle text to that displayed.



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