Package adams.gui.goe
Class GenericObjectEditorPanel
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- adams.gui.core.BasePanel
-
- adams.gui.chooser.AbstractChooserPanel
-
- adams.gui.goe.GenericObjectEditorPanel
-
- All Implemented Interfaces:
CleanUpHandler,UserModeSupporter,BaseTextComponent,ImageObserver,MenuContainer,Serializable,Accessible
public class GenericObjectEditorPanel extends AbstractChooserPanel implements UserModeSupporter
A panel that contains text field with the current setup of the object and a button for bringing up the GenericObjectEditor.- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class adams.gui.chooser.AbstractChooserPanel
AbstractChooserPanel.ChooseListener, AbstractChooserPanel.PopupMenuCustomizer
-
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
Fields Modifier and Type Field Description protected ActionListenerm_CancelListenerthe Cancel listener.protected booleanm_CanChangeClasswhether the class can be changed.protected Classm_ClassTypethe super class to manage.protected Objectm_Currentthe current object.protected GenericObjectEditorDialogm_Dialogthe dialog for displaying the editor.protected GenericObjectEditorm_Editorthe generic object editor.protected PersistentObjectHistorym_Historythe history of used setups.protected ActionListenerm_OkListenerthe OK listener.-
Fields inherited from class adams.gui.chooser.AbstractChooserPanel
m_ButtonFavorites, m_ButtonSelection, m_ChangeListeners, m_ChooseListeners, m_ColorInvalid, m_ColorValid, m_Editable, m_InlineEditingEnabled, m_LabelPrefix, m_LabelPrefixSpacer, m_NoChooseYet, m_PanelButtons, m_PanelPrefix, m_PopupMenuCustomizer, m_Self, m_TextSelection, m_ToolTip
-
Fields inherited from class adams.gui.core.BasePanel
m_FileChooser
-
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
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
-
Constructor Summary
Constructors Constructor Description GenericObjectEditorPanel(Class cls, Object defValue)Initializes the panel with the given class and default value.GenericObjectEditorPanel(Class cls, Object defValue, boolean canChangeClassInDialog)Initializes the panel with the given class and default value.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ObjectdoChoose()Performs the actual choosing of an object.protected ObjectfromString(String value)Converts the string representation into its object representation.booleangetCanChangeClass()Returns whether the user can change the class.ClassgetClassType()Returns the currently set class.ObjectgetCurrent()Returns the current value.protected GenericObjectEditorgetEditor()Initializes the editor if necessary and returns it.protected ClassgetFavoritesClass()The class to use for the favorites (can be array class).PersistentObjectHistorygetHistory()Returns the history.protected BasePopupMenugetPopupMenu()Generates the right-click popup menu.GenericObjectEditor.PostProcessObjectHandlergetPostProcessObjectHandler()Returns the handler for post-processing objects after they have been selected but before updating the UI.UserModegetUserMode()Returns the user mode.protected voidinitialize()Initializes the members.protected voidinvalidatedEditor()Invalidates the GOE editor.voidsetCanChangeClassInDialog(boolean value)Sets whether the user can change the class.voidsetClassType(Class type)Sets the class of values that can be edited.booleansetCurrent(Object value)Sets the current value.voidsetPostProcessObjectHandler(GenericObjectEditor.PostProcessObjectHandler value)Sets the handler for post-processing objects after they have been selected but before updating the UI.voidsetUserMode(UserMode value)Sets the user mode.protected booleansupportsFavorites()Whether the favorites button is shown or not.protected StringtoString(Object value)Converts the value into its string representation.-
Methods inherited from class adams.gui.chooser.AbstractChooserPanel
addChangeListener, addChooseListener, afterChoose, afterPasteFromClipboard, afterSetCurrent, beforeChoose, beforePasteFromClipboard, beforeSetCurrent, choose, cleanUp, copyToClipboard, fireCurrentValueChanged, getCurrentAsString, getDefaultString, getPopupMenuCustomizer, getPrefix, getPrefixLabel, getSelectionColumns, getStringFromClipboard, getText, getTextColumns, grabFocus, hasValue, initGUI, isEditable, isInlineEditingEnabled, isNoChooseYet, isValid, moveChooseButton, notifyChangeListeners, notifyChooseListeners, pasteFromClipboard, removeChangeListener, removeChooseListener, setCurrentAsString, setDefault, setEditable, setEnabled, setInlineEditingEnabled, setPopupMenuCustomizer, setPrefix, setText, setTextColumns, setToolTipText, showFavoritesMenu, textFieldToolTipText, updatePreferredSize, updateValidity
-
Methods inherited from class adams.gui.core.BasePanel
afterHide, afterShow, beforeHide, beforeShow, closeParent, finishInit, getParentChild, getParentDialog, getParentFrame, getParentInternalFrame, getParentTitle, initFileChooser, main, printErrorMessage, printException, saveComponent, setEnabledCascade, setEnabledCascade, setParentTitle, setVisible
-
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, 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, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, 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, 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
-
-
-
-
Field Detail
-
m_ClassType
protected Class m_ClassType
the super class to manage.
-
m_CanChangeClass
protected boolean m_CanChangeClass
whether the class can be changed.
-
m_Editor
protected transient GenericObjectEditor m_Editor
the generic object editor.
-
m_Dialog
protected GenericObjectEditorDialog m_Dialog
the dialog for displaying the editor.
-
m_History
protected PersistentObjectHistory m_History
the history of used setups.
-
m_Current
protected transient Object m_Current
the current object.
-
m_OkListener
protected transient ActionListener m_OkListener
the OK listener.
-
m_CancelListener
protected transient ActionListener m_CancelListener
the Cancel listener.
-
-
Constructor Detail
-
GenericObjectEditorPanel
public GenericObjectEditorPanel(Class cls, Object defValue)
Initializes the panel with the given class and default value. Cannot change the class.- Parameters:
cls- the class to handlerdefValue- the default value
-
GenericObjectEditorPanel
public GenericObjectEditorPanel(Class cls, Object defValue, boolean canChangeClassInDialog)
Initializes the panel with the given class and default value. Cannot change the class.- Parameters:
cls- the class to handlerdefValue- the default valuecanChangeClassInDialog- whether the user can change the class
-
-
Method Detail
-
initialize
protected void initialize()
Initializes the members.- Overrides:
initializein classAbstractChooserPanel
-
getEditor
protected GenericObjectEditor getEditor()
Initializes the editor if necessary and returns it.
-
invalidatedEditor
protected void invalidatedEditor()
Invalidates the GOE editor.
-
setClassType
public void setClassType(Class type)
Sets the class of values that can be edited.- Parameters:
type- a value of type 'Class'
-
getClassType
public Class getClassType()
Returns the currently set class.- Returns:
- the current class
-
setCanChangeClassInDialog
public void setCanChangeClassInDialog(boolean value)
Sets whether the user can change the class.- Parameters:
value- if true then the user can change the class
-
getCanChangeClass
public boolean getCanChangeClass()
Returns whether the user can change the class.- Returns:
- true if the user can change the class
-
supportsFavorites
protected boolean supportsFavorites()
Whether the favorites button is shown or not.- Overrides:
supportsFavoritesin classAbstractChooserPanel- Returns:
- true if to show
-
getFavoritesClass
protected Class getFavoritesClass()
The class to use for the favorites (can be array class).- Overrides:
getFavoritesClassin classAbstractChooserPanel- Returns:
- the class
-
doChoose
protected Object doChoose()
Performs the actual choosing of an object.- Specified by:
doChoosein classAbstractChooserPanel- Returns:
- the chosen object or null if none chosen
-
fromString
protected Object fromString(String value)
Converts the string representation into its object representation.- Specified by:
fromStringin classAbstractChooserPanel- Parameters:
value- the string value to convert- Returns:
- the generated object
-
getHistory
public PersistentObjectHistory getHistory()
Returns the history.- Returns:
- the underlying history
-
getCurrent
public Object getCurrent()
Returns the current value.- Overrides:
getCurrentin classAbstractChooserPanel- Returns:
- the current value
-
toString
protected String toString(Object value)
Converts the value into its string representation.- Specified by:
toStringin classAbstractChooserPanel- Parameters:
value- the value to convert- Returns:
- the generated string
-
setCurrent
public boolean setCurrent(Object value)
Sets the current value.- Overrides:
setCurrentin classAbstractChooserPanel- Parameters:
value- the value to use, can be null- Returns:
- true if successfully set
-
getPopupMenu
protected BasePopupMenu getPopupMenu()
Generates the right-click popup menu.- Overrides:
getPopupMenuin classAbstractChooserPanel- Returns:
- the generated menu
-
setPostProcessObjectHandler
public void setPostProcessObjectHandler(GenericObjectEditor.PostProcessObjectHandler value)
Sets the handler for post-processing objects after they have been selected but before updating the UI.- Parameters:
value- the handler, null to remove
-
getPostProcessObjectHandler
public GenericObjectEditor.PostProcessObjectHandler getPostProcessObjectHandler()
Returns the handler for post-processing objects after they have been selected but before updating the UI.- Returns:
- the handler, null if none set
-
setUserMode
public void setUserMode(UserMode value)
Sets the user mode.- Specified by:
setUserModein interfaceUserModeSupporter- Parameters:
value- the mode
-
getUserMode
public UserMode getUserMode()
Returns the user mode.- Specified by:
getUserModein interfaceUserModeSupporter- Returns:
- the mode
-
-