16#ifndef QGSIDENTIFYMENU_H
17#define QGSIDENTIFYMENU_H
35 CustomActionRegistry() =
default;
37 void clear() { mMapLayerActionList.clear(); }
68 , mAllResults( !layer )
69 , mIsExternalAction( nullptr != mapLayerAction )
71 , mMapLayerAction( mapLayerAction )
76 , mIsExternalAction( nullptr != mapLayerAction )
79 , mLevel( FeatureLevel )
80 , mMapLayerAction( mapLayerAction )
83 bool mIsValid =
false;
84 bool mAllResults =
false;
85 bool mIsExternalAction =
false;
110 static QList<QgsMapToolIdentify::IdentifyResult> findFeaturesOnCanvas(
QgsMapMouseEvent *event,
QgsMapCanvas *canvas,
const QList<Qgis::GeometryType> &geometryTypes );
154 void setMaxLayerDisplay(
int maxLayerDisplay );
161 void setMaxFeatureDisplay(
int maxFeatureDisplay );
168 void removeCustomActions();
175 QList<QgsMapToolIdentify::IdentifyResult> exec(
const QList<QgsMapToolIdentify::IdentifyResult> &idResults, QPoint pos );
185 void closeEvent( QCloseEvent *e )
override;
188 void handleMenuHover();
189 void deleteRubberBands();
190 void layerDestroyed();
191 void triggerMapLayerAction();
202 void addVectorLayer(
QgsVectorLayer *layer,
const QList<QgsMapToolIdentify::IdentifyResult> &results,
bool singleLayer =
false );
205 QList<QgsMapToolIdentify::IdentifyResult> results( QAction *action,
bool &externalAction );
208 QList<QgsHighlight *> mRubberBands;
209 bool mAllowMultipleReturn;
210 bool mExecWithSingleResult;
211 bool mShowFeatureActions;
212 bool mResultsIfExternalAction;
213 int mMaxLayerDisplay;
214 int mMaxFeatureDisplay;
219 QString mDefaultActionName;
222 CustomActionRegistry mCustomActionRegistry;
225 QMap <QgsMapLayer *, QList<QgsMapToolIdentify::IdentifyResult> > mLayerIdResults;
Single scope for storing variables and functions for use within a QgsExpressionContext.
A class for highlight features on the map.
Map canvas is a class for displaying all GIS data types on a canvas.
This class tracks map layer actions.
An action which can run on map layers The class can be used in two manners:
Base class for all map layer types.
A QgsMapMouseEvent is the result of a user interaction with the mouse on a QgsMapCanvas.
Represents a vector layer which manages a vector based data sets.
Q_DECLARE_METATYPE(QgsDatabaseQueryLogEntry)
qint64 QgsFeatureId
64 bit feature ids negative numbers are used for uncommitted/newly added features