dk.vajhoej.model.graphic.base
Class BaseGraphic

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 dk.vajhoej.model.graphic.base.BaseGraphic
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible
Direct Known Subclasses:
BoxGraphic, ComponentGraphic, ConnectionGraphic, EmptyGraphic, ModelGraphic, PaletteGraphic, PictureGraphic

public abstract class BaseGraphic
extends javax.swing.JPanel

Class BaseGraphic is the base class for all graphic objects.

See Also:
Serialized Form

Nested Class Summary
protected static class BaseGraphic.Grid
          Class Grid represents width and height.
 
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.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  GraphicConfig cfg
           
protected  boolean fixed
           
protected  int h
           
protected  int nchild
           
protected  boolean readonly
           
protected  GraphicLayout style
           
protected  int w
           
 
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
protected BaseGraphic(GraphicConfig cfg, int nchild, GraphicLayout style, int nlbls, boolean uml)
          Create instance of BaseGraphic with dynamic size.
protected BaseGraphic(GraphicConfig cfg, int w, int h, int nchild, GraphicLayout style, int nlbls, boolean uml)
          Create instance of BaseGraphic with fixed size.
 
Method Summary
protected  void addChild()
          Add child.
protected  java.awt.Dimension addLabel(java.awt.Dimension dim, java.lang.String lbl)
          Add label to dimensions.
protected  java.awt.Dimension addTwoLabels(java.awt.Dimension dim, java.lang.String lbl, java.lang.String xtra)
          Add two labels to dimensions.
 void autoSize()
          Auto size this and children.
protected  BaseGraphic.Grid calcGrid()
          Calculate grid (number of components vertical and horizontal).
protected  java.awt.Dimension calcSize()
          Calculate size.
protected  void drawArrow(java.awt.Graphics2D g2, int offset, double angle)
          Draw arrow.
protected  void drawBarrel(java.awt.Graphics2D g2)
          Draw barrel.
protected  void drawBarrelBehind(java.awt.Graphics2D g2)
          Draw barrel behind.
protected  void drawBelowMiddleString(java.lang.String s, java.awt.Graphics2D g2)
          Draw string just below middle.
protected  void drawBelowTopString(java.lang.String s, java.awt.Graphics2D g2)
          Draw string just below top.
protected  void drawBottomString(java.lang.String s, java.awt.Graphics2D g2)
          Draw string at bottom.
protected  void drawCircle(java.awt.Graphics2D g2)
          Draw circle.
protected  void drawCircleBehind(java.awt.Graphics2D g2)
          Draw circle behind.
protected  void drawEndCross(java.awt.Graphics2D g2, double angle)
          Draw end cross.
protected  void drawFirewall(java.awt.Graphics2D g2)
          Draw firewall.
protected  void drawFirewallBehind(java.awt.Graphics2D g2)
          Draw firewall behind.
protected  void drawLeftBus(java.awt.Graphics2D g2, double angle)
          Draw left bus.
protected  void drawMidBus(java.awt.Graphics2D g2, double angle)
          Draw middle bus.
protected  void drawMidCross(java.awt.Graphics2D g2, double angle)
          Draw middle cross.
protected  void drawMiddleString(java.lang.String s, java.awt.Graphics2D g2)
          Draw string at middle.
protected  void drawOffsetMiddleString(java.lang.String s, java.awt.Graphics2D g2, int offset)
           
protected  void drawRectangle(java.awt.Graphics2D g2)
          Draw rectangle.
protected  void drawRectangleBehind(java.awt.Graphics2D g2)
          Draw rectangle behind.
protected  void drawRightBus(java.awt.Graphics2D g2, double angle)
          Draw right bus.
protected  void drawTopString(java.lang.String s, java.awt.Graphics2D g2)
          Draw string at top.
protected  void drawUML(java.awt.Graphics2D g2)
          Draw UML component.
protected  void removeChild()
          Remove child.
protected  void setBorder(int nlbls, boolean uml)
          Set border.
 void setReadonly(boolean readonly)
          Set readonly status.
 void upAutoSize()
          Tell parent to upAutoSize and if no parent do autoSize.
 
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, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, 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

cfg

protected GraphicConfig cfg

nchild

protected int nchild

style

protected GraphicLayout style

fixed

protected boolean fixed

w

protected int w

h

protected int h

readonly

protected boolean readonly
Constructor Detail

BaseGraphic

protected BaseGraphic(GraphicConfig cfg,
                      int nchild,
                      GraphicLayout style,
                      int nlbls,
                      boolean uml)
Create instance of BaseGraphic with dynamic size.

Parameters:
cfg - graphic configuration
nchild - number children
style - layout style
nlbls - number labels
uml - UML style

BaseGraphic

protected BaseGraphic(GraphicConfig cfg,
                      int w,
                      int h,
                      int nchild,
                      GraphicLayout style,
                      int nlbls,
                      boolean uml)
