Version: 9.15.0
gui.CItems.Cell Class Reference
Inheritance diagram for gui.CItems.Cell:
Collaboration diagram for gui.CItems.Cell:

Public Member Functions

def __init__ (self, node, canvas)
 
def pynotify (self, object, event)
 
def customEvent (self, event)
 
def moveBy (self, dx, dy)
 
def show (self)
 
def getObj (self)
 
def popup (self, canvasView)
 
def tooltip (self, view, pos)
 
def browse (self)
 
def selected (self)
 

Public Attributes

 inports
 
 outports
 
 node
 
 item
 
 label
 
 ingate
 
 outgate
 

Static Public Attributes

dictionary colors
 
 events
 

Detailed Description

Definition at line 485 of file CItems.py.

Constructor & Destructor Documentation

◆ __init__()

def gui.CItems.Cell.__init__ (   self,
  node,
  canvas 
)

Definition at line 498 of file CItems.py.

498  def __init__(self,node,canvas):
499  QCanvasRectangle.__init__(self,canvas)
500  pypilot.PyObserver.__init__(self)
501  self.inports=[]
502  self.outports=[]
503  self.setSize(50,50)
504  #node is an instance of YACS::ENGINE::Node
505  self.node=node
506  self.item=Item.adapt(self.node)
507  dispatcher.addObserver(self,node,"status")
508  self.label=TextItem(self,canvas)
509  self.label.setText(self.node.getName())
510  self.label.setFont(QFont("Helvetica",8))
511  rect=self.label.boundingRect()
512  self.label.setZ(self.z()+1)
513  self.label.myMove(self.x()+self.width()/2-rect.width()/2,self.y()+self.height()/2-rect.height()/2)
514  color= self.colors.get(node.getColorState(node.getEffectiveState()),Qt.white)
515  self.setBrush(QBrush(color))
516 
517  dy=6
518  y=0
519  for inport in self.node.getSetOfInputPort():
520  p=InPortItem(self,inport,canvas)
521  y=y+dy
522  p.myMove(0,y)
523  self.inports.append(p)
524 
525  for instream in self.node.getSetOfInputDataStreamPort():
526  p=InStreamItem(self,instream,canvas)
527  y=y+dy
528  p.myMove(0,y)
529  self.inports.append(p)
530 
531  ymax=y
532 
533  dy=6
534  y=0
535  for outport in self.node.getSetOfOutputPort():
536  p=OutPortItem(self,outport,canvas)
537  y=y+dy
538  p.myMove(50,y)
539  self.outports.append(p)
540 
541  for outstream in self.node.getSetOfOutputDataStreamPort():
542  p=OutStreamItem(self,outstream,canvas)
543  y=y+dy
544  p.myMove(50,y)
545  self.outports.append(p)
546 
547  ymax=max(y,ymax)
548 
549  #Control ports
550  y=ymax+dy
551  if y < 44:y=44
552  p=InControlItem(self,self.node.getInGate(),canvas)
553  p.myMove(0,y)
554  self.inports.append(p)
555  self.ingate=p
556  p=OutControlItem(self,self.node.getOutGate(),canvas)
557  p.myMove(44,y)
558  self.outports.append(p)
559  self.outgate=p
560  y=y+dy
561  self.setSize(50,y)
562 
563 

Member Function Documentation

◆ browse()

def gui.CItems.Cell.browse (   self)

Definition at line 626 of file CItems.py.

626  def browse(self):
627  print("browse")
628 

Referenced by gui.CItems.Cell.popup(), and gui.GraphViewer.Cell.popup().

◆ customEvent()

def gui.CItems.Cell.customEvent (   self,
  event 
)

◆ getObj()

def gui.CItems.Cell.getObj (   self)

Definition at line 609 of file CItems.py.

609  def getObj(self):
610  return self
611 

◆ moveBy()

◆ popup()

def gui.CItems.Cell.popup (   self,
  canvasView 
)

Definition at line 612 of file CItems.py.

612  def popup(self,canvasView):
613  menu=QPopupMenu()
614  caption = QLabel( "<font color=darkblue><u><b>Node Menu</b></u></font>",menu )
615  caption.setAlignment( Qt.AlignCenter )
616  menu.insertItem( caption )
617  menu.insertItem("Browse", self.browse)
618  return menu
619 

References gui.CItems.Cell.browse(), and gui.GraphViewer.Cell.browse().

Referenced by gui.GraphViewer.GraphViewer.contentsMousePressEvent().

◆ pynotify()

def gui.CItems.Cell.pynotify (   self,
  object,
  event 
)

Definition at line 568 of file CItems.py.

568  def pynotify(self,object,event):
569  #print "pynotify",event,object
570  try:
571  evType=self.events[event]
572  ev=QCustomEvent(evType)
573  ev.setData(self)
574  ev.yacsEvent=event
575  QApplication.postEvent(self.canvas(), ev)
576  #request immediate processing (deadlock risk ???)
577  #QApplication.sendPostedEvents(self.canvas(), evType)
578  #print "pynotify end"
579  except:
580  #traceback.print_exc()
581  raise
582 

References gui.CItems.LinkItem.canvas, gui.graph.Graph.canvas, and gui.CItems.Cell.events.

◆ selected()

◆ show()

◆ tooltip()

Member Data Documentation

◆ colors

dictionary gui.CItems.Cell.colors
static
Initial value:
= {
"pink":Qt.cyan,
"green":Qt.green,
"magenta":Qt.magenta,
"purple":Qt.darkMagenta,
"blue":Qt.blue,
"red":Qt.red,
"orange":Qt.yellow,
"grey":Qt.gray,
"white":Qt.white,
}

Definition at line 486 of file CItems.py.

Referenced by gui.CItems.Cell.customEvent().

◆ events

gui.CItems.Cell.events
static

Definition at line 564 of file CItems.py.

Referenced by gui.CItems.Cell.pynotify().

◆ ingate

gui.CItems.Cell.ingate

Definition at line 555 of file CItems.py.

◆ inports

gui.CItems.Cell.inports

◆ item

◆ label

gui.CItems.Cell.label

Definition at line 508 of file CItems.py.

Referenced by gui.CItems.Cell.moveBy(), and gui.CItems.Cell.show().

◆ node

◆ outgate

gui.CItems.Cell.outgate

Definition at line 559 of file CItems.py.

◆ outports

gui.CItems.Cell.outports

The documentation for this class was generated from the following file: