uk.ac.starlink.table.gui
Class StarTableSaver

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

public class StarTableSaver
extends JOptionPane

Dialog which permits a user to save a StarTable in a place and format of choice. 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
StarTableSaver()
          Constructs a StarTableSaver.
 
Method Summary
 JFileChooser getFileChooser()
          Returns the file chooser used by this saver for file browsing.
 String getFormat()
          Returns the format selected in which to write the table.
 SQLWriteDialog getSQLWriteDialog()
          Returns the SQLWriteDialog object used for getting JDBC/SQL table specs from the user.
 StarTableOutput getStarTableOutput()
          Returns the StarTableOutput object which this saver uses to do the actual writing of the StarTables.
 boolean saveJDBCTable(StarTable startab, Component parent)
          Saves the StarTable over a JDBC connection following a specialised JDBC dialog.
 void saveTable(StarTable startab, Component parent)
          Saves a given StarTable, requesting relevant information from the user.
static void saveTable(StarTableOutput sto, StarTable startab, String loc, String format, Component parent)
          Invokes the writeStarTable method of a StarTableOutput in a graphical environment to save a table.
 boolean saveTableFromBrowser(StarTable startab, Component parent)
          Saves the StarTable in a position selected by the user by browsing files in a filechooser.
 void setSQLWriteDialog(SQLWriteDialog sqlDialog)
          Sets the SQLWriteDialog object used for getting JDBC/SQL table specs from the user.
 void setStarTableOutput(StarTableOutput sto)
          Sets the StarTableOutput object which this saver uses to do the actual writing of the 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

StarTableSaver

public StarTableSaver()
Constructs a StarTableSaver.

Method Detail

getFormat

public String getFormat()
Returns the format selected in which to write the table. null will be returned if no format has been selected.

Returns:
the selected format (or null)

setStarTableOutput

public void setStarTableOutput(StarTableOutput sto)
Sets the StarTableOutput object which this saver uses to do the actual writing of the StarTables.

Parameters:
sto - the new StarTableOutput to use

getStarTableOutput

public StarTableOutput getStarTableOutput()
Returns the StarTableOutput object which this saver uses to do the actual writing of the StarTables.

Returns:
sto the StarTableOutput object

saveTable

public void saveTable(StarTable startab,
                      Component parent)
Saves a given StarTable, requesting relevant information from the user.

Parameters:
startab - the table to save
parent - the parent component, used for positioning dialog boxes

saveTable

public static void saveTable(StarTableOutput sto,
                             StarTable startab,
                             String loc,
                             String format,
                             Component parent)
Invokes the writeStarTable method of a StarTableOutput in a graphical environment to save 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 postiioned relative to a given parent component. If an error occurs during the save the user is informed with an error dialog.

Parameters:
sto - the object which handles the actual table writing
startab - the table to write
loc - the location to which the table should be written
format - the format type for writing the table
parent - the parent window (may be null)

saveTableFromBrowser

public boolean saveTableFromBrowser(StarTable startab,
                                    Component parent)
Saves the StarTable in a position selected by the user by browsing files in a filechooser.

Parameters:
startab - the table to save
parent - the parent component used for positioning windows
Returns:
true iff the table was saved successfully

getFileChooser

public JFileChooser getFileChooser()
Returns the file chooser used by this saver for file browsing.


saveJDBCTable

public boolean saveJDBCTable(StarTable startab,
                             Component parent)
Saves the StarTable over a JDBC connection following a specialised JDBC dialog.

Parameters:
startab - the table to save
parent - the parent component used for positioning windows
Returns:
true iff the table was saved successfully

getSQLWriteDialog

public SQLWriteDialog getSQLWriteDialog()
Returns the SQLWriteDialog object used for getting JDBC/SQL table specs from the user.

Returns:
an SQLWriteDialog

setSQLWriteDialog

public void setSQLWriteDialog(SQLWriteDialog sqlDialog)
Sets the SQLWriteDialog object used for getting JDBC/SQL table specs from the user.

Parameters:
sqlDialog - an SQLWriteDialog

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