Version: 9.16.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
 
dictionary 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()

◆ 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

dictionary gui.CItems.Cell.events
static
Initial value:
= {
"status":QEvent.User+1,
}

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: