pipe.dataLayer
Class Place

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--javax.swing.JLabel
                          |
                          +--pipe.dataLayer.PetriNetObject
                                |
                                +--pipe.dataLayer.PlaceTransitionObject
                                      |
                                      +--pipe.dataLayer.Place
All Implemented Interfaces:
javax.accessibility.Accessible, Constants, java.util.EventListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.io.Serializable, javax.swing.SwingConstants

public class Place
extends PlaceTransitionObject
implements Constants

Place - Petri-Net Place Class

Version:
1.0
Author:
James D Bloom
See Also:

PNML - Petri-Net XMLSchema (stNet.xsd),

UML - PNML Package

, Serialized Form

Inner classes inherited from class javax.swing.JLabel
javax.swing.JLabel.AccessibleJLabel
 
Inner classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent, javax.swing.JComponent.ActionStandin, javax.swing.JComponent.IntVector, javax.swing.JComponent.KeyboardState
 
Inner classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Inner classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.AWTTreeLock
 
Field Summary
private  java.lang.Integer currentMarking
          Current Marking
static int HEIGHT
          Place Width
private  java.lang.Integer initialMarking
          Initial Marking
private  java.lang.Double markingOffsetX
          Initial Marking X-axis Offset
private  java.lang.Double markingOffsetY
          Initial Marking Y-axis Offset
private  java.awt.geom.Ellipse2D.Double place
          Ellipse2D.Double place
static int tHeight
          Token Height
static int tWidth
          Token Width
static int WIDTH
          Place Width
 
Fields inherited from class pipe.dataLayer.PlaceTransitionObject
boundsLeftoffset, boundsTopoffset, height, isDragging, name, nameOffsetX, nameOffsetY, positionX, positionY, width
 
Fields inherited from class pipe.dataLayer.PetriNetObject
color, id, movable, pnname
 
Fields inherited from class javax.swing.JLabel
accessibleIcon, defaultIcon, disabledIcon, disabledIconSet, horizontalAlignment, horizontalTextPosition, iconTextGap, LABELED_BY_PROPERTY, labelFor, mnemonic, text, uiClassID, verticalAlignment, verticalTextPosition
 
Fields inherited from class javax.swing.JComponent
_bounds, accessibleContext, actionMap, ACTIONMAP_CREATED, alignmentX, alignmentY, ANCESTOR_INPUTMAP_CREATED, ANCESTOR_USING_BUFFER, ancestorInputMap, ancestorNotifier, autoscroller, border, changeSupport, clientProperties, CREATED_DOUBLE_BUFFER, flags, FOCUS_INPUTMAP_CREATED, focusInputMap, HAS_FOCUS, htmlKey, htmlView, inputVerifier, IS_DOUBLE_BUFFERED, IS_OPAQUE, IS_PAINTING_TILE, IS_PRINTING, IS_PRINTING_ALL, KEY_EVENTS_ENABLED, KEYBOARD_BINDINGS_KEY, listenerList, maximumSize, minimumSize, NEXT_FOCUS, paintImmediatelyClip, paintingChild, preferredSize, readObjectCallbacks, REQUEST_FOCUS_DISABLED, tmpRect, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, verifyInputWhenFocusTarget, vetoableChangeSupport, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW, WHEN_IN_FOCUSED_WINDOW_BINDINGS, WIF_INPUTMAP_CREATED, windowInputMap
 
Fields inherited from class java.awt.Container
component, containerListener, containerSerializedDataVersion, dbg, dispatcher, layoutMgr, listeningBoundsChildren, listeningChildren, maxSize, ncomponents, printing, printingThreads, serialVersionUID
 
Fields inherited from class java.awt.Component
actionListenerK, adjustmentListenerK, appContext, background, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, componentListener, componentListenerK, componentOrientation, componentSerializedDataVersion, containerListenerK, cursor, dropTarget, enabled, eventMask, focusListener, focusListenerK, font, foreground, graphicsConfig, hasFocus, hierarchyBoundsListener, hierarchyBoundsListenerK, hierarchyListener, hierarchyListenerK, incRate, inputMethodListener, inputMethodListenerK, isInc, isPacked, itemListenerK, keyListener, keyListenerK, LEFT_ALIGNMENT, locale, LOCK, metrics, minSize, mouseListener, mouseListenerK, mouseMotionListener, mouseMotionListenerK, nameExplicitlySet, newEventsOnly, ownedWindowK, parent, peer, peerFont, popups, prefSize, privateKey, RIGHT_ALIGNMENT, textListenerK, TOP_ALIGNMENT, valid, visible, windowClosingException, windowListenerK, x, y
 
