|
QGIS API Documentation 4.1.0-Master (4aad578bf8d)
|
Map tool base class to implement extra item map tool. More...
#include <qgsmaptoolextraitem.h>

Public Types | |
| enum | State { SelectFeature , FeatureSelected } |
| Map tool state. More... | |
| 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 |
| enum class | PropertyStatus { Valid , DoesNotExist , CurrentExpressionInvalid } |
| Property status used in method dealing with property. More... | |
Public Member Functions | |
| QgsMapToolExtraItemBase (QgsMapCanvas *canvas, QgsVectorLayer *layer, QgsTemplatedLineSymbolLayerBase *symbolLayer, QgsPropertyOverrideButton *propertyButton) | |
| Constructor. | |
| 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 | |
| int | dataDefinedColumnIndex (int propertyKey, const QgsPropertyCollection &properties, const QgsVectorLayer *vlayer) const |
| Returns data defined property column index for the propertyKey from properties associated to the layer. | |
| QString | dataDefinedColumnName (int propertyKey, const QgsPropertyCollection &properties, const QgsVectorLayer *layer, PropertyStatus &status) const |
| Returns data defined property column name for the propertyKey from properties associated to the layer status is updated with current property status. | |
| virtual void | deactivate () |
| called when map tool is being deactivated | |
| virtual Flags | flags () const |
| Returns the flags for the map tool. | |
| 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. | |
| virtual bool | shortcutEvent (QKeyEvent *e) |
| Shortcut events coming from the application for overriding. | |
| 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. | |
Protected Member Functions | |
| void | loadFeatureExtraItems () |
| Load current feature existing extra items. | |
| void | selectFeature (QgsMapMouseEvent *event) |
| Process event in order to select the current feature at the event mouse position. | |
| void | updateAttribute () |
| Update feature attribute extra item field regarding with the currently digitized extra items. | |
| 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). | |
Protected Attributes | |
| std::vector< QObjectUniquePtr< QgsExtraItemRubberBand > > | mExtraItems |
| int | mExtraItemsFieldIndex = -1 |
| QgsFeatureId | mFeatureId = FID_NULL |
| QPointer< QgsVectorLayer > | mLayer |
| QgsPropertyOverrideButton * | mPropertyButton = nullptr |
| State | mState = SelectFeature |
| QgsTemplatedLineSymbolLayerBase * | mSymbolLayer = nullptr |
| 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. | |
Friends | |
| class | TestQgsMapToolExtraItem |
Additional Inherited Members | |
| Signals inherited from QgsMapTool | |
| void | activated () |
| Emitted when the map tool is activated. | |
| void | deactivated () |
| Emitted when the map tool is deactivated. | |
| void | messageDiscarded () |
| Emitted when the previous message from the tool should be cleared from the application message bar. | |
| void | messageEmitted (const QString &message, Qgis::MessageLevel level=Qgis::MessageLevel::Info) |
| Emitted when a message should be shown to the user in the application message bar. | |
| void | reactivated () |
| Emitted when the map tool is activated, while it is already active. | |
| 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. | |
| Static Public Attributes inherited from QgsMapTool | |
| static const QgsSettingsEntryDouble * | settingSearchRadiusMM = new QgsSettingsEntryDouble( u"search-radius-mm"_s, QgsSettingsTree::sTreeMap, Qgis::DEFAULT_SEARCH_RADIUS_MM, u"Search/identify radius in millimeters"_s ) |
| Settings entry for the search/identify radius in mm. | |
Map tool base class to implement extra item map tool.
Essentially provides helper methods to deal with extra items
Definition at line 42 of file qgsmaptoolextraitem.h.
Map tool state.
| Enumerator | |
|---|---|
| SelectFeature | User needs to select a feature. |
| FeatureSelected | User has selected a feature. |
Definition at line 59 of file qgsmaptoolextraitem.h.
| QgsMapToolExtraItemBase::QgsMapToolExtraItemBase | ( | QgsMapCanvas * | canvas, |
| QgsVectorLayer * | layer, | ||
| QgsTemplatedLineSymbolLayerBase * | symbolLayer, | ||
| QgsPropertyOverrideButton * | propertyButton ) |
Constructor.
| canvas | map canvas |
| layer | vector layer |
| symbolLayer | symbol layer (either a marker line or hashed line symbol layer) |
| propertyButton | data defined property button associated with this map tool |
Definition at line 91 of file qgsmaptoolextraitem.cpp.
|
protected |
Load current feature existing extra items.
Definition at line 106 of file qgsmaptoolextraitem.cpp.
|
protected |
Process event in order to select the current feature at the event mouse position.
Definition at line 160 of file qgsmaptoolextraitem.cpp.
|
protected |
Update feature attribute extra item field regarding with the currently digitized extra items.
Definition at line 134 of file qgsmaptoolextraitem.cpp.
|
friend |
Definition at line 89 of file qgsmaptoolextraitem.h.
|
protected |
Definition at line 86 of file qgsmaptoolextraitem.h.
|
protected |
Definition at line 83 of file qgsmaptoolextraitem.h.
|
protected |
Definition at line 84 of file qgsmaptoolextraitem.h.
|
protected |
Definition at line 81 of file qgsmaptoolextraitem.h.
|
protected |
Definition at line 87 of file qgsmaptoolextraitem.h.
|
protected |
Definition at line 85 of file qgsmaptoolextraitem.h.
|
protected |
Definition at line 82 of file qgsmaptoolextraitem.h.