org.fife.ui.rsyntaxtextarea
Class RSyntaxTextAreaOptionPanel

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by org.fife.ui.OptionsDialogPanel
                      extended by org.fife.ui.rsyntaxtextarea.RSyntaxTextAreaOptionPanel
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.beans.PropertyChangeListener, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.event.ListSelectionListener

public class RSyntaxTextAreaOptionPanel
extends OptionsDialogPanel
implements java.awt.event.ActionListener, java.beans.PropertyChangeListener, javax.swing.event.ListSelectionListener

An options panel that can be added to an org.fife.ui.OptionsDialog to display options appropriate for an RSyntaxTextArea. This panel allows the user to change the following properties of the text area:

It also gives the user a button to restore the default color scheme.

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

Nested Class Summary
 
Nested classes/interfaces inherited from class org.fife.ui.OptionsDialogPanel
OptionsDialogPanel.OptionPanelBorder, OptionsDialogPanel.OptionsPanelCheckResult
 
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
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 
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
RSyntaxTextAreaOptionPanel()
          Constructor.
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent e)
          Listens for actions in this panel.
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.
 java.lang.String getBackgroundImageFileName()
          Returns the name of the file containing the chosen background image.
 java.lang.Object getBackgroundObject()
          Returns the background object (a color or an image) selected by the user.
protected static java.lang.String getPreviewText(boolean underline)
          Returns the text to use in the preview label.
 SyntaxScheme getSyntaxScheme()
          Returns the syntax highlighting color scheme the user chose.
 java.awt.Font getTextAreaFont()
          Returns the font to use in text areas.
 java.awt.Color getTextAreaForeground()
          Returns the text area's foreground color.
 javax.swing.JComponent getTopJComponent()
          Returns the JComponent at the "top" of this Options panel.
 boolean getUnderline()
          Returns whether the text area's font should be underlined.
 void propertyChange(java.beans.PropertyChangeEvent e)
          Called when a property changes in an object we're listening to.
 void setSyntaxScheme(SyntaxScheme ss)
          Sets the syntax highlighting color scheme being displayed in this panel.
protected  void setValuesImpl(java.awt.Frame owner)
          Sets the values displayed by this panel to reflect those in the application.
 void updateUI()
          Overridden to ensure the background dialog is updated as well.
 void valueChanged(javax.swing.event.ListSelectionEvent e)
          Called when the user changes the selection in the style list.
 
Methods inherited from class org.fife.ui.OptionsDialogPanel
addChildPanel, addLeftAligned, addLeftAligned, addLeftAligned, createHorizontalBox, doApply, ensureValidInputs, getChildPanel, getChildPanelCount, getIcon, getId, getName, getOptionsDialog, getParentPanel, hasUnsavedChanges, setIcon, setId, 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, 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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, 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, 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, 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, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, 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, 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
 

Constructor Detail

RSyntaxTextAreaOptionPanel

public RSyntaxTextAreaOptionPanel()
Constructor.

Method Detail

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent e)
Listens for actions in this panel.

Specified by:
actionPerformed in interface java.awt.event.ActionListener

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.
See Also:
OptionsDialogPanel.doApply(Frame)

ensureValidInputsImpl

protected OptionsDialogPanel.OptionsPanelCheckResult ensureValidInputsImpl()
Checks whether or not all input the user specified on this panel is valid.

Specified by:
ensureValidInputsImpl in class OptionsDialogPanel
Returns:
This method always returns null as the user cannot mess up input in this panel.

getBackgroundImageFileName

public java.lang.String getBackgroundImageFileName()
Returns the name of the file containing the chosen background image. If the user selected a color for the background, this method returns null.

Returns:
The name of the file containing the chosen background image.
See Also:
getBackgroundObject()

getBackgroundObject

public java.lang.Object getBackgroundObject()
Returns the background object (a color or an image) selected by the user.

Returns:
The background object.
See Also:
getBackgroundImageFileName()

getPreviewText

protected static java.lang.String getPreviewText(boolean underline)
Returns the text to use in the preview label.

Parameters:
underline - Whether the preview text should be underlined.
Returns:
The text the label should display.

getSyntaxScheme

public SyntaxScheme getSyntaxScheme()
Returns the syntax highlighting color scheme the user chose.

Returns:
The syntax highlighting color scheme.
See Also:
setSyntaxScheme(org.fife.ui.rsyntaxtextarea.SyntaxScheme)

getTextAreaFont

public java.awt.Font getTextAreaFont()
Returns the font to use in text areas.

Returns:
The font to use.

getTextAreaForeground

public java.awt.Color getTextAreaForeground()
Returns the text area's foreground color.

Returns:
The foreground color of the text area.

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

getUnderline

public boolean getUnderline()
Returns whether the text area's font should be underlined.

Returns:
Whether the text areas should underline their font.
See Also:
Component.getFont()

propertyChange

public void propertyChange(java.beans.PropertyChangeEvent e)
Called when a property changes in an object we're listening to.

Specified by:
propertyChange in interface java.beans.PropertyChangeListener

setSyntaxScheme

public void setSyntaxScheme(SyntaxScheme ss)
Sets the syntax highlighting color scheme being displayed in this panel.

Parameters:
ss - The syntax highlighting color scheme to display.
See Also:
getSyntaxScheme()

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.
See Also:
OptionsDialogPanel.setValues(Frame)

updateUI

public void updateUI()
Overridden to ensure the background dialog is updated as well.

Overrides:
updateUI in class javax.swing.JPanel

valueChanged

public void valueChanged(javax.swing.event.ListSelectionEvent e)
Called when the user changes the selection in the style list.

Specified by:
valueChanged in interface javax.swing.event.ListSelectionListener
Parameters:
e - The list selection event.