com.connectina.swing.fontchooser
Class JFontChooser

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 com.connectina.swing.fontchooser.JFontChooser
All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible

public class JFontChooser
extends JPanel

Provides a pane of controls designed to allow a user to select a Font.

See Also:
Font, Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
static String SELECTION_MODEL_PROPERTY
          The selection model property name.
 
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
JFontChooser()
          Creates a FontChooser pane with an initial default Font (Sans Serif, Plain, 12).
JFontChooser(Font initialFont)
          Creates a FontChooser pane with the specified initial Font.
JFontChooser(FontSelectionModel model)
          Creates a FontChooser pane with the specified FontSelectionModel.
 
Method Summary
 void addChangeListener(ChangeListener l)
          Adds a ChangeListener to the model.
static JDialog createDialog(Window parent, boolean modal, JFontChooser chooserPane, ActionListener okListener)
          Creates and returns a new dialog containing the specified FontChooser pane along with "OK" and "Cancel" buttons.
 Font getSelectedFont()
          Gets the current Font value from the FontChooser.
 FontSelectionModel getSelectionModel()
          Returns the data model that handles Font selections.
 void removeChangeListener(ChangeListener l)
          Removes a ChangeListener from the model.
 void setSelectedFont(Font Font)
          Sets the current Font of the FontChooser to the specified Font.
 void setSelectionModel(FontSelectionModel newModel)
          Sets the model containing the selected Font.
static Font showDialog(Window parent, Font initialFont)
          Shows a modal FontChooser dialog and blocks until the dialog is hidden.
static Font showDialog(Window parent, JFontChooser fontChooser, Font initialFont)
          Shows a modal FontChooser dialog and blocks until the dialog is hidden.
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
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, 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, getName, 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, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

SELECTION_MODEL_PROPERTY

public static final String SELECTION_MODEL_PROPERTY
The selection model property name.

See Also:
Constant Field Values
Constructor Detail

JFontChooser

public JFontChooser()
Creates a FontChooser pane with an initial default Font (Sans Serif, Plain, 12).


JFontChooser

public JFontChooser(Font initialFont)
Creates a FontChooser pane with the specified initial Font.

Parameters:
initialFont - the initial Font set in the chooser

JFontChooser

public JFontChooser(FontSelectionModel model)
Creates a FontChooser pane with the specified FontSelectionModel.

Parameters:
model - the FontSelectionModel to be used
Method Detail

getSelectedFont

public Font getSelectedFont()
Gets the current Font value from the FontChooser. By default, this delegates to the model.

Returns:
the current Font value of the FontChooser

setSelectedFont

public void setSelectedFont(Font Font)
Sets the current Font of the FontChooser to the specified Font. The FontSelectionModel will fire a ChangeEvent

Parameters:
Font - the Font to be set in the Font chooser
See Also:
Container.addPropertyChangeListener(java.beans.PropertyChangeListener)

getSelectionModel

public FontSelectionModel getSelectionModel()
Returns the data model that handles Font selections.

Returns:
a FontSelectionModel object

setSelectionModel

public void setSelectionModel(FontSelectionModel newModel)
Sets the model containing the selected Font.

Parameters:
newModel - the new FontSelectionModel object

showDialog

public static Font showDialog(Window parent,
                              Font initialFont)
                       throws HeadlessException
Shows a modal FontChooser dialog and blocks until the dialog is hidden. If the user presses the "OK" button, then this method hides/disposes the dialog and returns the selected Font. If the user presses the "Cancel" button or closes the dialog without pressing "OK", then this method hides/disposes the dialog and returns null.

Parameters:
parent - the parent JFrame for the dialog
initialFont - the initial Font set when the FontChooser is shown
Returns:
the selected Font or null if the user opted out
Throws:
HeadlessException - if GraphicsEnvironment.isHeadless() returns true.
See Also:
GraphicsEnvironment.isHeadless()

showDialog

public static Font showDialog(Window parent,
                              JFontChooser fontChooser,
                              Font initialFont)
                       throws HeadlessException
Shows a modal FontChooser dialog and blocks until the dialog is hidden. If the user presses the "OK" button, then this method hides/disposes the dialog and returns the selected Font. If the user presses the "Cancel" button or closes the dialog without pressing "OK", then this method hides/disposes the dialog and returns null.

Parameters:
parent - the parent JFrame for the dialog
fontChooser - the FontChooser to be use in this dialog
initialFont - the initial Font set when the FontChooser is shown
Returns:
the selected Font or null if the user opted out
Throws:
HeadlessException - if GraphicsEnvironment.isHeadless() returns true.
See Also:
GraphicsEnvironment.isHeadless()

createDialog

public static JDialog createDialog(Window parent,
                                   boolean modal,
                                   JFontChooser chooserPane,
                                   ActionListener okListener)
                            throws HeadlessException
Creates and returns a new dialog containing the specified FontChooser pane along with "OK" and "Cancel" buttons. If the "OK" or "Cancel" buttons are pressed, the dialog is automatically hidden (but not disposed).

Parameters:
parent - the parent component for the dialog
modal - a boolean. When true, the remainder of the program is inactive until the dialog is closed.
chooserPane - the Font-chooser to be placed inside the dialog
okListener - the ActionListener invoked when "OK" is pressed
Returns:
a new dialog containing the FontChooser pane
Throws:
HeadlessException - if GraphicsEnvironment.isHeadless() returns true.
See Also:
GraphicsEnvironment.isHeadless()

addChangeListener

public void addChangeListener(ChangeListener l)
Adds a ChangeListener to the model.

Parameters:
l - the ChangeListener to be added

removeChangeListener

public void removeChangeListener(ChangeListener l)
Removes a ChangeListener from the model.

Parameters:
l - the ChangeListener to be removed