pyworkflow.gui.canvas module¶
This module extends the functionalities of a normal Tkinter Canvas. The new Canvas class allows to easily display Texboxes and Edges that can be interactively dragged and clicked.
-
class
pyworkflow.gui.canvas.
Cable
(canvas, src, srcConnector, dst, dstConnector)[source]¶ Bases:
object
-
class
pyworkflow.gui.canvas.
Canvas
(parent, tooltipCallback=None, tooltipDelay=1500, **kwargs)[source]¶ Bases:
tkinter.Canvas
,pyworkflow.gui.widgets.Scrollable
Canvas to draw some objects. It will really contains a Frame, a Canvas and scrollbars
-
drawGraph
(graph, layout=None, drawNode=None)[source]¶ Draw a graph in the canvas. nodes in the graph should have x and y. If layout is not None, it will be used to reorganize the node positions. Provide drawNode if you want to customize how to create the boxes for each graph node.
-
-
class
pyworkflow.gui.canvas.
ColoredConnector
(canvas, x, y, name, fillColor='blue', outline='black')[source]¶
-
class
pyworkflow.gui.canvas.
Connector
(canvas, x, y, name)[source]¶ Bases:
pyworkflow.gui.canvas.Item
Default connector has no graphical representation (hence, it’ss invisible). Subclasses offer different looks
-
class
pyworkflow.gui.canvas.
Edge
(canvas, source, dest)[source]¶ Bases:
object
Edge between two objects
-
class
pyworkflow.gui.canvas.
Item
(canvas, x, y)[source]¶ Bases:
object
-
BOTTOM
= 2¶
-
LEFT
= 3¶
-
RIGHT
= 1¶
-
TOP
= 0¶
-
addSocket
(name, socketClass, verticalLocation, fillColor='blue', outline='black', position=None)[source]¶
-
socketSeparation
= 12¶
-
verticalFlow
= True¶
-
-
class
pyworkflow.gui.canvas.
Oval
(canvas, x, y, radio, color='green', anchor=None)[source]¶ Bases:
object
Oval or circle
-
class
pyworkflow.gui.canvas.
Rectangle
(canvas, x, y, width, height=None, color='green', anchor=None)[source]¶ Bases:
object
-
class
pyworkflow.gui.canvas.
RoundConnector
(canvas, x, y, name, fillColor='blue', outline='black')[source]¶ Bases:
pyworkflow.gui.canvas.ColoredConnector
-
radius
= 3¶
-
-
class
pyworkflow.gui.canvas.
SquareConnector
(canvas, x, y, name, fillColor='blue', outline='black')[source]¶ Bases:
pyworkflow.gui.canvas.ColoredConnector
-
halfside
= 3¶
-
-
class
pyworkflow.gui.canvas.
TextItem
(canvas, text, x, y, bgColor, textColor='black')[source]¶ Bases:
pyworkflow.gui.canvas.Item
This class will serve to paint and store rectangle boxes with some text. x and y are the coordinates of the center of this item