Version: 9.16.0
gui.GraphViewer.LinkItem Class Reference
Inheritance diagram for gui.GraphViewer.LinkItem:
Collaboration diagram for gui.GraphViewer.LinkItem:

Public Member Functions

def __init__ (self, fromPort, toPort, canvas)
 
def setFromPoint (self, x, y)
 
def setToPoint (self, x, y)
 
def moveBy (self, dx, dy)
 
def setArrow (self)
 
def popup (self, canvasView)
 
def delete (self)
 
def tooltip (self, view, pos)
 

Public Attributes

 arrow
 

Detailed Description

Definition at line 224 of file GraphViewer.py.

Constructor & Destructor Documentation

◆ __init__()

def gui.GraphViewer.LinkItem.__init__ (   self,
  fromPort,
  toPort,
  canvas 
)

Definition at line 225 of file GraphViewer.py.

225 def __init__(self,fromPort, toPort,canvas):
226 QCanvasLine.__init__(self,canvas)
227 self.setPen(QPen(Qt.black))
228 self.setBrush(QBrush(Qt.red))
229 fromPort.addOutLink(self)
230 toPort.addInLink(self)
231 self.setPoints(int(fromPort.x()),int(fromPort.y()), int(toPort.x()), int(toPort.y()))
232 self.setZ(min(fromPort.z(),toPort.z())-1)
233 self.setVisible(True)
234 self.arrow = QCanvasPolygon(self.canvas())
235 self.arrow.setBrush(QBrush(Qt.black))
236 self.setArrow()
237 self.arrow.show()
238

Member Function Documentation

◆ delete()

def gui.GraphViewer.LinkItem.delete (   self)

Definition at line 272 of file GraphViewer.py.

272 def delete(self):
273 print("delete link")
274

Referenced by gui.GraphViewer.LinkItem.popup().

◆ moveBy()

def gui.GraphViewer.LinkItem.moveBy (   self,
  dx,
  dy 
)

Definition at line 247 of file GraphViewer.py.

247 def moveBy(self,dx,dy):
248 pass
249

◆ popup()

def gui.GraphViewer.LinkItem.popup (   self,
  canvasView 
)

Definition at line 264 of file GraphViewer.py.

264 def popup(self,canvasView):
265 menu=QPopupMenu()
266 caption = QLabel( "<font color=darkblue><u><b>Node Menu</b></u></font>",menu )
267 caption.setAlignment( Qt.AlignCenter )
268 menu.insertItem( caption )
269 menu.insertItem("Delete", self.delete)
270 return menu
271

References gui.CItems.LinkItem.delete(), and gui.GraphViewer.LinkItem.delete().

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

◆ setArrow()

def gui.GraphViewer.LinkItem.setArrow (   self)

Definition at line 250 of file GraphViewer.py.

250 def setArrow(self):
251 x1,y1=self.startPoint().x(),self.startPoint().y()
252 x2,y2=self.endPoint().x(),self.endPoint().y()
253 d=math.hypot(x2-x1,y2-y1)
254 sina=(y2-y1)/d
255 cosa=(x2-x1)/d
256 x=(x1+x2)/2.
257 y=(y1+y2)/2.
258 pa=QPointArray(3)
259 pa.setPoint(0, QPoint(x+10*cosa,y+10*sina))
260 pa.setPoint(1, QPoint(x-5*sina,y+5*cosa))
261 pa.setPoint(2, QPoint(x+5*sina,y-5*cosa))
262 self.arrow.setPoints(pa)
263

Referenced by gui.CItems.LineItem.setFromPoint(), gui.GraphViewer.LinkItem.setFromPoint(), gui.CItems.LineItem.setToPoint(), and gui.GraphViewer.LinkItem.setToPoint().

◆ setFromPoint()

def gui.GraphViewer.LinkItem.setFromPoint (   self,
  x,
  y 
)

Definition at line 239 of file GraphViewer.py.

239 def setFromPoint(self,x,y):
240 self.setPoints(x,y,self.endPoint().x(),self.endPoint().y())
241 self.setArrow()
242

References gui.CItems.LineItem.setArrow(), and gui.GraphViewer.LinkItem.setArrow().

◆ setToPoint()

def gui.GraphViewer.LinkItem.setToPoint (   self,
  x,
  y 
)

Definition at line 243 of file GraphViewer.py.

243 def setToPoint(self,x,y):
244 self.setPoints(self.startPoint().x(), self.startPoint().y(),x,y)
245 self.setArrow()
246

References gui.CItems.LineItem.setArrow(), and gui.GraphViewer.LinkItem.setArrow().

◆ tooltip()

def gui.GraphViewer.LinkItem.tooltip (   self,
  view,
  pos 
)

Definition at line 275 of file GraphViewer.py.

275 def tooltip(self,view,pos):
276 r = QRect(pos.x(), pos.y(), pos.x()+10, pos.y()+10)
277 s = QString( "link: %d,%d" % (r.center().x(), r.center().y()) )
278 view.tip( r, s )
279

Member Data Documentation

◆ arrow

gui.GraphViewer.LinkItem.arrow

Definition at line 234 of file GraphViewer.py.

Referenced by gui.CItems.LineItem.clear().


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