QGIS API Documentation
4.3.0-Master (16eddb2670e)
Toggle main menu visibility
Loading...
Searching...
No Matches
src
gui
processing
models
qgsmodelviewtoollink.h
Go to the documentation of this file.
1
/***************************************************************************
2
qgsmodelviewtoollink.h
3
----------------------------------
4
Date : January 2024
5
Copyright : (C) 2024 Celia Buira
6
Email : celia dot buira at gmail dot com
7
***************************************************************************
8
* *
9
* This program is free software; you can redistribute it and/or modify *
10
* it under the terms of the GNU General Public License as published by *
11
* the Free Software Foundation; either version 2 of the License, or *
12
* (at your option) any later version. *
13
* *
14
***************************************************************************/
15
16
#ifndef QGSMODELVIEWTOOLLINK_H
17
#define QGSMODELVIEWTOOLLINK_H
18
19
#include <memory>
20
21
#include "qgis_gui.h"
22
#include "
qgis_sip.h
"
23
#include "
qgsmodelviewtool.h
"
24
25
#define SIP_NO_FILE
26
27
class
QgsModelViewBezierRubberBand
;
28
class
QgsModelDesignerSocketGraphicItem;
29
class
QgsProcessingModelComponent;
30
37
class
GUI_EXPORT
QgsModelViewToolLink
:
public
QgsModelViewTool
38
{
39
Q_OBJECT
40
41
public
:
45
QgsModelViewToolLink
( QgsModelGraphicsView *
view
SIP_TRANSFERTHIS
);
46
47
void
modelMoveEvent
(
QgsModelViewMouseEvent
*event )
override
;
48
void
modelReleaseEvent
(
QgsModelViewMouseEvent
*event )
override
;
49
bool
allowItemInteraction
()
override
;
50
void
activate
()
override
;
51
void
deactivate
()
override
;
52
61
void
setFromSocket
( QgsModelDesignerSocketGraphicItem *socket );
62
63
signals:
64
68
void
requestRebuildRequired
();
69
70
private
:
72
void
addParameter(
const
QString ¶meterId,
const
QPointF &pos,
const
QgsModelDesignerSocketGraphicItem *socket );
73
void
addAlgorithm(
const
QString &algorithmId,
const
QPointF &pos,
const
QgsModelDesignerSocketGraphicItem *socket );
74
75
std::unique_ptr<QgsModelViewBezierRubberBand> mBezierRubberBand;
76
QgsModelDesignerSocketGraphicItem *mFromSocket =
nullptr
;
77
QgsModelDesignerSocketGraphicItem *mToSocket =
nullptr
;
78
79
QgsModelDesignerSocketGraphicItem *mLastHoveredSocket =
nullptr
;
80
81
/* Used to return to select tool */
82
QPointer<QgsModelViewTool> mPreviousViewTool;
83
84
// These two are populated when clicking on an input socket that is already connected
85
// We use them to restore the connection when aborting, or to skip the undo step when the same input is selected
86
QString mPreviousInputChildId;
87
int
mPreviousInputSocketNumber = -1;
88
};
89
#endif
// QGSMODELVIEWTOOLLINK_H
QgsModelViewBezierRubberBand
A bezier curve rubber band for use within QgsModelGraphicsView widgets.
Definition
qgsmodelviewrubberband.h:172
QgsModelViewMouseEvent
A mouse event which is the result of a user interaction with a QgsModelGraphicsView.
Definition
qgsmodelviewmouseevent.h:37
QgsModelViewToolLink::requestRebuildRequired
void requestRebuildRequired()
Emitted when a change was made to the model that requires a full rebuild of the scene.
QgsModelViewToolLink::QgsModelViewToolLink
QgsModelViewToolLink(QgsModelGraphicsView *view)
Constructor for QgsModelViewToolLink.
Definition
qgsmodelviewtoollink.cpp:111
QgsModelViewToolLink::setFromSocket
void setFromSocket(QgsModelDesignerSocketGraphicItem *socket)
Set the from socket.
Definition
qgsmodelviewtoollink.cpp:360
QgsModelViewTool::view
QgsModelGraphicsView * view() const
Returns the view associated with the tool.
Definition
qgsmodelviewtool.cpp:39
QgsModelViewTool::modelMoveEvent
virtual void modelMoveEvent(QgsModelViewMouseEvent *event)
Mouse move event for overriding.
Definition
qgsmodelviewtool.cpp:65
QgsModelViewTool::allowItemInteraction
virtual bool allowItemInteraction()
Returns true if the tool allows interaction with component graphic items.
Definition
qgsmodelviewtool.cpp:100
QgsModelViewTool::deactivate
virtual void deactivate()
Called when tool is deactivated.
Definition
qgsmodelviewtool.cpp:130
QgsModelViewTool::QgsModelViewTool
QgsModelViewTool(QgsModelGraphicsView *view, const QString &name)
Constructor for QgsModelViewTool, taking a model view and tool name as parameters.
Definition
qgsmodelviewtool.cpp:24
QgsModelViewTool::activate
virtual void activate()
Called when tool is set as the currently active model tool.
Definition
qgsmodelviewtool.cpp:120
QgsModelViewTool::modelReleaseEvent
virtual void modelReleaseEvent(QgsModelViewMouseEvent *event)
Mouse release event for overriding.
Definition
qgsmodelviewtool.cpp:80
qgis_sip.h
SIP_TRANSFERTHIS
#define SIP_TRANSFERTHIS
Definition
qgis_sip.h:52
qgsmodelviewtool.h
Generated on
for QGIS API Documentation by
1.17.0