Class - Gate_

Public Methods
Public Method Details
Private Methods
State

Inheritance - ::gui::Gate_ ::mps::Gate_

Public Methods

(top level)

create key mtag x y args   Create a gui::Gate_ object and display a view of it on the current canvas (procedure)
destroy     Delete a gui::Gate_ object and undisplay any views
move mode args   Move a view of the Gate object around on a drawing canvas
optget option   Optain a value for the specified graphical option
optmod args   Set a value for a graphical option, or obtain option list(s), do arch checks, history, update
update args   Bring the current view of the object up-to-date with the architecture state
select     Show the object as selected
unselect     Undo the effects of 'select' (required for any object which uses <<CANVAS_CENTER>> binding)
activate args   Show the Gate as ready to be moved (a selectbox is active)
deactivate sb_tag args   Undo the effects of 'activate'

(low level)

addSelectBoxes     Show selection boxes on the current view of the object
adjust args   Adjust the Gate's graphical appearance, needed due to changes in other objects
attachSeg stag   The given Segment is attached to the Gate object.
buildTree top   Build the architectural state and graphical defaults of the object into a DOM tree
buildTree_gui top view   Build the graphical values of the specified view into a DOM tree
checkConfig vname  
constructor mtag args  
copy    
cut    
delete args  
deleteSelectBoxes     Undo the effects of 'addSelectBoxes'
deploy x y   A view of the object is displayed and sub-objects are also deployed
destructor    
display x y args   Display a graphical view of the object on the current canvas
fade     Show the current view of the object as faded
getCanvas     Get a widget name (command) for the current canvas
getCname    
getCommand mode   Returns a string that can be used to re-create/display/copy the object as it exists now
getCoord req  
getMsgs    
getOptions args   Return information about the options for this object
getPcode    
getProperties     (procedure)
getPropertyList    
isEditable     (procedure)
isOkToDelete    
moveDist moveit xDist yDist  
paste mode  
raise     Raise the view of the object in the canvas display order
recall     Any view is undisplayed and sub-objects are also recalled
resize sb_tag mode args   (no resize of Gate object)
setEvent etag   Set the Event which associated with this Gate.
unattachSeg stag   The given Segment is unattached from the Gate object.
undisplay {view {}}   Undisplay a view of the object
unfade     Undo the effects of 'fade'
unsetEvent etag   Clear state so that no Event is associated with this Gate.

Public Method Details

activate
  A selectionbox has been chosen (clicked). For a gate this shows the gate as ready to be moved.
addSelectBoxes
  Add a selectbox object to the Gate.
adjust   ?hints? ?actionlist?
  Adjust the graphical components of the Gate to their correct position given the current situation. If no arguments are given, then all components (see <actionlist>) are checked to see if adjustment is required. Providing <hints> can improve efficiency.
  This method is public so that as other objects undergo changes changes (move, resize) that can affect the gate, they can invoke this method and get the gate to adjust itself.
 
?hints?
  used to give hints to the adjust method
 
none
  (none right now)
 
?actionlist?
  a list of components to be adjusted (default is all)
 
OnMsg
  place the gate to keep it located on the message line
attachSeg
  Attachment of a Segment is used to determine the gate type, determines which Event to use for Rule, etc.
buildTree
  The architectural state and initial graphical state of the Gate object are grafted onto the DOM tree element indicated.
 
top
  a pointer to a tree element
buildTree_gui
  The current graphical state of the specified view is grafted onto the DOM tree element indicated.
 
top
  a pointer to a tree element
 
view
  the View (Edit sheet) from which to obtain the view of the Gate object
checkConfig
constructor
  Use the itcl::class definition to create a Gate object.
copy
create   key mtag x y ?<options>?
  A gui::Gate_ object is created with name <key> positioned on Msg <mtag>. A view of the object is shown on the current canvas.
  Graphical options can be passed in which will be used as default values for all subsequent views of the object which are displayed on any canvas. (Any graphical options not specified will use the class values set up during program start up.)
  The command is put onto the Hist/Undo stack.
 
key
  used to create a name for the object
  can be #auto, see documentation for itcl::class
 
mtag
  must be a valid Msg object tag
 
?<options>?
  graphical options (see options )
cut
deactivate
  The object has been deselected. For a gate object this means we are done moving it around.
delete
deleteSelectBoxes
  Remove selectbox objects from the Gate.
deploy
  A view of the object is placed on the canvas.
destroy
  After checking that architectural conditions are met, a gui::Gate_ is deleted and all views are undisplayed. The command is put onto the Hist/Undo stack.
destructor
  Undisplay all views of the object on any canvas and itcl::delete the object.
display
  Show the graphical items for this object on the current canvas.
fade
  Draw the gate so it looks faded.
getCanvas
  Get a widget (command) name for the current canvas.
getCname
getCommand
  see command explanation here
getCoord
getMsgs
getOptions
  see command explanation here
  see graphical options here
getPcode
getProperties
getPropertyList
isEditable
isOkToDelete
move
  Move a Gate object along a message line. Same modes and usage as pe
moveDist
optget
  see command explanation here
  see graphical options here
optmod
  see command explanation here
  see graphical options here
paste
raise
  Raise the gate on the canvas.
recall
  Any view of the object on the current canvas is undisplayed and all attached events also execute a 'recall' method. The command is put onto the Hist/Undo stack.
resize
  A select-box has been clicked on and now the user wants to drag it around on the screen. For a gate, this does not resize the Gate, it actually just moves it around.
select
  An Event is selected, and we indicate it is selected by drawing a "select box" in the center of the Gate
setEvent
  A new "main" event is part of the gate. A main event is the event to which the message is directly attached, it is the one event which is not found via a Segment.
unattachSeg
undisplay
  Remove the graphical items from the canvas which comprise a "view" of the object.
 
view
  View tag which contains the object view to be undisplayed.
  if no View tag is given, try to remove a view of the object on the current canvas.
unfade
  Redraw the gate so it looks normal.
unselect
  Show the view of the Gate as unselected.
unsetEvent
  The "main" event info is no longer valid, due to:
- the message was disconnected,
- other?
update   ?options?
  Bring the view of the Gate up-to-date with the Architecture. Architecture changes could have been made in other views that need to be reflected onto this view of the object.
 
?options?
  choose pieces to be updated (default is all)
 
none
  (nothing right now)

Private Methods

_getOrigin dir  
_getSize    
_initopts    
_setLinewidth lw  
_setSize s  

State

  Protection Type  
_lview private variable  
_opt private variable  
_opti private variable  
_optList private variable  
_propertylist private common  
_sb_placed private variable  
_sbList private variable  
_store private variable  
_tag private variable  
_tag private variable  
EventTag public variable Tag of the event which is directly related to the Gate
ObjTag public variable Tag of the Msg or Pin object to which the gate is attached
RuleList public variable Tags of all the Rules which own the connected events (in - Guards, out - Actions)
SegmentList public variable Tags of all the Segments which are attached to the Gate
Type public variable Can be either "in" (handles incoming msgs) or "out" (handles outgoing msgs)