Package uk.ac.starlink.topcat.join
Class MatchSpec
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- uk.ac.starlink.topcat.join.MatchSpec
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,javax.accessibility.Accessible
- Direct Known Subclasses:
InterMatchSpec
,IntraMatchSpec
,PairMatchSpec
public abstract class MatchSpec extends javax.swing.JPanel
Abstract class defining general characteristics of a component which can perform some sort of matching action and present itself graphically.- Since:
- 18 Mar 2004
- Author:
- Mark Taylor (Starlink)
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
Fields Modifier and Type Field Description static uk.ac.starlink.table.ValueInfo
ENGINE_INFO
static uk.ac.starlink.table.ValueInfo
MATCHTYPE_INFO
-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
-
Constructor Summary
Constructors Constructor Description MatchSpec()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract void
calculate(uk.ac.starlink.table.join.ProgressIndicator indicator)
Performs the match calculation.abstract void
checkArguments()
Invoked from the event dispatch thread beforecalculate(uk.ac.starlink.table.join.ProgressIndicator)
is called.uk.ac.starlink.table.JoinFixAction[]
getDefaultFixActions(int nTable)
Returns a standard set of FixActions for a given number of tables.javax.swing.JComponent
getPanel()
Returns a graphical component which can be presented to the user representing the match to be carried out.void
matchFailure(java.lang.Throwable th, java.awt.Component parent)
This method is called from the event dispatch thread if the calculation terminates with an exception.abstract void
matchSuccess(java.awt.Component parent)
This method is called from the event dispatch thread if the calculation terminates normally.static void
showSuccessMessage(java.awt.Component parent, java.lang.String[] lines, javax.swing.Action plotAct)
Displays a modal dialogue containing a message, and possibly the option to plot the match result.-
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, getBaseline, getBaselineResizeBehavior, 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, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, 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, 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, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Method Detail
-
calculate
public abstract void calculate(uk.ac.starlink.table.join.ProgressIndicator indicator) throws java.io.IOException, java.lang.InterruptedException
Performs the match calculation. This method is called from a thread other than the event dispatch thread, so it can take its time, and must not call Swing things.- Parameters:
indicator
- a progress indicator which the calculation should try to update- Throws:
java.io.IOException
- if there's some troublejava.lang.InterruptedException
- if the user interrupts the calculation
-
matchSuccess
public abstract void matchSuccess(java.awt.Component parent)
This method is called from the event dispatch thread if the calculation terminates normally.- Parameters:
parent
- window controlling the invocation
-
checkArguments
public abstract void checkArguments()
Invoked from the event dispatch thread beforecalculate(uk.ac.starlink.table.join.ProgressIndicator)
is called. A check should be made that it is sensible to call calculate; if not an exception should be thrown.- Throws:
java.lang.IllegalStateException
- (with a message suitable for presentation to the user) if calculate cannot be called in the current state
-
matchFailure
public void matchFailure(java.lang.Throwable th, java.awt.Component parent)
This method is called from the event dispatch thread if the calculation terminates with an exception.- Parameters:
th
- exception characterising the failureparent
- window controlling the invocation
-
getPanel
public javax.swing.JComponent getPanel()
Returns a graphical component which can be presented to the user representing the match to be carried out. The user may interact with this to modify the match characteristics.- Returns:
- graphical component
-
getDefaultFixActions
public uk.ac.starlink.table.JoinFixAction[] getDefaultFixActions(int nTable)
Returns a standard set of FixActions for a given number of tables.- Parameters:
nTable
-- Returns:
- nTable-element array of sensible FixActions
-
showSuccessMessage
public static void showSuccessMessage(java.awt.Component parent, java.lang.String[] lines, javax.swing.Action plotAct)
Displays a modal dialogue containing a message, and possibly the option to plot the match result.- Parameters:
parent
- parent componentlines
- lines of text summarising the resultplotAct
- an action which can generate a plot of the match result
-
-