Package uk.ac.starlink.topcat.plot
Class LinesWindow
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- java.awt.Window
-
- java.awt.Frame
-
- javax.swing.JFrame
-
- uk.ac.starlink.topcat.AuxWindow
-
- uk.ac.starlink.topcat.plot.GraphicsWindow
-
- uk.ac.starlink.topcat.plot.LinesWindow
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
,javax.swing.RootPaneContainer
,javax.swing.WindowConstants
,TopcatListener
public class LinesWindow extends GraphicsWindow implements TopcatListener
GraphicsWindow which draws a stack of line graphs.- Since:
- 3 Mar 2006
- Author:
- Mark Taylor
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
LinesWindow.RescaleAction
Action for performing rescaling actions.-
Nested classes/interfaces inherited from class uk.ac.starlink.topcat.plot.GraphicsWindow
GraphicsWindow.ExportAction, GraphicsWindow.ReplotListener
-
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
-
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow, java.awt.Window.Type
-
-
Field Summary
-
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
-
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
-
Constructor Summary
Constructors Constructor Description LinesWindow(java.awt.Component parent)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description uk.ac.starlink.ttools.plot.Range[]
calculateRanges(uk.ac.starlink.ttools.plot.PlotData data, uk.ac.starlink.ttools.plot.PlotState state)
Returns a 1-element array giving only the X axis range.protected uk.ac.starlink.ttools.plot.PlotState
createPlotState()
Constructs a new PlotState.protected PointSelector
createPointSelector()
Returns a new PointSelector instance to be used for selecting points to be plotted.protected StyleEditor
createStyleEditor()
Creates a style editor suitable for this window.protected void
doReplot(uk.ac.starlink.ttools.plot.PlotState state)
Performs an actual plot.uk.ac.starlink.ttools.plot.StyleSet
getDefaultStyles(int npoint)
Returns a StyleSet which can supply markers.protected javax.swing.JComponent
getPlotPanel()
Returns the component containing the graphics output of this window.uk.ac.starlink.ttools.plot.PlotState
getPlotState()
Returns an object which characterises the choices the user has made in the GUI to indicate the plot that s/he wants to see.MutableStyleSet
getStyles()
Returns a style set suitable for use with a new PointSelector.protected boolean
isLegendInteresting(uk.ac.starlink.ttools.plot.PlotState state)
Indicates whether the legend is worth showing for a given plot state.void
modelChanged(TopcatEvent evt)
Invoked when the model has changed in some way.void
setStyles(uk.ac.starlink.ttools.plot.StyleSet styles)
Sets the style set to use for this window.-
Methods inherited from class uk.ac.starlink.topcat.plot.GraphicsWindow
addExtraAxes, addNewSubsets, createErrorModeMenu, createErrorModeModels, createErrorRendererMenu, createMarkerStyleMenu, dispose, fixDefaultErrorRenderers, getAuxAxisCount, getAxisEditAction, getAxisWindow, getColumnIndex, getDataRanges, getErrorModeModels, getExportMenu, getExtrasPanel, getFlipModels, getGridModel, getLegendModel, getLogModels, getMainRangeCount, getPadRatio, getPlot, getPoints, getPointSelectors, getPointSelectorToolBar, getReplotAction, getReplotListener, getRescaleAction, getStandardMarkStyleSets, getStatusBox, getViewRanges, getVisibleAuxAxisCount, init, replot, setGuidePointCount, setMainTable, setPadRatio, setVisible
-
Methods inherited from class uk.ac.starlink.topcat.AuxWindow
addHelp, beep, confirm, createImportTableAction, createSaveTableAction, getBodyPanel, getControlPanel, getHelpMenu, getIconImage, getMainArea, getSponsorLogos, getToolBar, getWindowMenu, makeTitledBorder, makeVisible, placeProgressBar, positionAfter, recursiveSetEnabled, setBusy, setCloseIsExit, setMainHeading
-
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
-
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecorated
-
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, show, toBack, toFront
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Method Detail
-
getPlotPanel
protected javax.swing.JComponent getPlotPanel()
Description copied from class:GraphicsWindow
Returns the component containing the graphics output of this window. This is the component which is exported or printed etc alongside the legend which is managed by GraphicsWindow. It should therefore contain only the output data, not any user interface decoration.- Specified by:
getPlotPanel
in classGraphicsWindow
- Returns:
- plot container
-
doReplot
protected void doReplot(uk.ac.starlink.ttools.plot.PlotState state)
Description copied from class:GraphicsWindow
Performs an actual plot.- Overrides:
doReplot
in classGraphicsWindow
- Parameters:
state
- plot state determining details of plot configuration
-
createPlotState
protected uk.ac.starlink.ttools.plot.PlotState createPlotState()
Description copied from class:GraphicsWindow
Constructs a new PlotState. This is called byGraphicsWindow.getPlotState()
prior to the PlotState configuration done there. Thus if a subclass wants to provide and configure a particular state (for instance one of a specialised subclass of PlotState) it can override this method to do so. The default implementation just invokesnew PlotState()
.- Overrides:
createPlotState
in classGraphicsWindow
- Returns:
- returns a new PlotState object ready for generic configuration
-
getPlotState
public uk.ac.starlink.ttools.plot.PlotState getPlotState()
Description copied from class:GraphicsWindow
Returns an object which characterises the choices the user has made in the GUI to indicate the plot that s/he wants to see.The
GraphicsWindow
implementation of this method as well as populating the state with standard information also callsPointSelection.readPoints(javax.swing.BoundedRangeModel)
andGraphicsWindow.calculateRanges(uk.ac.starlink.topcat.plot.PointSelection, uk.ac.starlink.topcat.plot.Points, uk.ac.starlink.ttools.plot.PlotState)
if necessary.- Overrides:
getPlotState
in classGraphicsWindow
- Returns:
- snapshot of the currently-selected plot request
-
createPointSelector
protected PointSelector createPointSelector()
Description copied from class:GraphicsWindow
Returns a new PointSelector instance to be used for selecting points to be plotted.- Overrides:
createPointSelector
in classGraphicsWindow
- Returns:
- new point selector component
-
createStyleEditor
protected StyleEditor createStyleEditor()
Description copied from class:GraphicsWindow
Creates a style editor suitable for this window.- Specified by:
createStyleEditor
in classGraphicsWindow
- Returns:
- new style editor
-
setStyles
public void setStyles(uk.ac.starlink.ttools.plot.StyleSet styles)
Description copied from class:GraphicsWindow
Sets the style set to use for this window.- Overrides:
setStyles
in classGraphicsWindow
- Parameters:
styles
- new style set
-
getStyles
public MutableStyleSet getStyles()
Description copied from class:GraphicsWindow
Returns a style set suitable for use with a new PointSelector. Note this is not the same object as was set byGraphicsWindow.setStyles(uk.ac.starlink.ttools.plot.StyleSet)
, but it is based on it - it will dispense styles from the same set, but avoid styles already dispensed to other selectors.- Overrides:
getStyles
in classGraphicsWindow
- Returns:
- style set suitable for a new selector
-
getDefaultStyles
public uk.ac.starlink.ttools.plot.StyleSet getDefaultStyles(int npoint)
Description copied from class:GraphicsWindow
Returns a StyleSet which can supply markers. Thenpoint
may be used as a hint for how many points are expected to be drawn with it.- Specified by:
getDefaultStyles
in classGraphicsWindow
- Parameters:
npoint
- approximate number of points - use -1 for unknown- Returns:
- style factory
-
calculateRanges
public uk.ac.starlink.ttools.plot.Range[] calculateRanges(uk.ac.starlink.ttools.plot.PlotData data, uk.ac.starlink.ttools.plot.PlotState state)
Returns a 1-element array giving only the X axis range.- Overrides:
calculateRanges
in classGraphicsWindow
- Parameters:
data
- point data for the plotstate
- plot state- Returns:
- ranges
-
isLegendInteresting
protected boolean isLegendInteresting(uk.ac.starlink.ttools.plot.PlotState state)
Description copied from class:GraphicsWindow
Indicates whether the legend is worth showing for a given plot state.- Overrides:
isLegendInteresting
in classGraphicsWindow
- Parameters:
state
- plot state- Returns:
- true iff the legend would show non-trivial information
-
modelChanged
public void modelChanged(TopcatEvent evt)
Description copied from interface:TopcatListener
Invoked when the model has changed in some way.- Specified by:
modelChanged
in interfaceTopcatListener
- Parameters:
evt
- event description
-
-