Canvas Scene (scene)¶
Canvas Graphics Scene¶
-
class
orangecanvas.canvas.scene.CanvasScene(*args, **kwargs)¶ Bases:
PyQt5.QtWidgets.QGraphicsSceneA Graphics Scene for displaying an
Schemeinstance.-
node_item_added(NodeItem)¶ Signal emitted when a
NodeItemhas been added to the scene.
-
node_item_removed(NodeItem)¶ Signal emitted when a
NodeItemhas been removed from the scene.
-
link_item_added(LinkItem)¶ Signal emitted when a new
LinkItemhas been added to the scene.
-
link_item_removed(LinkItem)¶ Signal emitted when a
LinkItemhas been removed.
-
annotation_added(Annotation)¶ Signal emitted when a
Annotationitem has been added.
-
annotation_removed(Annotation)¶ Signal emitted when a
Annotationitem has been removed.
-
node_item_position_changed(NodeItem, QPointF)¶ Signal emitted when the position of a
NodeItemhas changed.
-
node_item_double_clicked(NodeItem)¶ Signal emitted when an
NodeItemhas been double clicked.
-
node_item_activated(NodeItem)¶ An node item has been activated (clicked)
-
node_item_hovered(NodeItem)¶ An node item has been hovered
-
link_item_hovered(LinkItem)¶ Link item has been hovered
-
clear_scene()¶ Clear (reset) the scene.
-
set_scheme(scheme)¶ Set the scheme to display. Populates the scene with nodes and links already in the scheme. Any further change to the scheme will be reflected in the scene.
Parameters: scheme ( Scheme) –
-
set_registry(registry)¶ Set the widget registry.
-
set_anchor_layout(layout)¶ Set an
AnchorLayout
-
anchor_layout()¶ Return the anchor layout instance.
-
set_channel_names_visible(visible)¶ Set the channel names visibility.
-
channel_names_visible()¶ Return the channel names visibility state.
-
set_node_animation_enabled(enabled)¶ Set node animation enabled state.
-
add_node(node)¶ Add and return a default constructed
NodeItemfor aSchemeNodeinstance node. If the node is already in the scene do nothing and just return its item.
-
new_node_item(widget_desc, category_desc=None)¶ Construct an new
NodeItemfrom a WidgetDescription. Optionally also set CategoryDescription.
-
remove_node(node)¶ Remove the
NodeIteminstance that was previously constructed for aSchemeNodenode using the add_node method.
-
add_link(scheme_link)¶ Create and add a
LinkIteminstance for aSchemeLinkinstance. If the link is already in the scene do nothing and just return itsLinkItem.
-
new_link_item(source_item, source_channel, sink_item, sink_channel)¶ Construct and return a new
LinkItem
-
remove_link(scheme_link)¶ Remove a
LinkIteminstance that was previously constructed for aSchemeLinkinstance link using the add_link method.
-
add_annotation_item(annotation)¶ Add an
Annotationitem to the scene.
-
add_annotation(scheme_annot)¶ Create a new item for
SchemeAnnotationand add it to the scene. If the scheme_annot is already in the scene do nothing and just return its item.
-
remove_annotation_item(annotation)¶ Remove an
Annotationinstance from the scene.
-
remove_annotation(scheme_annotation)¶ Remove an
Annotationinstance that was previously added usingadd_anotation().
-
annotation_items()¶ Return all
Annotationitems in the scene.
-
commit_scheme_node(node)¶ Commit the node into the scheme.
-
commit_scheme_link(link)¶ Commit a scheme link.
-
node_for_item(item)¶ Return the SchemeNode for the item.
-
item_for_node(node)¶ Return the
NodeIteminstance for aSchemeNode.
-
link_for_item(item)¶ Return the SchemeLink for `item (
LinkItem).
-
item_for_link(link)¶ Return the
LinkItemfor aSchemeLink
-
selected_node_items()¶ Return the selected
NodeItem‘s.
-
selected_annotation_items()¶ Return the selected
Annotation‘s
-
node_links(node_item)¶ Return all links from the node_item (
NodeItem).
-
node_output_links(node_item)¶ Return a list of all output links from node_item.
-
node_input_links(node_item)¶ Return a list of all input links for node_item.
-
neighbor_nodes(node_item)¶ Return a list of node_item‘s (class:NodeItem) neighbor nodes.
-
item_at(pos, type_or_tuple=None, buttons=0)¶ Return the item at pos that is an instance of the specified type (type_or_tuple). If buttons (Qt.MouseButtons) is given only return the item if it is the top level item that would accept any of the buttons (QGraphicsItem.acceptedMouseButtons).
-
-
orangecanvas.canvas.scene.grab_svg(scene)¶ Return a SVG rendering of the scene contents.
Parameters: scene ( CanvasScene) –