uk.ac.starlink.table.gui
Class StarTableChooser

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--javax.swing.JOptionPane
                          |
                          +--uk.ac.starlink.table.gui.StarTableChooser
All Implemented Interfaces:
Accessible, ImageObserver, MenuContainer, Serializable

public class StarTableChooser
extends JOptionPane

Dialog which permits selection of an existing StarTable. It should be able to provide suitable dialogs for all the supported table types; in particular it includes a file browser and special JDBC connection dialog.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class javax.swing.JOptionPane
CANCEL_OPTION, CLOSED_OPTION, DEFAULT_OPTION, ERROR_MESSAGE, icon, ICON_PROPERTY, INFORMATION_MESSAGE, INITIAL_SELECTION_VALUE_PROPERTY, INITIAL_VALUE_PROPERTY, initialSelectionValue, initialValue, INPUT_VALUE_PROPERTY, inputValue, message, MESSAGE_PROPERTY, MESSAGE_TYPE_PROPERTY, messageType, NO_OPTION, OK_CANCEL_OPTION, OK_OPTION, OPTION_TYPE_PROPERTY, options, OPTIONS_PROPERTY, optionType, PLAIN_MESSAGE, QUESTION_MESSAGE, SELECTION_VALUES_PROPERTY, selectionValues, UNINITIALIZED_VALUE, value, VALUE_PROPERTY, WANTS_INPUT_PROPERTY, wantsInput, WARNING_MESSAGE, YES_NO_CANCEL_OPTION, YES_NO_OPTION, YES_OPTION
 
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
StarTableChooser(StarTableFactory tabfact)
          Constructs a StarTableChooser.
 
Method Summary
 JPanel getActionPanel()
          Returns a container which can be used to hold custom controls.
 JFileChooser getFileChooser()
          Returns the JFileChooser object used for file browsing.
 StarTable getJDBCTable(Component parent)
          Returns a StarTable got by asking the user for an SQL query on a JDBC connection.
 StarTable getRandomTable(Component parent)
          Invokes getTable(java.awt.Component) but ensures that the returned table provides random access.
 SQLReadDialog getSQLReadDialog()
          Returns the SQLReadDialog object used for getting JDBC/SQL queries from the user.
 StarTableFactory getStarTableFactory()
          Returns the factory object which this chooser uses to resolve files into StarTables.
 StarTable getTable(Component parent)
          Returns an existing StarTable object which has been selected by the user.
static StarTable getTable(StarTableFactory tabfact, String loc, Component parent)
          Invokes the makeStarTable method of a StarTableFactory in a graphical environment to make a table.
 StarTable getTableFromBrowser(Component parent)
          Returns a StarTable from this chooser's file browser widget.
 void setSQLReadDialog(SQLReadDialog sqlDialog)
          Sets the SQLReadDialog object used for getting JDBC/SQL queries from the user.
 void setStarTableFactory(StarTableFactory tabfact)
          Sets the factory object which this chooser uses to resove files into StarTables.
 
Methods inherited from class javax.swing.JOptionPane
createDialog, createInternalFrame, getAccessibleContext, getDesktopPaneForComponent, getFrameForComponent, getIcon, getInitialSelectionValue, getInitialValue, getInputValue, getMaxCharactersPerLineCount, getMessage, getMessageType, getOptions, getOptionType, getRootFrame, getSelectionValues, getUI, getUIClassID, getValue, getWantsInput, paramString, selectInitialValue, setIcon, setInitialSelectionValue, setInitialValue, setInputValue, setMessage, setMessageType, setOptions, setOptionType, setRootFrame, setSelectionValues, setUI, setValue, setWantsInput, showConfirmDialog, showConfirmDialog, showConfirmDialog, showConfirmDialog, showInputDialog, showInputDialog, showInputDialog, showInputDialog, showInputDialog, showInputDialog, showInternalConfirmDialog, showInternalConfirmDialog, showInternalConfirmDialog, showInternalConfirmDialog, showInternalInputDialog, showInternalInputDialog, showInternalInputDialog, showInternalMessageDialog, showInternalMessageDialog, showInternalMessageDialog, showInternalOptionDialog, showMessageDialog, showMessageDialog, showMessageDialog, showOptionDialog, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, setForeground, 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, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, 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, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, 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, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, 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
 

Constructor Detail

StarTableChooser

public StarTableChooser(StarTableFactory tabfact)
Constructs a StarTableChooser.

Method Detail

getStarTableFactory

public StarTableFactory getStarTableFactory()
Returns the factory object which this chooser uses to resolve files into StarTables.

Returns:
the factory

setStarTableFactory

public void setStarTableFactory(StarTableFactory tabfact)
Sets the factory object which this chooser uses to resove files into StarTables.


getTable

public StarTable getTable(Component parent)
Returns an existing StarTable object which has been selected by the user. In the event that the user declines to select a valid StarTable then null is returned. The user will be informed of any errors and asked to reconsider (so it should not normally be invoked in a loop).

Parameters:
parent - the parent component, used for window positioning etc
Returns:
a new StarTable object as selected by the user, or null

getRandomTable

public StarTable getRandomTable(Component parent)
Invokes getTable(java.awt.Component) but ensures that the returned table provides random access.

Parameters:
parent - the parent component, used for window positioning etc
Returns:
a new StarTable object as selected by the user for which StarTable.isRandom() is true, or null.
See Also:
getTable(java.awt.Component)

getTable

public static StarTable getTable(StarTableFactory tabfact,
                                 String loc,
                                 Component parent)
Invokes the makeStarTable method of a StarTableFactory in a graphical environment to make a table. As well as simply calling the method, it ensures that any interaction with the user (such as JDBC authentication) will be done in a graphical fashion appropriately positioned relative to a given parent component. If any error occurs in constructing the table the user is informed with an error dialog, and null is returned.

Parameters:
tabfact - the StarTableFactory to use
loc - the location of the new table
parent - the parent window (may be null)
Returns:
the new StarTable as selected by the user, or null if it couldn't be constructed

getTableFromBrowser

public StarTable getTableFromBrowser(Component parent)
Returns a StarTable from this chooser's file browser widget. If the user declines to choose one, null is returned.

Parameters:
parent - the parent component, used for positioning
Returns:
a new StarTable selected by the user, or null

getActionPanel

public JPanel getActionPanel()
Returns a container which can be used to hold custom controls. this container already holds some control buttons (the ones which cause auxiliary windows to be popped up).

Returns:
container for buttons etc

getFileChooser

public JFileChooser getFileChooser()
Returns the JFileChooser object used for file browsing.

Returns:
a JFileChooser

getJDBCTable

public StarTable getJDBCTable(Component parent)
Returns a StarTable got by asking the user for an SQL query on a JDBC connection. If the user declines to supply enough data, null is returned

Parameters:
parent - the parent component, used for positioning
Returns:
a new StarTable, or null

getSQLReadDialog

public SQLReadDialog getSQLReadDialog()
Returns the SQLReadDialog object used for getting JDBC/SQL queries from the user.

Returns:
an SQLReadDialog

setSQLReadDialog

public void setSQLReadDialog(SQLReadDialog sqlDialog)
Sets the SQLReadDialog object used for getting JDBC/SQL queries from the user.

Parameters:
sqlDialog - an SQLReadDialog

Copyright © 2004 CLRC: Central Laboratory of the Research Councils. All rights reserved.