Fields inherited from interface pipe.gui.Constants
ADDTOKEN, ARC, DEFAULT_BACKGROUND_COLOR, DEFAULT_DIRECTORY, DEFAULT_ELEMENT_COLOR, DEFAULT_ELEMENT_TYPE, DEFAULT_FILENAME, DELETE, DELTOKEN, DRAW, FIRE, MOVE, PLACE, RANDOM, START, STEPBACKWARD, STEPFORWARD, STOP, TRANSITION
 
Fields inherited from interface javax.swing.SwingConstants
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NORTH, NORTH_EAST, NORTH_WEST, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, PROPERTIES, SOMEBITS
 
Constructor Summary
Place()
          Create empty Petri-Net Place object
Place(double positionXInput, double positionYInput, java.awt.Color color)
          Create Petri-Net Place object
Place(double positionXInput, double positionYInput, java.lang.String idInput, java.awt.Color color)
          Create Petri-Net Place object
Place(double positionXInput, double positionYInput, java.lang.String idInput, java.lang.String nameInput, double nameOffsetXInput, double nameOffsetYInput, int initialMarkingInput, double markingOffsetXInput, double markingOffsetYInput, java.awt.Color color)
          Create Petri-Net Place object
 
Method Summary
 int boundsHeight()
          Returns the height bounds we want to use when initially creating the place on the gui
 int boundsWidth()
          Returns the width bounds we want to use when initially creating the place on the gui
 int getCurrentMarking()
          Get current marking
 java.lang.Integer getCurrentMarkingObject()
          Get current marking
 int getInitialMarking()
          Get initial marking
 java.lang.Integer getInitialMarkingObject()
          Get initial marking
 double getMarkingOffsetX()
          Get X-axis offset for initial marking
 java.lang.Double getMarkingOffsetXObject()
          Get X-axis offset for initial marking
 double getMarkingOffsetY()
          Get Y-axis offset for initial marking
 java.lang.Double getMarkingOffsetYObject()
          Get Y-axis offset for initial marking
 int getModeType()
          method indicates which button at the top of the panel has been pressed - this requires implementation properly.
 int leftOffset()
          Returns the distance between the outside of the component to the centre, in order to position the centre of the place where the mouse clicks on the screen
 void modify(double startX, double startY, double endX, double endY)
          Modifies start and end X and Y coords - does nothing.
 void mouseEntered(java.awt.event.MouseEvent e)
           
 void mouseExited(java.awt.event.MouseEvent e)
           
 void mouseMoved(java.awt.event.MouseEvent e)
           
 void paintComponent(java.awt.Graphics g)
          Paints the Place component taking into account the number of tokens from the currentMarking
 void setCurrentMarking(int currentMarkingInput)
          Set current marking
 void setInitialMarking(int initialMarkingInput)
          Set initial marking
 void setmarkingOffsetX(double markingOffsetXInput)
          Set X-axis offset for initial marking
 void setmarkingOffsetY(double markingOffsetYInput)
          Set Y-axis offset for initial marking
 int topOffset()
          Returns the distance between the outside of the component to the centre, in order to position the centre of the place where the mouse clicks on the screen
 void updateSize(java.awt.event.MouseEvent e)
          Implemented in subclasses as involves some tailoring according to the shape
 
Methods inherited from class pipe.dataLayer.PlaceTransitionObject
calculateBoundsOffsets, getId, getName, getNameOffsetX, getNameOffsetXObject, getNameOffsetY, getNameOffsetYObject, getPositionX, getPositionXObject, getPositionY, getPositionYObject, mouseDragged, mousePressed, mouseReleased, setId, setName, setNameOffsetX, setNameOffsetY, setPositionX, setPositionY
 
Methods inherited from class pipe.dataLayer.PetriNetObject
getColor, getMovable, getNameLabel, mouseClicked, setColor, setMovable
 
Methods inherited from class javax.swing.JLabel
checkHorizontalKey, checkVerticalKey, getAccessibleContext, getDisabledIcon, getDisplayedMnemonic, getHorizontalAlignment, getHorizontalTextPosition, getIcon, getIconTextGap, getLabelFor, getText, getUI, getUIClassID, getVerticalAlignment, getVerticalTextPosition, imageUpdate, paramString, setDisabledIcon, setDisplayedMnemonic, setDisplayedMnemonic, setHorizontalAlignment, setHorizontalTextPosition, setIcon, setIconTextGap, setLabelFor, setText, setUI, setVerticalAlignment, setVerticalTextPosition, updateUI, writeObject
 
