de.fho.jump.pirol.ui.panels
Class NewAttributePanel

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 de.fho.jump.pirol.ui.panels.NewAttributePanel
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

public class NewAttributePanel
extends javax.swing.JPanel
implements java.awt.event.ActionListener

A Panel that contains controls to collect all information needed to create a new attribute out of. The following information will be collected:
-name of the attribute
-type of the attribute values
-Default-value (will initially filled in all features)

Version:
$Rev: 1670 $
Author:
Ole Rahn

FH Osnabrück - University of Applied Sciences Osnabrück,
Project: PIROL (2005),
Subproject: Daten- und Wissensmanagement
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  javax.swing.JLabel defValLabel
           
protected  java.lang.String defValLabelText
           
protected  javax.swing.JTextField defValueTextField
           
protected  java.lang.String drownActionCommand
           
protected  PersonalLogger logger
           
protected  javax.swing.JLabel nameLabel
           
protected  java.lang.String nameLabelText
           
protected  javax.swing.JTextField nameTextField
           
protected  boolean needDefaultValue
           
protected  AttributeType[] onlyTypes
           
protected  javax.swing.JComboBox typeDropDown
           
protected  javax.swing.JLabel typeLabel
           
protected  java.lang.String typeLabelText
           
 
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
NewAttributePanel(boolean arg0, AttributeType[] onlyTypes, boolean needDefaultValue)
           
NewAttributePanel(boolean arg0, boolean needDefaultValue)
           
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent event)
          checks and fixes the integrity of the values given, when the attribute type is changed.
 void addActionListenerToDefValueTextfield(java.awt.event.ActionListener arg0)
           
 void addActionListenerToNameTextfield(java.awt.event.ActionListener arg0)
           
 void addActionListenerToTypeDropDown(java.awt.event.ActionListener arg0)
           
 AttributeInfo getAttributeInfo()
          Returns the collected information on the new attribute.
protected  java.lang.Object getDefaultValue()
          Returns the default value for the attribute we want to create.
 boolean isDataValid()
          This allows you to check, if the data filled in by the user makes sense or not.
 void setAttributeName(java.lang.String attrName)
          Sets the text that will be displayed in the text field for the new attribute's name.
 void setDefValLabel(java.lang.String defValLabel)
          Sets the label text for the default value field
 void setNameLabel(java.lang.String nameLabel)
          Sets the label text for the name field
 void setTypeLabel(java.lang.String typeLabel)
          Sets the label text for the type field
protected  void setupUI()
          Sets up GUI controlls.
 
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, 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, 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, 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

nameTextField

protected javax.swing.JTextField nameTextField

defValueTextField

protected javax.swing.JTextField defValueTextField

typeDropDown

protected javax.swing.JComboBox typeDropDown

drownActionCommand

protected java.lang.String drownActionCommand

onlyTypes

protected AttributeType[] onlyTypes

logger

protected PersonalLogger logger

typeLabelText

protected java.lang.String typeLabelText

nameLabelText

protected java.lang.String nameLabelText

defValLabelText

protected java.lang.String defValLabelText

nameLabel

protected javax.swing.JLabel nameLabel

defValLabel

protected javax.swing.JLabel defValLabel

typeLabel

protected javax.swing.JLabel typeLabel

needDefaultValue

protected boolean needDefaultValue
Constructor Detail

NewAttributePanel

public NewAttributePanel(boolean arg0,
                         boolean needDefaultValue)
Parameters:
arg0 - see JPanel for information
needDefaultValue - a field for a default value will be shown or not

NewAttributePanel

public NewAttributePanel(boolean arg0,
                         AttributeType[] onlyTypes,
                         boolean needDefaultValue)
Parameters:
arg0 - see JPanel for information
onlyTypes - array of attribute type, that are supposed to be chooseable
needDefaultValue - a field for a default value will be shown or not
Method Detail

setupUI

protected void setupUI()
Sets up GUI controlls.


setAttributeName

public void setAttributeName(java.lang.String attrName)
Sets the text that will be displayed in the text field for the new attribute's name.

Parameters:
attrName - text that will be displayed in the name text field

getAttributeInfo

public AttributeInfo getAttributeInfo()
Returns the collected information on the new attribute. Since this method calls getDefaultValue(), it may throw the same Exception...

Returns:
the collected information

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent event)
checks and fixes the integrity of the values given, when the attribute type is changed.

Specified by:
actionPerformed in interface java.awt.event.ActionListener
Parameters:
event - the action event

isDataValid

public boolean isDataValid()
This allows you to check, if the data filled in by the user makes sense or not. You may want enable/disable the ok-button, depending on the return value of this function.

Returns:
true if values are ok, else false

getDefaultValue

protected java.lang.Object getDefaultValue()
Returns the default value for the attribute we want to create. This function may throw a RuntimeException, if the value filled in for the default value can not be parsed!

Returns:
default value

addActionListenerToDefValueTextfield

public void addActionListenerToDefValueTextfield(java.awt.event.ActionListener arg0)

addActionListenerToNameTextfield

public void addActionListenerToNameTextfield(java.awt.event.ActionListener arg0)

addActionListenerToTypeDropDown

public void addActionListenerToTypeDropDown(java.awt.event.ActionListener arg0)

setDefValLabel

public void setDefValLabel(java.lang.String defValLabel)
Sets the label text for the default value field

Parameters:
defValLabel - The defValLabel to set.

setNameLabel

public void setNameLabel(java.lang.String nameLabel)
Sets the label text for the name field

Parameters:
nameLabel - The nameLabel to set.

setTypeLabel

public void setTypeLabel(java.lang.String typeLabel)
Sets the label text for the type field

Parameters:
typeLabel - The typeLabel to set.