arlut.csd.ganymede
Class BaseFieldEditor

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--javax.swing.JPanel
                          |
                          +--arlut.csd.ganymede.BaseFieldEditor
All Implemented Interfaces:
javax.accessibility.Accessible, java.util.EventListener, java.awt.image.ImageObserver, java.awt.event.ItemListener, JsetValueCallback, java.awt.MenuContainer, java.io.Serializable, java.awt.event.TextListener

class BaseFieldEditor
extends javax.swing.JPanel
implements JsetValueCallback, java.awt.event.ItemListener, java.awt.event.TextListener

Part of the admin console's graphical schema editor. This panel is responsible for displaying and editing field definitions.


Field Summary
(package private)  arlut.csd.JDataComponent.JcheckboxField apachemd5cryptedCF
           
(package private)  arlut.csd.JDataComponent.JstringField BadCharS
           
(package private)  boolean booleanShowing
           
(package private)  arlut.csd.JDialog.StringDialog changeLabelTypeDialog
           
(package private)  arlut.csd.JDataComponent.JstringField classS
           
(package private)  javax.swing.JTextArea commentT
           
(package private)  arlut.csd.JDataComponent.JcheckboxField cryptedCF
           
(package private)  boolean dateShowing
           
(package private) static boolean debug
           
(package private)  arlut.csd.JDataComponent.JcheckboxField editInPlaceCF
           
(package private)  javax.swing.JPanel editPanel
           
(package private)  arlut.csd.JDataComponent.JstringField falseLabelS
           
(package private)  javax.swing.JComboBox fieldC
           
(package private)  arlut.csd.ganymede.BaseField fieldDef
           
(package private)  arlut.csd.ganymede.FieldNode fieldNode
           
(package private)  boolean floatShowing
           
(package private)  java.awt.GridBagConstraints gbc
           
(package private)  java.awt.GridBagLayout gbl
           
(package private)  arlut.csd.JDataComponent.JnumberField idN
           
(package private)  boolean ipShowing
           
(package private)  arlut.csd.JDataComponent.JcheckboxField labeledCF
           
(package private)  boolean listenToCallbacks
           
(package private)  arlut.csd.JDataComponent.JnumberField maxArrayN
           
(package private)  arlut.csd.JDataComponent.JnumberField maxLengthN
           
(package private)  arlut.csd.JDataComponent.JcheckboxField md5cryptedCF
           
(package private)  arlut.csd.JDataComponent.JnumberField minLengthN
           
(package private)  arlut.csd.JDataComponent.JcheckboxField multiLineCF
           
(package private)  arlut.csd.JDataComponent.JstringField nameS
           
(package private)  javax.swing.JComboBox namespaceC
           
(package private)  boolean numericShowing
           
(package private)  arlut.csd.JDataComponent.JstringField OKCharS
           
(package private)  arlut.csd.ganymede.GASHSchema owner
           
(package private)  boolean passwordShowing
           
(package private)  boolean permissionShowing
           
(package private)  arlut.csd.JDataComponent.JcheckboxField plainTextCF
           
(package private)  boolean referenceShowing
           
(package private)  arlut.csd.JDataComponent.JstringField regexpDescS
           
(package private)  arlut.csd.JDataComponent.JstringField regexpS
           
(package private)  java.util.Hashtable rowHash
           
(package private)  boolean stringShowing
           
(package private)  javax.swing.JComboBox targetC
           
(package private)  arlut.csd.JDataComponent.JstringField trueLabelS
           
(package private)  javax.swing.JComboBox typeC
           
(package private)  arlut.csd.JDataComponent.JcheckboxField vectorCF
           
(package private)  arlut.csd.JDataComponent.JcheckboxField winHashcryptedCF
           
 
Fields inherited from class javax.swing.JPanel
 
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.Container
 
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
(package private) BaseFieldEditor(arlut.csd.ganymede.GASHSchema owner)
          Constructor
 
Method Summary
(package private)  void addRow(javax.swing.JPanel parent, java.awt.Component comp, java.lang.String label, int row)
           
(package private)  void addRow(javax.swing.JPanel parent, java.awt.Component comp, java.lang.String label, int row, boolean visible)
           
(package private)  void changeTypeChoice(java.lang.String selectedItem)
          This method changes the type on the server and updates the booleans that BaseFieldEditor uses to keep track of what field attributes should be visible.
(package private)  void checkVisibility()
           
 void cleanup()
          GC-aiding dissolution method.
(package private)  void clearFields()
           
private  void clearTypeChoice()
          Helper method for changeTypeChoice().
(package private)  void editField(arlut.csd.ganymede.FieldNode fieldNode, boolean forceRefresh)
          Edit the given field.
(package private)  void editField(arlut.csd.ganymede.FieldNode fieldNode, boolean forceRefresh, boolean updateTargetC)
          Edit the given field.
 void itemStateChanged(java.awt.event.ItemEvent e)
          For choice fields
(package private)  void refreshFieldChoice()
          This method regenerates the list of valid target field choices in the BaseFieldEditor when the targetBase is not "".
 void refreshFieldEdit(boolean updateTargetC)
          Reinitialize the BaseFieldEditor with the current field.
(package private)  void refreshNamespaceChoice()
           
(package private)  void refreshTargetChoice()
          This method regenerates the list of valid target base choices in the BaseFieldEditor.
(package private)  void setRowVisible(java.awt.Component comp, boolean b)
           
 boolean setValuePerformed(arlut.csd.JDataComponent.JValueObject v)
          For string, numeric, and checkbox fields
 void textValueChanged(java.awt.event.TextEvent e)
           
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, setForeground, 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, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, 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, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, 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, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, 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

debug

static final boolean debug
See Also:
Constant Field Values