Methods inherited from class javax.swing.JComponent
_paintImmediately, , addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, adjustPaintFlags, alwaysOnTop, checkIfChildObscuredBySibling, clearFocusOwners, componentInputMapChanged, computeVisibleRect, computeVisibleRect, compWriteObjectNotify, contains, createToolTip, disable, enable, enableSerialization, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getActionMap, getAlignmentX, getAlignmentY, getAutoscrolls, getBorder, getBounds, getClientProperties, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getCreatedDoubleBuffer, getDebugGraphicsOptions, getFlag, getGraphics, getHeight, getInputMap, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getVerifyInputWhenFocusTarget, getVisibleRect, getWidth, getX, getY, grabFocus, hasFocus, hide, isDoubleBuffered, isFocusCycleRoot, isFocusTraversable, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, paintWithBuffer, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processFocusEvent, processKeyBinding, processKeyBindings, processKeyBindingsForAllComponents, processKeyEvent, processMouseMotionEvent, putClientProperty, readObject, rectangleIsObscured, rectangleIsObscuredBySibling, registerKeyboardAction, registerKeyboardAction, registerWithKeyboardManager, registerWithKeyboardManager, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setCreatedDoubleBuffer, setDebugGraphicsOptions, setDoubleBuffered, setEnabled, setFlag, setFont, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPaintingChild, setPreferredSize, setRequestFocusEnabled, setToolTipText, setUI, setVerifyInputWhenFocusTarget, setVisible, shouldDebugGraphics, superProcessMouseMotionEvent, unregisterKeyboardAction, unregisterWithKeyboardManager, unregisterWithKeyboardManager, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, adjustListeningChildren, applyOrientation, checkGD, countComponents, createChildHierarchyEvents, createHierarchyEvents, deliverEvent, dispatchEventImpl, dispatchEventToSelf, doLayout, eventEnabled, findComponentAt, findComponentAt, findComponentAt, getAccessibleAt, getAccessibleChild, getAccessibleChildrenCount, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents_NoClientCode, getComponents, getLayout, getMouseEventTarget, getWindow, initIDs, insets, invalidate, invalidateTree, isAncestorOf, layout, lightweightPaint, lightweightPrint, list, list, locate, minimumSize, nextFocus, numListening, paintComponents, paintHeavyweightComponents, postProcessKeyEvent, postsOldMouseEvents, preferredSize, preProcessKeyEvent, printComponents, printHeavyweightComponents, processContainerEvent, processEvent, proxyEnableEvents, proxyRequestFocus, remove, remove, removeAll, removeContainerListener, setFocusOwner, setLayout, transferFocus, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, areInputMethodsEnabled, bounds, checkImage, checkImage, checkWindowClosingException, coalesceEvents, constructComponentName, contains, createImage, createImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, getAccessibleIndexInParent, getAccessibleStateSet, getBackground, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont_NoClientCode, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getInputContext, getInputMethodRequests, getLocale, getLocation, getLocationOnScreen_NoTreeLock, getLocationOnScreen, getNativeContainer, getParent_NoClientCode, getParent, getPeer, getSize, getToolkit, getToolkitImpl, getTreeLock, getWindowForObject, gotFocus, handleEvent, inside, isDisplayable, isEnabled, isEnabledImpl, isLightweight, isRecursivelyVisible, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, repaint, repaint, repaint, resetGC, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setLocale, setLocation, setLocation, setSize, setSize, show, show, size, toString, transferFocus
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, wait, wait, wait
 

Field Detail

initialMarking

private java.lang.Integer initialMarking
Initial Marking

currentMarking

private java.lang.Integer currentMarking
Current Marking

markingOffsetX

private java.lang.Double markingOffsetX
Initial Marking X-axis Offset

markingOffsetY

private java.lang.Double markingOffsetY
Initial Marking Y-axis Offset

place

private java.awt.geom.Ellipse2D.Double place
Ellipse2D.Double place

WIDTH

public static final int WIDTH
Place Width

HEIGHT

public static final int HEIGHT
Place Width

tWidth

public static int tWidth
Token Width

tHeight

public static int tHeight
Token Height
Constructor Detail

Place

public Place(double positionXInput,
             double positionYInput,
             java.lang.String idInput,
             java.lang.String nameInput,
             double nameOffsetXInput,
             double nameOffsetYInput,
             int initialMarkingInput,
             double markingOffsetXInput,
             double markingOffsetYInput,
             java.awt.Color color)
Create Petri-Net Place object
Parameters:
positionXInput - X-axis Position
positionYInput - Y-axis Position
idInput - Place id
nameInput - Name
nameOffsetXInput - Name X-axis Position
nameOffsetYInput - Name Y-axis Position
initialMarkingInput - Initial Marking
markingOffsetXInput - Marking X-axis Position
markingOffsetYInput - Marking Y-axis Position
color - Color

