Holger's Java API

## com.antelmann.util.gui
Class JPropertyEditor

    java.lang.Object
      java.awt.Component
          java.awt.Container
              javax.swing.JComponent
                  com.antelmann.util.gui.JPropertyEditor

All Implemented Interfaces:
  EditableComponent, ImageObserver, MenuContainer, Serializable

    public class JPropertyEditor

extends JComponent
implements EditableComponent

a convenient graphical editor for Properties based on one-line String values. To be notified on changes, simply add a TableModelListener on the embedded StringMapTableModel. Alternatively, this component fires property changes with key "value" on changing the model.

Author:
  Holger Antelmann
See Also:
  Serialized Form

Nested Class Summary

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
`protected String` `deleteKeyConfirmString`
`protected String` `keyAlreadyExistsString`
`protected String` `keyString`
`protected String` `newKeyString`
`protected String` `valueString`

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
`JPropertyEditor()` calls this(false)
`JPropertyEditor(boolean selectAllOnEdit)`
`JPropertyEditor(Map<?,?> props)`
`JPropertyEditor(Map<?,?> props, boolean selectAllOnEdit)`
`JPropertyEditor(PropertyEntry entry)` the instance is initialized with the properties of the given entry, but the changes from this implementation are not written back to the given entry.
`JPropertyEditor(PropertyEntry entry, boolean selectAllOnEdit)`

Method Summary
`protected void` `addProperty()`
`protected void` `deleteProperty()`
`JTable` `getJTable()`
`protected String[]` `getKeyValuesFromStore()`
`StringMapTableModel` `getModel()`
`Map<String,String>` `getProperties()` direct access to the properties of the underlying model
`String[]` `getSuggestedKeys()`
`boolean` `getSuggestedKeysOnly()`
`Map<String,String[]>` `getSuggestedValues()`
`boolean` `isEditable()`
`boolean` `isEmpty()`
`boolean` `isSuggestedValuesOnly()`
`void` `setClassStore(DBClassStore<?> store)` if set to a a non-null value, the given store is queried for mapping information allowing to pre-initialize possible key/value selections
`void` `setEditable(boolean flag)`
`void` `setProperties(Map<?,?> props)` given props remain untouched; they are copied into the embedded model
`void` `setSelectAllOnEdit(boolean flag)`
`void` `setSuggestedKeys(String... suggestedKeys)`
`void` `setSuggestedKeysOnly(boolean flag)`
`void` `setSuggestedValues(Map<String,String[]> suggestedValues)`
`void` `setSuggestedValuesOnly(boolean flag)`
`void` `setUseJComboBoxForValues(boolean flag)`
`void` `writePropertiesInto(PropertyEntry entry)` existing properties of the given entry are deleted and all properties from this instance are written into it.

Methods inherited from class javax.swing.JComponent

`addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getAccessibleContext, 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, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, paramString, 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, updateUI`

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, 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, transferFocusUpCycle`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### keyString

    protected String keyString

### valueString

    protected String valueString

### newKeyString

    protected String newKeyString

### keyAlreadyExistsString

    protected String keyAlreadyExistsString

### deleteKeyConfirmString

    protected String deleteKeyConfirmString

Constructor Detail

### JPropertyEditor

    public JPropertyEditor()

  calls this(false)

### JPropertyEditor

    public JPropertyEditor(boolean selectAllOnEdit)

### JPropertyEditor

    public JPropertyEditor(PropertyEntry entry,
                           boolean selectAllOnEdit)

### JPropertyEditor

    public JPropertyEditor(PropertyEntry entry)

  the instance is initialized with the properties of the given entry, but the changes from this implementation are not written back to the given entry. The selectAllOnEdit feature is disabled by default.

  See Also:
    `writePropertiesInto(PropertyEntry)`

### JPropertyEditor

    public JPropertyEditor(Map<?,?> props,
                           boolean selectAllOnEdit)

### JPropertyEditor

    public JPropertyEditor(Map<?,?> props)

Method Detail

### setUseJComboBoxForValues

    public void setUseJComboBoxForValues(boolean flag)

### setClassStore

    public void setClassStore(DBClassStore<?> store)

  if set to a a non-null value, the given store is queried for mapping information allowing to pre-initialize possible key/value selections

### setSelectAllOnEdit

    public void setSelectAllOnEdit(boolean flag)

### isEmpty

    public boolean isEmpty()

### getJTable

    public JTable getJTable()

### getModel

    public StringMapTableModel getModel()

### getProperties

    public Map<String,String> getProperties()

  direct access to the properties of the underlying model

### setProperties

    public void setProperties(Map<?,?> props)

  given props remain untouched; they are copied into the embedded model

### writePropertiesInto

    public void writePropertiesInto(PropertyEntry entry)

  existing properties of the given entry are deleted and all properties from this instance are written into it.

### getSuggestedKeys

    public String[] getSuggestedKeys()

### setSuggestedKeys

    public void setSuggestedKeys(String... suggestedKeys)

### setSuggestedValues

    public void setSuggestedValues(Map<String,String[]> suggestedValues)

### getSuggestedValues

    public Map<String,String[]> getSuggestedValues()

### getSuggestedKeysOnly

    public boolean getSuggestedKeysOnly()

### setSuggestedKeysOnly

    public void setSuggestedKeysOnly(boolean flag)

### isSuggestedValuesOnly

    public boolean isSuggestedValuesOnly()

### setSuggestedValuesOnly

    public void setSuggestedValuesOnly(boolean flag)

### getKeyValuesFromStore

    protected String[] getKeyValuesFromStore()

### addProperty

    protected void addProperty()

### deleteProperty

    protected void deleteProperty()

### isEditable

    public boolean isEditable()

  Specified by:
    `isEditable` in interface `EditableComponent`

### setEditable

    public void setEditable(boolean flag)

  Specified by:
    `setEditable` in interface `EditableComponent`

(c) Holger Antelmann since 2001- all rights reserved (contact: info@antelmann.com)
see www.antelmann.com/developer for further details and available downloads