listenToCallbacks

boolean listenToCallbacks

fieldNode

arlut.csd.ganymede.FieldNode fieldNode

fieldDef

arlut.csd.ganymede.BaseField fieldDef

editPanel

javax.swing.JPanel editPanel

owner

arlut.csd.ganymede.GASHSchema owner

changeLabelTypeDialog

arlut.csd.JDialog.StringDialog changeLabelTypeDialog

commentT

javax.swing.JTextArea commentT

nameS

arlut.csd.JDataComponent.JstringField nameS

classS

arlut.csd.JDataComponent.JstringField classS

trueLabelS

arlut.csd.JDataComponent.JstringField trueLabelS

falseLabelS

arlut.csd.JDataComponent.JstringField falseLabelS

OKCharS

arlut.csd.JDataComponent.JstringField OKCharS

BadCharS

arlut.csd.JDataComponent.JstringField BadCharS

regexpS

arlut.csd.JDataComponent.JstringField regexpS

regexpDescS

arlut.csd.JDataComponent.JstringField regexpDescS

idN

arlut.csd.JDataComponent.JnumberField idN

maxArrayN

arlut.csd.JDataComponent.JnumberField maxArrayN

minLengthN

arlut.csd.JDataComponent.JnumberField minLengthN

maxLengthN

arlut.csd.JDataComponent.JnumberField maxLengthN

vectorCF

arlut.csd.JDataComponent.JcheckboxField vectorCF

labeledCF

arlut.csd.JDataComponent.JcheckboxField labeledCF

editInPlaceCF

arlut.csd.JDataComponent.JcheckboxField editInPlaceCF

cryptedCF

arlut.csd.JDataComponent.JcheckboxField cryptedCF

md5cryptedCF

arlut.csd.JDataComponent.JcheckboxField md5cryptedCF

apachemd5cryptedCF

arlut.csd.JDataComponent.JcheckboxField apachemd5cryptedCF

winHashcryptedCF

arlut.csd.JDataComponent.JcheckboxField winHashcryptedCF

plainTextCF

arlut.csd.JDataComponent.JcheckboxField plainTextCF

multiLineCF

arlut.csd.JDataComponent.JcheckboxField multiLineCF

typeC

javax.swing.JComboBox typeC

namespaceC

javax.swing.JComboBox namespaceC

targetC

javax.swing.JComboBox targetC

fieldC

javax.swing.JComboBox fieldC

rowHash

java.util.Hashtable rowHash

booleanShowing

boolean booleanShowing

numericShowing

boolean numericShowing

floatShowing

boolean floatShowing

dateShowing

boolean dateShowing

stringShowing

boolean stringShowing

referenceShowing

boolean referenceShowing

passwordShowing

boolean passwordShowing

ipShowing

boolean ipShowing

permissionShowing

boolean permissionShowing

gbl

java.awt.GridBagLayout gbl

gbc

java.awt.GridBagConstraints gbc
Constructor Detail

BaseFieldEditor

BaseFieldEditor(arlut.csd.ganymede.GASHSchema owner)
Constructor

Method Detail

clearFields

void clearFields()

addRow

void addRow(javax.swing.JPanel parent,
            java.awt.Component comp,
            java.lang.String label,
            int row)

addRow

void addRow(javax.swing.JPanel parent,
            java.awt.Component comp,
            java.lang.String label,
            int row,
            boolean visible)

setRowVisible

void setRowVisible(java.awt.Component comp,
                   boolean b)

checkVisibility

void checkVisibility()

refreshNamespaceChoice

void refreshNamespaceChoice()

refreshTargetChoice

void refreshTargetChoice()
This method regenerates the list of valid target base choices in the BaseFieldEditor.


refreshFieldChoice

void refreshFieldChoice()
This method regenerates the list of valid target field choices in the BaseFieldEditor when the targetBase is not "". This method doesn't make a selection, so upon exit of this method, "" will be selected in the fieldC widget.


changeTypeChoice

void changeTypeChoice(java.lang.String selectedItem)
This method changes the type on the server and updates the booleans that BaseFieldEditor uses to keep track of what field attributes should be visible. We do not do any of the BaseFieldEditor updates that a change to the field type in question would require. This is currently done elsewhere, primarily by a call to refreshFieldEdit().


clearTypeChoice

private void clearTypeChoice()

Helper method for changeTypeChoice().


editField

void editField(arlut.csd.ganymede.FieldNode fieldNode,
               boolean forceRefresh)
Edit the given field. This method prepares the BaseFieldEditor for display, initializing all items in the BaseFieldEditor panel with the contents of fieldDef.


editField

void editField(arlut.csd.ganymede.FieldNode fieldNode,
               boolean forceRefresh,
               boolean updateTargetC)
Edit the given field. This method prepares the BaseFieldEditor for display, initializing all items in the BaseFieldEditor panel with the contents of fieldDef.


refreshFieldEdit

public void refreshFieldEdit(boolean updateTargetC)

Reinitialize the BaseFieldEditor with the current field.


setValuePerformed

public boolean setValuePerformed(arlut.csd.JDataComponent.JValueObject v)

For string, numeric, and checkbox fields

Specified by:
setValuePerformed in interface JsetValueCallback
Returns:
true if the callback accepted the change and the GUI component should go ahead and display the change made by the user.
See Also:
JsetValueCallback

itemStateChanged

public void itemStateChanged(java.awt.event.ItemEvent e)
For choice fields

Specified by:
itemStateChanged in interface java.awt.event.ItemListener

textValueChanged

public void textValueChanged(java.awt.event.TextEvent e)
Specified by:
textValueChanged in interface java.awt.event.TextListener

cleanup

public void cleanup()

GC-aiding dissolution method. Should be called on GUI thread.