Package de.sciss.gui
Class PrefNumberField
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.text.JTextComponent
-
- javax.swing.JTextField
-
- javax.swing.JFormattedTextField
-
- de.sciss.gui.NumberField
-
- de.sciss.gui.PrefNumberField
-
- All Implemented Interfaces:
DynamicListening,EventManager.Processor,LaterInvocationManager.Listener,PreferenceEntrySync,java.awt.image.ImageObserver,java.awt.MenuContainer,java.io.Serializable,java.util.EventListener,java.util.prefs.PreferenceChangeListener,javax.accessibility.Accessible,javax.swing.Scrollable,javax.swing.SwingConstants
public class PrefNumberField extends NumberField implements DynamicListening, java.util.prefs.PreferenceChangeListener, LaterInvocationManager.Listener, PreferenceEntrySync
Equips a NumberField with preference storing / recalling capabilities. We decided not to override setNumber(). Thus, there are two ways to alter the gadget state, either by invoking the setNumberAndDispatch() method (DON'T USE setNumber() because it doesn't fire events) or by changing the associated preferences. When a preference change occurs, the setNumberAndDispatch() method is called, allowing clients to add NumberListeners to the gadget in case they don't want to deal with preferences. However, when possible it is recommended to use PreferenceChangeListener mechanisms.- See Also:
PreferenceChangeListener, Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JFormattedTextField
javax.swing.JFormattedTextField.AbstractFormatter, javax.swing.JFormattedTextField.AbstractFormatterFactory
-
Nested classes/interfaces inherited from class javax.swing.JTextField
javax.swing.JTextField.AccessibleJTextField
-
Nested classes/interfaces inherited from class javax.swing.text.JTextComponent
javax.swing.text.JTextComponent.AccessibleJTextComponent, javax.swing.text.JTextComponent.DropLocation, javax.swing.text.JTextComponent.KeyBinding
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
Fields Modifier and Type Field Description protected booleanwritePrefs-
Fields inherited from class de.sciss.gui.NumberField
HHMMSS, numberFlavor, supportedFlavors, value
-
Fields inherited from class javax.swing.JFormattedTextField
COMMIT, COMMIT_OR_REVERT, PERSIST, REVERT
-
Fields inherited from class javax.swing.JComponent
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
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
-
Constructor Summary
Constructors Constructor Description PrefNumberField()Constructs a newPrefNumberField.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringgetPreferenceKey()Gets the recently set preference keyjava.util.prefs.PreferencesgetPreferenceNode()Gets the recently set preference nodebooleangetReadPrefs()booleangetWritePrefs()voidlaterInvocation(java.lang.Object o)Called later in the event thread, this passes the object given to the queue methodvoidpreferenceChange(java.util.prefs.PreferenceChangeEvent e)voidreadPrefs()voidsetPreferenceKey(java.lang.String key)voidsetPreferenceNode(java.util.prefs.Preferences prefs)voidsetPreferences(java.util.prefs.Preferences prefs, java.lang.String key)Enable Preferences synchronization.voidsetReadPrefs(boolean b)voidsetWritePrefs(boolean b)voidstartListening()will be called when the component becomes visiblevoidstopListening()will be called when the component is hiddenvoidwritePrefs()-
Methods inherited from class de.sciss.gui.NumberField
addListener, fireNumberChanged, getFlags, getNumber, getSpace, processEvent, removeListener, setFlags, setNumber, setSpace
-
Methods inherited from class javax.swing.JFormattedTextField
commitEdit, getActions, getFocusLostBehavior, getFormatter, getFormatterFactory, getUIClassID, getValue, invalidEdit, isEditValid, processFocusEvent, processInputMethodEvent, setDocument, setFocusLostBehavior, setFormatter, setFormatterFactory, setValue
-
Methods inherited from class javax.swing.JTextField
actionPropertyChanged, addActionListener, configurePropertiesFromAction, createActionPropertyChangeListener, createDefaultModel, fireActionPerformed, getAccessibleContext, getAction, getActionListeners, getColumns, getColumnWidth, getHorizontalAlignment, getHorizontalVisibility, getPreferredSize, getScrollOffset, isValidateRoot, paramString, postActionEvent, removeActionListener, scrollRectToVisible, setAction, setActionCommand, setColumns, setFont, setHorizontalAlignment, setScrollOffset
-
Methods inherited from class javax.swing.text.JTextComponent
addCaretListener, addInputMethodListener, addKeymap, copy, cut, fireCaretUpdate, getCaret, getCaretColor, getCaretListeners, getCaretPosition, getDisabledTextColor, getDocument, getDragEnabled, getDropLocation, getDropMode, getFocusAccelerator, getHighlighter, getInputMethodRequests, getKeymap, getKeymap, getMargin, getNavigationFilter, getPreferredScrollableViewportSize, getPrintable, getScrollableBlockIncrement, getScrollableTracksViewportHeight, getScrollableTracksViewportWidth, getScrollableUnitIncrement, getSelectedText, getSelectedTextColor, getSelectionColor, getSelectionEnd, getSelectionStart, getText, getText, getToolTipText, getUI, isEditable, loadKeymap, modelToView, modelToView2D, moveCaretPosition, paste, print, print, print, read, removeCaretListener, removeKeymap, removeNotify, replaceSelection, restoreComposedText, saveComposedText, select, selectAll, setCaret, setCaretColor, setCaretPosition, setComponentOrientation, setDisabledTextColor, setDragEnabled, setDropMode, setEditable, setFocusAccelerator, setHighlighter, setKeymap, setMargin, setNavigationFilter, setSelectedTextColor, setSelectionColor, setSelectionEnd, setSelectionStart, setText, setUI, updateUI, viewToModel, viewToModel2D, write
-
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, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, 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, 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, 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, processHierarchyBoundsEvent, processHierarchyEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Method Detail
-
setReadPrefs
public void setReadPrefs(boolean b)
- Specified by:
setReadPrefsin interfacePreferenceEntrySync
-
getReadPrefs
public boolean getReadPrefs()
- Specified by:
getReadPrefsin interfacePreferenceEntrySync
-
setWritePrefs
public void setWritePrefs(boolean b)
- Specified by:
setWritePrefsin interfacePreferenceEntrySync
-
getWritePrefs
public boolean getWritePrefs()
- Specified by:
getWritePrefsin interfacePreferenceEntrySync
-
writePrefs
public void writePrefs()
- Specified by:
writePrefsin interfacePreferenceEntrySync
-
setPreferenceNode
public void setPreferenceNode(java.util.prefs.Preferences prefs)
- Specified by:
setPreferenceNodein interfacePreferenceEntrySync
-
setPreferenceKey
public void setPreferenceKey(java.lang.String key)
- Specified by:
setPreferenceKeyin interfacePreferenceEntrySync
-
setPreferences
public void setPreferences(java.util.prefs.Preferences prefs, java.lang.String key)Enable Preferences synchronization. This method is not thread safe and must be called from the event thread. When a preference change is received, the number is updated in the GUI and the NumberField dispatches a NumberEvent. Likewise, if the user adjusts the number in the GUI, the preference will be updated. The same is true, if you call setNumber.- Specified by:
setPreferencesin interfacePreferenceEntrySync- Parameters:
prefs- the preferences node in which the value is stored, or null to disable prefs sync.key- the key used to store and recall prefs. the value is the number converted to a string.
-
getPreferenceNode
public java.util.prefs.Preferences getPreferenceNode()
Description copied from interface:PreferenceEntrySyncGets the recently set preference node- Specified by:
getPreferenceNodein interfacePreferenceEntrySync- Returns:
- the node set with setPreferences or null if no prefs were set
-
getPreferenceKey
public java.lang.String getPreferenceKey()
Description copied from interface:PreferenceEntrySyncGets the recently set preference key- Specified by:
getPreferenceKeyin interfacePreferenceEntrySync- Returns:
- the key set with setPreferences or null if no prefs were set
-
startListening
public void startListening()
Description copied from interface:DynamicListeningwill be called when the component becomes visible- Specified by:
startListeningin interfaceDynamicListening
-
stopListening
public void stopListening()
Description copied from interface:DynamicListeningwill be called when the component is hidden- Specified by:
stopListeningin interfaceDynamicListening
-
laterInvocation
public void laterInvocation(java.lang.Object o)
Description copied from interface:LaterInvocationManager.ListenerCalled later in the event thread, this passes the object given to the queue method- Specified by:
laterInvocationin interfaceLaterInvocationManager.Listener- Parameters:
o- object as passed toqueue
-
readPrefs
public void readPrefs()
- Specified by:
readPrefsin interfacePreferenceEntrySync
-
preferenceChange
public void preferenceChange(java.util.prefs.PreferenceChangeEvent e)
- Specified by:
preferenceChangein interfacejava.util.prefs.PreferenceChangeListener
-
-