Class TableSaveChooser
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
uk.ac.starlink.table.gui.TableSaveChooser
- All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible
Dialog which permits a user to save one or more
StarTables 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 filestore
browser and special JDBC connection dialog.
The usual way to use this is to implement getTables() to
provide the table which will be saved, and then call
showSaveDialog(Component).
- Author:
- Mark Taylor (Starlink)
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class JPanel
JPanel.AccessibleJPanelNested classes/interfaces inherited from class JComponent
JComponent.AccessibleJComponentNested classes/interfaces inherited from class Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
Fields inherited from class JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWFields inherited from class Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
Constructor Summary
ConstructorsConstructorDescriptionConstructs a saver with a default StarTableOutput and save dialogues.TableSaveChooser(StarTableOutput sto, TableSaveDialog[] saveDialogs) Constructs a saver with a given StarTableOutput and save dialogues. -
Method Summary
Modifier and TypeMethodDescriptioncreateDialog(Component parent) Creates a dialogue which can be used for user interaction.final ActionReturns an action which will result in the given save dialogue being posted to allow the user to save this chooser's current table.voiddone()Called when the table has been written.static String[]getExtraWriterNames(boolean multi) Returns a selection of output handler specifications that can be offered to the user alongside the default-configuration ones.Returns the selector which chooses table output formats.Action[]Returns actions which correspond to the save dialogues this saver is using.Returns the currently selected format string.Returns the StarTableOutput object which this saver uses to do the actual writing of the StarTables.abstract StarTable[]Obtains the tables to write.static voidTesting purposes only.static ComboBoxModel<String> makeFormatBoxModel(StarTableOutput sto, boolean multi) Constructs a ComboBoxModel containing an entry for each of the known output formats.voidsetEnabled(boolean isEnabled) voidsetProgressBar(JProgressBar progBar) Sets the progress bar that will be used by this chooser.voidsetSelectedFormat(String format) Sets the currently selected format string.voidSets the StarTableOutput object which this saver uses to do the actual writing of the StarTables.voidshowSaveDialog(Component parent) Pops up a modal dialogue which interacts with the user to save the tables returned bygetTables().Methods inherited from class JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUIMethods inherited from class 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, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, updateMethods inherited from class 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, validateTreeMethods inherited from class 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
-
Constructor Details
-
TableSaveChooser
public TableSaveChooser()Constructs a saver with a default StarTableOutput and save dialogues. -
TableSaveChooser
Constructs a saver with a given StarTableOutput and save dialogues.- Parameters:
sto- output marshallersaveDialogs- array of save dialogues to use
-
-
Method Details
-
setTableOutput
Sets the StarTableOutput object which this saver uses to do the actual writing of the StarTables.- Parameters:
sto- the new StarTableOutput to use
-
getTableOutput
Returns the StarTableOutput object which this saver uses to do the actual writing of the StarTables.- Returns:
- sto the StarTableOutput object
-
getFormatSelector
-
getTables
Obtains the tables to write. This must be implemented by concrete subclasses.- Returns:
- table to write
-
setProgressBar
Sets the progress bar that will be used by this chooser. Should be called before the component is displayed to the user.- Parameters:
progBar- progress bar for displaying save progress
-
getSaveDialogActions
Returns actions which correspond to the save dialogues this saver is using. Each action is the result of an earlier call tocreateSaveDialogAction(TableSaveDialog).- Returns:
- array of actions which will trigger a particular save dialogue
-
done
public void done()Called when the table has been written. -
showSaveDialog
Pops up a modal dialogue which interacts with the user to save the tables returned bygetTables().- Parameters:
parent- parent component
-
setEnabled
public void setEnabled(boolean isEnabled) - Overrides:
setEnabledin classJComponent
-
getSelectedFormat
Returns the currently selected format string.- Returns:
- format label
-
setSelectedFormat
Sets the currently selected format string.- Parameters:
format- format label
-
createDialog
-
createSaveDialogAction
Returns an action which will result in the given save dialogue being posted to allow the user to save this chooser's current table. This method is invoked in the constructor, hence is declared final.- Parameters:
tsd- save dialogue- Returns:
- action to post
tsd
-
makeFormatBoxModel
Constructs a ComboBoxModel containing an entry for each of the known output formats.- Parameters:
sto- output marshallermulti- true if multiple tables might be used, false if only a single table will be written- Returns:
- format combo box model
-
getExtraWriterNames
Returns a selection of output handler specifications that can be offered to the user alongside the default-configuration ones.- Parameters:
multi- true if multiple tables might be used, false if only a single table will be written- Returns:
- example/useful writer specifications including config options
-
main
Testing purposes only.
-