org.fife.ui.rtextfilechooser
Class FileChooserFavoritesOptionPanel

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.JPanel
                  extended byorg.fife.ui.OptionsDialogPanel
                      extended byorg.fife.ui.rtextfilechooser.FileChooserFavoritesOptionPanel
All Implemented Interfaces:
javax.accessibility.Accessible, java.util.EventListener, java.awt.image.ImageObserver, java.awt.MenuContainer, ModifiableTableListener, java.io.Serializable

public class FileChooserFavoritesOptionPanel
extends OptionsDialogPanel
implements ModifiableTableListener

Option panel for managing the "Favorite Directories" of an RTextFileChooser. This option panel can be added to an options dialog if this file chooser has "favorites" enabled.

Version:
0.5
Author:
Robert Futrell
See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class org.fife.ui.OptionsDialogPanel
OptionsDialogPanel.OptionPanelBorder, OptionsDialogPanel.OptionsPanelCheckResult
 
Nested classes inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
static java.lang.String FAVORITES_PROPERTY
           
 
Fields inherited from class org.fife.ui.OptionsDialogPanel
hasUnsavedChanges
 
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
FileChooserFavoritesOptionPanel()
          Constructor.
 
Method Summary
protected  void doApplyImpl(java.awt.Frame owner)
          Applies the settings entered into this dialog on the specified application.
protected  OptionsDialogPanel.OptionsPanelCheckResult ensureValidInputsImpl()
          Checks whether or not all input the user specified on this panel is valid. This should be overridden to check, for example, whether text fields have valid values, etc. This method will be called whenever the user clicks "OK" or "Apply" on the options dialog to ensure all input is valid. If it isn't, the component with invalid data will be given focus and the user will be prompted to fix it.
 javax.swing.JComponent getTopJComponent()
          Returns the JComponent at the "top" of this Options panel.
 void installFavorites(RTextFileChooser chooser)
          Changes the specified file chooser's favorites so they match those entered in this options panel.
 void modifiableTableChanged(ModifiableTableChangeEvent e)
          Called whenever the extension/color mapping table is changed.
 void setFavorites(RTextFileChooser chooser)
          Sets the favorites displayed in this option panel to those known by the specified file chooser.
protected  void setValuesImpl(java.awt.Frame owner)
          Sets the values displayed by this panel to reflect those in the application.
 void updateUI()
          Updates this panel's UI in response to a LaF change.
 
Methods inherited from class org.fife.ui.OptionsDialogPanel
addChildPanel, addLeftAligned, addLeftAligned, addLeftAligned, doApply, ensureValidInputs, getChildPanel, getChildPanelCount, getIcon, getName, getOptionsDialog, getParentPanel, hasUnsavedChanges, setIcon, setName, setUnsavedChanges, setValues, toString
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI
 
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, 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, setSize, setSize, show, show, size, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

FAVORITES_PROPERTY

public static final java.lang.String FAVORITES_PROPERTY
See Also:
Constant Field Values
Constructor Detail

FileChooserFavoritesOptionPanel

public FileChooserFavoritesOptionPanel()
Constructor. All strings in the file chooser are initialized via the current locale.

Method Detail

doApplyImpl

protected void doApplyImpl(java.awt.Frame owner)
Applies the settings entered into this dialog on the specified application.

Specified by:
doApplyImpl in class OptionsDialogPanel
Parameters:
owner - The application. This application should implement FileChooserOwner.
Throws:
java.lang.IllegalArgumentException - If owner is not a FileChooserOwner.
See Also:
OptionsDialogPanel.doApply(Frame)

ensureValidInputsImpl

protected OptionsDialogPanel.OptionsPanelCheckResult ensureValidInputsImpl()
Checks whether or not all input the user specified on this panel is valid. This should be overridden to check, for example, whether text fields have valid values, etc. This method will be called whenever the user clicks "OK" or "Apply" on the options dialog to ensure all input is valid. If it isn't, the component with invalid data will be given focus and the user will be prompted to fix it.

Specified by:
ensureValidInputsImpl in class OptionsDialogPanel
Returns:
null if the panel has all valid inputs, or an OptionsPanelCheckResult if an input was invalid. This component is the one that had the error and will be given focus, and the string is an error message that will be displayed.

getTopJComponent

public javax.swing.JComponent getTopJComponent()
Returns the JComponent at the "top" of this Options panel. This is the component that will receive focus if the user switches to this Options panel in the Options dialog. As an added bonus, if this component is a JTextComponent, its text is selected for easy changing.

Specified by:
getTopJComponent in class OptionsDialogPanel

installFavorites

public void installFavorites(RTextFileChooser chooser)
Changes the specified file chooser's favorites so they match those entered in this options panel.

Parameters:
chooser - The file choose whose favorites to modify.
See Also:
setFavorites(RTextFileChooser)

modifiableTableChanged

public void modifiableTableChanged(ModifiableTableChangeEvent e)
Called whenever the extension/color mapping table is changed.

Specified by:
modifiableTableChanged in interface ModifiableTableListener
Parameters:
e - An event describing the change.

setFavorites

public void setFavorites(RTextFileChooser chooser)
Sets the favorites displayed in this option panel to those known by the specified file chooser.

Parameters:
chooser - The file chooser
See Also:
installFavorites(RTextFileChooser)

setValuesImpl

protected void setValuesImpl(java.awt.Frame owner)
Sets the values displayed by this panel to reflect those in the application. Child panels are not handled.

Specified by:
setValuesImpl in class OptionsDialogPanel
Parameters:
owner - The parent application. This should implement FileChooserOwner.
Throws:
java.lang.IllegalArgumentException - If owner is not a FileChooserOwner.
See Also:
OptionsDialogPanel.setValues(Frame)

updateUI

public void updateUI()
Updates this panel's UI in response to a LaF change. This is overridden to update the table's renderer.