Place

public Place(double positionXInput,
             double positionYInput,
             java.lang.String idInput,
             java.awt.Color color)
Create Petri-Net Place object
Parameters:
positionXInput - X-axis Position
positionYInput - Y-axis Position
idInput - Place id
color - Color

Place

public Place(double positionXInput,
             double positionYInput,
             java.awt.Color color)
Create Petri-Net Place object
Parameters:
positionXInput - X-axis Position
positionYInput - Y-axis Position
color - - modified by aed02

Place

public Place()
Create empty Petri-Net Place object
Method Detail

paintComponent

public void paintComponent(java.awt.Graphics g)
Paints the Place component taking into account the number of tokens from the currentMarking
Overrides:
paintComponent in class PlaceTransitionObject
Parameters:
g - The Graphics object onto which the Place is drawn.

setInitialMarking

public void setInitialMarking(int initialMarkingInput)
Set initial marking
Parameters:
initialMarkingInput - Integer value for initial marking

setCurrentMarking

public void setCurrentMarking(int currentMarkingInput)
Set current marking
Parameters:
currentMarkingInput - Integer value for current marking

setmarkingOffsetX

public void setmarkingOffsetX(double markingOffsetXInput)
Set X-axis offset for initial marking
Parameters:
markingOffsetXInput - Integer value for X-axis offset of initial marking

setmarkingOffsetY

public void setmarkingOffsetY(double markingOffsetYInput)
Set Y-axis offset for initial marking
Parameters:
markingOffsetYInput - Integer value for Y-axis offset of initial marking

getInitialMarking

public int getInitialMarking()
Get initial marking
Returns:
Integer value for initial marking

getCurrentMarking

public int getCurrentMarking()
Get current marking
Returns:
Integer value for current marking

getMarkingOffsetX

public double getMarkingOffsetX()
Get X-axis offset for initial marking
Returns:
Double value for X-axis offset of initial marking

getMarkingOffsetY

public double getMarkingOffsetY()
Get Y-axis offset for initial marking
Returns:
Double value for X-axis offset of initial marking

getInitialMarkingObject

public java.lang.Integer getInitialMarkingObject()
Get initial marking
Returns:
Integer value for initial marking

getCurrentMarkingObject

public java.lang.Integer getCurrentMarkingObject()
Get current marking
Returns:
Integer value for current marking

getMarkingOffsetXObject

public java.lang.Double getMarkingOffsetXObject()
Get X-axis offset for initial marking
Returns:
Double value for X-axis offset of initial marking

getMarkingOffsetYObject

public java.lang.Double getMarkingOffsetYObject()
Get Y-axis offset for initial marking
Returns:
Double value for X-axis offset of initial marking

modify

public void modify(double startX,
                   double startY,
                   double endX,
                   double endY)
Modifies start and end X and Y coords - does nothing.
Overrides:
modify in class PetriNetObject
Parameters:
startX - Start X-axis Position
startY - Start Y-axis Position
endX - End X-axis Position
endY - End Y-axis Position

updateSize

public void updateSize(java.awt.event.MouseEvent e)
Description copied from class: PlaceTransitionObject
Implemented in subclasses as involves some tailoring according to the shape
Overrides:
updateSize in class PlaceTransitionObject
Following copied from class: pipe.dataLayer.PlaceTransitionObject
Parameters:
e - Mouse Event

mouseMoved

public void mouseMoved(java.awt.event.MouseEvent e)
Overrides:
mouseMoved in class PetriNetObject

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent e)
Overrides:
mouseEntered in class PetriNetObject

mouseExited

public void mouseExited(java.awt.event.MouseEvent e)
Overrides:
mouseExited in class PetriNetObject

getModeType

public int getModeType()
method indicates which button at the top of the panel has been pressed - this requires implementation properly. How do we get the proper type ?

boundsWidth

public int boundsWidth()
Returns the width bounds we want to use when initially creating the place on the gui
Overrides:
boundsWidth in class PlaceTransitionObject
Returns:
Width bounds of Place

boundsHeight

public int boundsHeight()
Returns the height bounds we want to use when initially creating the place on the gui
Overrides:
boundsHeight in class PlaceTransitionObject
Returns:
Height bounds of Place

topOffset

public int topOffset()
Returns the distance between the outside of the component to the centre, in order to position the centre of the place where the mouse clicks on the screen
Overrides:
topOffset in class PlaceTransitionObject
Returns:
Top offset of Place

leftOffset

public int leftOffset()
Returns the distance between the outside of the component to the centre, in order to position the centre of the place where the mouse clicks on the screen
Overrides:
leftOffset in class PlaceTransitionObject
Returns:
Left offset of Place