QGIS API Documentation 3.43.0-Master (52e71951ee5)
|
Model designer view tool for linking socket together This tool is not exposed in the UI and is only set when the select tool click on a socket. More...
#include <qgsmodelviewtoollink.h>
Signals | |
void | requestRebuildRequired () |
Emitted when a change was made to the model that requires a full rebuild of the scene. | |
![]() | |
void | activated () |
Emitted when the tool is activated. | |
void | deactivated () |
Emitted when the tool is deactivated. | |
void | itemFocused (QgsModelComponentGraphicItem *item) |
Emitted when an item is "focused" by the tool, i.e. | |
Public Member Functions | |
QgsModelViewToolLink (QgsModelGraphicsView *view) | |
Constructor for QgsModelViewToolLink. | |
void | activate () override |
Called when tool is set as the currently active model tool. | |
bool | allowItemInteraction () override |
Returns true if the tool allows interaction with component graphic items. | |
void | deactivate () override |
Called when tool is deactivated. | |
void | modelMoveEvent (QgsModelViewMouseEvent *event) override |
Mouse move event for overriding. | |
void | modelReleaseEvent (QgsModelViewMouseEvent *event) override |
Mouse release event for overriding. | |
void | setFromSocket (QgsModelDesignerSocketGraphicItem *socket) |
Set the from socket. | |
![]() | |
~QgsModelViewTool () override | |
QAction * | action () |
Returns the action associated with the tool or nullptr if no action is associated. | |
QgsModelViewTool::Flags | flags () const |
Returns the current combination of flags set for the tool. | |
virtual void | keyPressEvent (QKeyEvent *event) |
Key press event for overriding. | |
virtual void | keyReleaseEvent (QKeyEvent *event) |
Key release event for overriding. | |
virtual void | modelDoubleClickEvent (QgsModelViewMouseEvent *event) |
Mouse double-click event for overriding. | |
virtual void | modelPressEvent (QgsModelViewMouseEvent *event) |
Mouse press event for overriding. | |
QgsModelGraphicsScene * | scene () const |
Returns the scene associated with the tool. | |
void | setAction (QAction *action) |
Associates an action with this tool. | |
void | setCursor (const QCursor &cursor) |
Sets a user defined cursor for use when the tool is active. | |
QString | toolName () const |
Returns a user-visible, translated name for the tool. | |
QgsModelGraphicsView * | view () const |
Returns the view associated with the tool. | |
virtual void | wheelEvent (QWheelEvent *event) |
Mouse wheel event for overriding. | |
Additional Inherited Members | |
![]() | |
enum | Flag { FlagSnaps = 1 << 1 } |
Flags for controlling how a tool behaves. More... | |
typedef QFlags< Flag > | Flags |
![]() | |
QgsModelViewTool (QgsModelGraphicsView *view, const QString &name) | |
Constructor for QgsModelViewTool, taking a model view and tool name as parameters. | |
bool | isClickAndDrag (QPoint startViewPoint, QPoint endViewPoint) const |
Returns true if a mouse press/release operation which started at startViewPoint and ended at endViewPoint should be considered a "click and drag". | |
void | setFlags (QgsModelViewTool::Flags flags) |
Sets the combination of flags that will be used for the tool. | |
Model designer view tool for linking socket together This tool is not exposed in the UI and is only set when the select tool click on a socket.
Definition at line 34 of file qgsmodelviewtoollink.h.
QgsModelViewToolLink::QgsModelViewToolLink | ( | QgsModelGraphicsView * | view | ) |
Constructor for QgsModelViewToolLink.
Definition at line 28 of file qgsmodelviewtoollink.cpp.
|
overridevirtual |
Called when tool is set as the currently active model tool.
Overridden implementations must take care to call the base class implementation.
Reimplemented from QgsModelViewTool.
Definition at line 178 of file qgsmodelviewtoollink.cpp.
|
overridevirtual |
Returns true
if the tool allows interaction with component graphic items.
Reimplemented from QgsModelViewTool.
Definition at line 173 of file qgsmodelviewtoollink.cpp.
|
overridevirtual |
Called when tool is deactivated.
Overridden implementations must take care to call the base class implementation.
Reimplemented from QgsModelViewTool.
Definition at line 193 of file qgsmodelviewtoollink.cpp.
|
overridevirtual |
Mouse move event for overriding.
Default implementation does nothing.
Reimplemented from QgsModelViewTool.
Definition at line 38 of file qgsmodelviewtoollink.cpp.
|
overridevirtual |
Mouse release event for overriding.
Default implementation does nothing. Note that subclasses must ensure that they correctly handle cases when a modelPressEvent is called without a corresponding modelReleaseEvent (e.g. due to tool being changed mid way through a press-release operation).
Reorder input and output socket whether the user dragged :
In the code, we always come back to the first case
Reimplemented from QgsModelViewTool.
Definition at line 72 of file qgsmodelviewtoollink.cpp.
|
signal |
Emitted when a change was made to the model that requires a full rebuild of the scene.
void QgsModelViewToolLink::setFromSocket | ( | QgsModelDesignerSocketGraphicItem * | socket | ) |
Set the from socket.
In the case the user started dragging from an already linked input socket we need to figure out, which is the output socket used as the source at the other side of the link.
This is used when the user disconnects a a link or relinks to another input socket
Definition at line 199 of file qgsmodelviewtoollink.cpp.