org.argouml.ui
Class StylePanelFig

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--javax.swing.JPanel
                          |
                          +--org.argouml.ui.TabSpawnable
                                |
                                +--org.argouml.ui.StylePanel
                                      |
                                      +--org.argouml.ui.StylePanelFig
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.event.ActionListener, java.lang.Cloneable, javax.swing.event.DocumentListener, java.util.EventListener, java.awt.event.FocusListener, java.awt.image.ImageObserver, java.awt.event.ItemListener, java.awt.event.KeyListener, javax.swing.event.ListSelectionListener, java.awt.MenuContainer, Orientable, java.io.Serializable, TabFigTarget, TabTarget, TargetListener
Direct Known Subclasses:
StylePanelFigClass, StylePanelFigInterface, StylePanelFigMessage, StylePanelFigRRect, StylePanelFigText, StylePanelFigUseCase

public class StylePanelFig
extends StylePanel
implements java.awt.event.ItemListener, java.awt.event.FocusListener, java.awt.event.KeyListener

See Also:
Serialized Form

Field Summary
protected  javax.swing.JTextField _bboxField
           
protected  javax.swing.JLabel _bboxLabel
           
protected  javax.swing.JComboBox _fillField
           
protected  javax.swing.JLabel _fillLabel
           
protected  javax.swing.JComboBox _lineField
           
protected  javax.swing.JLabel _lineLabel
           
protected  javax.swing.JComboBox _shadowField
           
protected  javax.swing.JLabel _shadowLabel
           
protected  SpacerPanel _spacer
           
protected  SpacerPanel _spacer2
           
protected  SpacerPanel _spacer3
           
protected static Category cat
           
 
Fields inherited from class org.argouml.ui.StylePanel
_target
 
Fields inherited from class org.argouml.ui.TabSpawnable
orientation, OVERLAPP
 
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
StylePanelFig()
           
 
Method Summary
 void focusGained(java.awt.event.FocusEvent e)
           
 void focusLost(java.awt.event.FocusEvent e)
          Makes sure that the fig is updated when the _bboxField loses focus.
protected  void initChoices()
           
 void itemStateChanged(java.awt.event.ItemEvent e)
           
 void keyPressed(java.awt.event.KeyEvent e)
           
 void keyReleased(java.awt.event.KeyEvent e)
           
 void keyTyped(java.awt.event.KeyEvent e)
          Tests if enter is pressed in the _bbodField so we need to set the target bounds.
protected  java.awt.Rectangle parseBBox()
          Parse the boundary box string and return the rectangle it represents.
 void refresh()
          Handle a refresh of the style panel after the fig has moved.
protected  void setTargetBBox()
          Change the bounds of the target fig.
 void setTargetFill()
           
 void setTargetLine()
           
 void setTargetShadow()
           
 
Methods inherited from class org.argouml.ui.StylePanel
actionPerformed, changedUpdate, getTarget, insertUpdate, refresh, removeUpdate, setTarget, shouldBeEnabled, targetAdded, targetRemoved, targetSet, valueChanged
 
Methods inherited from class org.argouml.ui.TabSpawnable
clone, getTitle, setOrientation, setTitle, spawn
 
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
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

cat

protected static Category cat

_bboxLabel

protected javax.swing.JLabel _bboxLabel

_bboxField

protected javax.swing.JTextField _bboxField

_fillLabel

protected javax.swing.JLabel _fillLabel

_fillField

protected javax.swing.JComboBox _fillField

_lineLabel

protected javax.swing.JLabel _lineLabel

_lineField

protected javax.swing.JComboBox _lineField

_shadowLabel

protected javax.swing.JLabel _shadowLabel

_shadowField

protected javax.swing.JComboBox _shadowField

_spacer

protected SpacerPanel _spacer

_spacer2

protected SpacerPanel _spacer2

_spacer3

protected SpacerPanel _spacer3
Constructor Detail

StylePanelFig

public StylePanelFig()
Method Detail

initChoices

protected void initChoices()

refresh

public void refresh()

Handle a refresh of the style panel after the fig has moved.

Warning. There is a circular trap here. Editing the boundary box will also trigger a refresh, and so we reset the boundary box, which causes funny behaviour (the cursor keeps jumping to the end of the text).

The solution is to not reset the boundary box field if the boundaries have not changed.

Specified by:
refresh in interface TabTarget
Overrides:
refresh in class StylePanel

setTargetBBox

protected void setTargetBBox()

Change the bounds of the target fig. Called whenever the bounds box is edited.

Format of the bounds is four integers representing x, y, width and height separated by spaces or commas. An empty field is treated as no change and leading and trailing spaces are ignored.

Note. There is a note in the old code that more work might be needed, because this could change the graph model. I don't see how that could ever be.


parseBBox

protected java.awt.Rectangle parseBBox()

Parse the boundary box string and return the rectangle it represents.

The syntax are four integers separated by spaces or commas. We ignore leading and trailing blanks.

If we have the empty string we return null.

If we fail to parse, then we return null and print out a rude message.

Returns:
The size of the box, or null if the bounds string is empty or invalid.

setTargetFill

public void setTargetFill()

setTargetLine

public void setTargetLine()

setTargetShadow

public void setTargetShadow()

itemStateChanged

public void itemStateChanged(java.awt.event.ItemEvent e)
Specified by:
itemStateChanged in interface java.awt.event.ItemListener
Overrides:
itemStateChanged in class StylePanel

focusGained

public void focusGained(java.awt.event.FocusEvent e)
Specified by:
focusGained in interface java.awt.event.FocusListener
See Also:
FocusListener.focusGained(java.awt.event.FocusEvent)

focusLost

public void focusLost(java.awt.event.FocusEvent e)
Makes sure that the fig is updated when the _bboxField loses focus.

Specified by:
focusLost in interface java.awt.event.FocusListener
See Also:
FocusListener.focusLost(java.awt.event.FocusEvent)

keyPressed

public void keyPressed(java.awt.event.KeyEvent e)
Specified by:
keyPressed in interface java.awt.event.KeyListener
See Also:
KeyListener.keyPressed(java.awt.event.KeyEvent)

keyReleased

public void keyReleased(java.awt.event.KeyEvent e)
Specified by:
keyReleased in interface java.awt.event.KeyListener
See Also:
KeyListener.keyReleased(java.awt.event.KeyEvent)

keyTyped

public void keyTyped(java.awt.event.KeyEvent e)
Tests if enter is pressed in the _bbodField so we need to set the target bounds.

Specified by:
keyTyped in interface java.awt.event.KeyListener
See Also:
KeyListener.keyTyped(java.awt.event.KeyEvent)


ArgoUML © 1996-2003 (20040229)ArgoUML Project HomeArgoUML Cookbook