Create instance of BaseGraphic with fixed size.

Parameters:
cfg - graphic configuration
w - width
h - height
nchild - number children
style - layout style
nlbls - number labels
uml - UML style
Method Detail

setReadonly

public void setReadonly(boolean readonly)
Set readonly status.

Parameters:
readonly - readonly status

autoSize

public void autoSize()
Auto size this and children.


upAutoSize

public void upAutoSize()
Tell parent to upAutoSize and if no parent do autoSize.


setBorder

protected void setBorder(int nlbls,
                         boolean uml)
Set border.

Parameters:
nlbls - number labels

addChild

protected void addChild()
Add child.


removeChild

protected void removeChild()
Remove child.


calcSize

protected java.awt.Dimension calcSize()
Calculate size.

Returns:
dimension

drawRectangle

protected void drawRectangle(java.awt.Graphics2D g2)
Draw rectangle.

Parameters:
g2 - graphics context

drawRectangleBehind

protected void drawRectangleBehind(java.awt.Graphics2D g2)
Draw rectangle behind.

Parameters:
g2 - graphics context

drawUML

protected void drawUML(java.awt.Graphics2D g2)
Draw UML component.

Parameters:
g2 - graphics context

drawCircle

protected void drawCircle(java.awt.Graphics2D g2)
Draw circle.

Parameters:
g2 - graphics context

drawCircleBehind

protected void drawCircleBehind(java.awt.Graphics2D g2)
Draw circle behind.

Parameters:
g2 - graphics context

drawBarrel

protected void drawBarrel(java.awt.Graphics2D g2)
Draw barrel.

Parameters:
g2 - graphics context

drawBarrelBehind

protected void drawBarrelBehind(java.awt.Graphics2D g2)
Draw barrel behind.

Parameters:
g2 - graphics context

drawFirewall

protected void drawFirewall(java.awt.Graphics2D g2)
Draw firewall.

Parameters:
g2 - graphics context

drawFirewallBehind

protected void drawFirewallBehind(java.awt.Graphics2D g2)
Draw firewall behind.

Parameters:
g2 - graphics context

drawArrow

protected void drawArrow(java.awt.Graphics2D g2,
                         int offset,
                         double angle)
Draw arrow.

Parameters:
g2 - graphics context
offset - vertical offset
angle - angle

drawLeftBus

protected void drawLeftBus(java.awt.Graphics2D g2,
                           double angle)
Draw left bus.

Parameters:
g2 - graphics context

drawMidBus

protected void drawMidBus(java.awt.Graphics2D g2,
                          double angle)
Draw middle bus.

Parameters:
g2 - graphics context

drawRightBus

protected void drawRightBus(java.awt.Graphics2D g2,
                            double angle)
Draw right bus.

Parameters:
g2 - graphics context

drawMidCross

protected void drawMidCross(java.awt.Graphics2D g2,
                            double angle)
Draw middle cross.

Parameters:
g2 - graphics context

drawEndCross

protected void drawEndCross(java.awt.Graphics2D g2,
                            double angle)
Draw end cross.

Parameters:
g2 - graphics context

drawTopString

protected void drawTopString(java.lang.String s,
                             java.awt.Graphics2D g2)
Draw string at top.

Parameters:
s - string
g2 - graphics context

drawBelowTopString

protected void drawBelowTopString(java.lang.String s,
                                  java.awt.Graphics2D g2)
Draw string just below top.

Parameters:
s - string
g2 - graphics context

drawMiddleString

protected void drawMiddleString(java.lang.String s,
                                java.awt.Graphics2D g2)
Draw string at middle.

Parameters:
s - string
g2 - graphics context

drawBelowMiddleString

protected void drawBelowMiddleString(java.lang.String s,
                                     java.awt.Graphics2D g2)
Draw string just below middle.

Parameters:
s - string
g2 - graphics context

drawOffsetMiddleString

protected void drawOffsetMiddleString(java.lang.String s,
                                      java.awt.Graphics2D g2,
                                      int offset)

drawBottomString

protected void drawBottomString(java.lang.String s,
                                java.awt.Graphics2D g2)
Draw string at bottom.

Parameters:
s - string
g2 - graphics context

addLabel

protected java.awt.Dimension addLabel(java.awt.Dimension dim,
                                      java.lang.String lbl)
Add label to dimensions.

Parameters:
dim - input dimension
lbl - label
Returns:
output dimension

addTwoLabels

protected java.awt.Dimension addTwoLabels(java.awt.Dimension dim,
                                          java.lang.String lbl,
                                          java.lang.String xtra)
Add two labels to dimensions.

Parameters:
dim - input dimension
lbl - label
xtra - extra label
Returns:
output dimension

calcGrid

protected BaseGraphic.Grid calcGrid()
Calculate grid (number of components vertical and horizontal).

Returns:
grid