widgets.custom_qgraphicsviews¶
Classes for custom QGraphicsViews for the Design and Graph views.
| authors: |
|
|---|---|
| date: | 6.2.2018 |
Module Contents¶
-
class
widgets.custom_qgraphicsviews.CustomQGraphicsView(parent)[source]¶ Bases:
PySide2.QtWidgets.QGraphicsViewSuper class for Design and Graph QGraphicsViews.
-
parent¶ Parent widget
Type: QWidget
-
keyPressEvent(self, event)[source]¶ Overridden method. Enable zooming with plus and minus keys (comma resets zoom). Send event downstream to QGraphicsItems if pressed key is not handled here.
Parameters: event (QKeyEvent) – Pressed key
-
enterEvent(self, event)[source]¶ Overridden method. Do not show the stupid open hand mouse cursor.
Parameters: event (QEvent) – event
-
mousePressEvent(self, event)[source]¶ Set rubber band selection mode if Control pressed. Enable resetting the zoom factor from the middle mouse button.
-
resizeEvent(self, event)[source]¶ Updates zoom if needed when the view is resized.
Parameters: event (QResizeEvent) – a resize event
-
setScene(self, scene)[source]¶ Sets a new scene to this view.
Parameters: scene (QGraphicsScene) – a new scene
-
-
class
widgets.custom_qgraphicsviews.DesignQGraphicsView(parent)[source]¶ Bases:
widgets.custom_qgraphicsviews.CustomQGraphicsViewQGraphicsView for the Design View.
-
parent¶ Graph View Form’s (QMainWindow) central widget (self.centralwidget)
Type: QWidget
-
mousePressEvent(self, event)[source]¶ Manage drawing of links. Handle the case where a link is being drawn and the user doesn’t hit a connector button.
Parameters: event (QGraphicsSceneMouseEvent) – Mouse event
-
mouseMoveEvent(self, event)[source]¶ Update line end position.
Parameters: event (QGraphicsSceneMouseEvent) – Mouse event
-
init_scene(self, empty=False)[source]¶ Resize scene and add a link drawer on scene. The scene must be cleared before calling this.
Parameters: empty (boolean) – True when creating a new project
-
add_link(self, src_connector, dst_connector, index)[source]¶ Draws link between source and sink items on scene and appends connection model. Refreshes View references if needed.
Parameters: - src_connector (ConnectorButton) – Source connector button
- dst_connector (ConnectorButton) – Destination connector button
- index (QModelIndex) – Index in connection model
-
remove_link(self, index)[source]¶ Removes link between source and sink items on scene and updates connection model. Refreshes View references if needed.
-
take_link(self, index)[source]¶ Remove link, then start drawing another one from the same source connector.
-
restore_links(self)[source]¶ Iterates connection model and draws links for each valid entry. Should be called only when a project is loaded from a save file.
-
connection_rows_removed(self, index, first, last)[source]¶ Update view when connection model changes.
-
connection_columns_removed(self, index, first, last)[source]¶ Update view when connection model changes.
-
draw_links(self, connector)[source]¶ Draw links when slot button is clicked.
Parameters: connector (ConnectorButton) – Connector button that triggered the drawing
-
-
class
widgets.custom_qgraphicsviews.GraphQGraphicsView(parent)[source]¶ Bases:
widgets.custom_qgraphicsviews.CustomQGraphicsViewQGraphicsView for the Graph View.
-
dragLeaveEvent(self, event)[source]¶ Accept event. Then call the super class method only if drag source is not DragListView.
-
dragEnterEvent(self, event)[source]¶ Accept event. Then call the super class method only if drag source is not DragListView.
-
dragMoveEvent(self, event)[source]¶ Accept event. Then call the super class method only if drag source is not DragListView.
-