QGIS API Documentation 3.41.0-Master (45a0abf3bec)
|
Base class for map tools that edit vector geometry. More...
#include <qgsmaptooledit.h>
Public Member Functions | |
QgsMapToolEdit (QgsMapCanvas *canvas) | |
QgsGeometryRubberBand * | createGeometryRubberBand (Qgis::GeometryType geometryType=Qgis::GeometryType::Line, bool alternativeBand=false) const |
Creates a geometry rubber band with the color/line width from the QGIS settings. | |
Flags | flags () const override |
Returns the flags for the map tool. | |
Public Member Functions inherited from QgsMapTool | |
~QgsMapTool () override | |
QAction * | action () |
Returns associated action with map tool or nullptr if no action is associated. | |
virtual void | activate () |
called when set as currently active map tool | |
QAbstractButton * | button () |
Returns associated button with map tool or nullptr if no button is associated. | |
QgsMapCanvas * | canvas () const |
returns pointer to the tool's map canvas | |
virtual void | canvasDoubleClickEvent (QgsMapMouseEvent *e) |
Mouse double-click event for overriding. Default implementation does nothing. | |
virtual void | canvasMoveEvent (QgsMapMouseEvent *e) |
Mouse move event for overriding. Default implementation does nothing. | |
virtual void | canvasPressEvent (QgsMapMouseEvent *e) |
Mouse press event for overriding. Default implementation does nothing. | |
virtual void | canvasReleaseEvent (QgsMapMouseEvent *e) |
Mouse release event for overriding. Default implementation does nothing. | |
virtual bool | canvasToolTipEvent (QHelpEvent *e) |
Tooltip event for overriding. | |
virtual void | clean () |
convenient method to clean members | |
virtual void | deactivate () |
called when map tool is being deactivated | |
virtual bool | gestureEvent (QGestureEvent *e) |
gesture event for overriding. Default implementation does nothing. | |
bool | isActive () const |
Returns if the current map tool active on the map canvas. | |
virtual void | keyPressEvent (QKeyEvent *e) |
Key event for overriding. Default implementation does nothing. | |
virtual void | keyReleaseEvent (QKeyEvent *e) |
Key event for overriding. Default implementation does nothing. | |
virtual void | populateContextMenu (QMenu *menu) |
Allows the tool to populate and customize the given menu, prior to showing it in response to a right-mouse button click. | |
virtual bool | populateContextMenuWithEvent (QMenu *menu, QgsMapMouseEvent *event) |
Allows the tool to populate and customize the given menu, prior to showing it in response to a right-mouse button click. | |
virtual void | reactivate () |
Called when the map tool is being activated while it is already active. | |
void | setAction (QAction *action) |
Use this to associate a QAction to this maptool. | |
void | setButton (QAbstractButton *button) |
Use this to associate a button to this maptool. | |
virtual void | setCursor (const QCursor &cursor) |
Sets a user defined cursor. | |
QgsPointXY | toMapCoordinates (QPoint point) |
Transforms a point from screen coordinates to map coordinates. | |
QString | toolName () |
Emit map tool changed with the old tool. | |
virtual void | wheelEvent (QWheelEvent *e) |
Mouse wheel event for overriding. Default implementation does nothing. | |
Static Public Member Functions | |
static double | defaultMValue () |
Returns default M value. | |
static double | defaultZValue () |
Returns default Z value. | |
Static Public Member Functions inherited from QgsMapTool | |
static double | searchRadiusMM () |
Gets search radius in mm. | |
static double | searchRadiusMU (const QgsRenderContext &context) |
Gets search radius in map units for given context. | |
static double | searchRadiusMU (QgsMapCanvas *canvas) |
Gets search radius in map units for given canvas. | |
Protected Types | |
enum | TopologicalResult { Success = 0 , InvalidCanvas = 1 , InvalidLayer = 2 } |
Result of addTopologicalPoints. More... | |
Protected Member Functions | |
TopologicalResult | addTopologicalPoints (const QVector< QgsPoint > &vertices) |
Adds a list of vertices to other features to keep topology up to date, e.g. | |
Q_DECL_DEPRECATED TopologicalResult | addTopologicalPoints (const QVector< QgsPointXY > &vertices) |
Adds a list of vertices to other features to keep topology up to date, e.g. | |
QgsRubberBand * | createRubberBand (Qgis::GeometryType geometryType=Qgis::GeometryType::Line, bool alternativeBand=false) |
Creates a rubber band with the color/line width from the QGIS settings. | |
QgsVectorLayer * | currentVectorLayer () |
Returns the current vector layer of the map canvas or 0. | |
void | notifyNotEditableLayer () |
Display a timed message bar noting the active vector layer is not editable. | |
void | notifyNotVectorLayer () |
Display a timed message bar noting the active layer is not vector. | |
Protected Member Functions inherited from QgsMapTool | |
QgsMapTool (QgsMapCanvas *canvas) | |
Constructor takes a map canvas as a parameter. | |
QgsMapLayer * | layer (const QString &id) |
Returns the map layer with the matching ID, or nullptr if no layers could be found. | |
void | setToolName (const QString &name) |
Sets the tool's name. | |
QPoint | toCanvasCoordinates (const QgsPointXY &point) const |
Transforms a point from map coordinates to screen coordinates. | |
QgsPoint | toLayerCoordinates (const QgsMapLayer *layer, const QgsPoint &point) |
Transforms a point from map coordinates to layer coordinates. | |
QgsPointXY | toLayerCoordinates (const QgsMapLayer *layer, const QgsPointXY &point) |
Transforms a point from map coordinates to layer coordinates. | |
QgsRectangle | toLayerCoordinates (const QgsMapLayer *layer, const QgsRectangle &rect) |
Transforms a rect from map coordinates to layer coordinates. | |
QgsPointXY | toLayerCoordinates (const QgsMapLayer *layer, QPoint point) |
Transforms a point from screen coordinates to layer coordinates. | |
QgsPoint | toMapCoordinates (const QgsMapLayer *layer, const QgsPoint &point) |
Transforms a point from layer coordinates to map coordinates (which is different in case reprojection is used). | |
QgsPointXY | toMapCoordinates (const QgsMapLayer *layer, const QgsPointXY &point) |
Transforms a point from layer coordinates to map coordinates (which is different in case reprojection is used). | |
Static Protected Member Functions | |
static QColor | digitizingFillColor () |
Returns fill color for rubber bands (from global settings) | |
static QColor | digitizingStrokeColor () |
Returns stroke color for rubber bands (from global settings) | |
static int | digitizingStrokeWidth () |
Returns stroke width for rubber bands (from global settings) | |
Additional Inherited Members | |
Public Types inherited from QgsMapTool | |
enum | Flag { Transient = 1 << 1 , EditTool = 1 << 2 , AllowZoomRect = 1 << 3 , ShowContextMenu = 1 << 4 } |
Enumeration of flags that adjust the way the map tool operates. More... | |
typedef QFlags< Flag > | Flags |
Signals inherited from QgsMapTool | |
void | activated () |
signal emitted once the map tool is activated | |
void | deactivated () |
signal emitted once the map tool is deactivated | |
void | messageDiscarded () |
emit signal to clear previous message | |
void | messageEmitted (const QString &message, Qgis::MessageLevel=Qgis::MessageLevel::Info) |
emit a message | |
void | reactivated () |
Protected Attributes inherited from QgsMapTool | |
QAction * | mAction = nullptr |
Optional pointer to an action that will be checked on map tool activation and unchecked on map tool deactivation. | |
QAbstractButton * | mButton = nullptr |
Optional pointer to a button that will be checked on map tool activation and unchecked on map tool deactivation. | |
QPointer< QgsMapCanvas > | mCanvas |
The pointer to the map canvas. | |
QCursor | mCursor |
The cursor used in the map tool. | |
QString | mToolName |
The translated name of the map tool. | |
Base class for map tools that edit vector geometry.
Definition at line 32 of file qgsmaptooledit.h.
|
protected |
Result of addTopologicalPoints.
Enumerator | |
---|---|
Success | AddTopologicalPoints was successful. |
InvalidCanvas | AddTopologicalPoints failed due to an invalid canvas. |
InvalidLayer | AddTopologicalPoints failed due to an invalid canvas. |
Definition at line 96 of file qgsmaptooledit.h.
QgsMapToolEdit::QgsMapToolEdit | ( | QgsMapCanvas * | canvas | ) |
Definition at line 29 of file qgsmaptooledit.cpp.
|
protected |
Adds a list of vertices to other features to keep topology up to date, e.g.
to neighbouring polygons. The vertices list specifies a set of topological points to add, in the layer's coordinate reference system.
Definition at line 91 of file qgsmaptooledit.cpp.
|
protected |
Adds a list of vertices to other features to keep topology up to date, e.g.
to neighbouring polygons. The vertices list specifies a set of topological points to add, in the layer's coordinate reference system.
Definition at line 114 of file qgsmaptooledit.cpp.
QgsGeometryRubberBand * QgsMapToolEdit::createGeometryRubberBand | ( | Qgis::GeometryType | geometryType = Qgis::GeometryType::Line , |
bool | alternativeBand = false |
||
) | const |
Creates a geometry rubber band with the color/line width from the QGIS settings.
The caller takes ownership of the returned object
geometryType | |
alternativeBand | if true , rubber band will be set with more transparency and a dash pattern. default is false . |
Definition at line 140 of file qgsmaptooledit.cpp.
|
protected |
Creates a rubber band with the color/line width from the QGIS settings.
The caller takes ownership of the returned object
geometryType | |
alternativeBand | if true , rubber band will be set with more transparency and a dash pattern. default is false . |
Definition at line 65 of file qgsmaptooledit.cpp.
|
protected |
Returns the current vector layer of the map canvas or 0.
Definition at line 85 of file qgsmaptooledit.cpp.
|
static |
Returns default M value.
Used for setting M coordinate to new vertex.
Definition at line 44 of file qgsmaptooledit.cpp.
|
static |
Returns default Z value.
Used for setting Z coordinate to new vertex.
Definition at line 39 of file qgsmaptooledit.cpp.
|
staticprotected |
Returns fill color for rubber bands (from global settings)
Definition at line 59 of file qgsmaptooledit.cpp.
|
staticprotected |
Returns stroke color for rubber bands (from global settings)
Definition at line 49 of file qgsmaptooledit.cpp.
|
staticprotected |
Returns stroke width for rubber bands (from global settings)
Definition at line 54 of file qgsmaptooledit.cpp.
|
inlineoverridevirtual |
Returns the flags for the map tool.
Reimplemented from QgsMapTool.
Definition at line 39 of file qgsmaptooledit.h.
|
protected |
Display a timed message bar noting the active vector layer is not editable.
Definition at line 162 of file qgsmaptooledit.cpp.
|
protected |
Display a timed message bar noting the active layer is not vector.
Definition at line 157 of file qgsmaptooledit.cpp.