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 );
152 void setMaxLayerDisplay(
int maxLayerDisplay );
159 void setMaxFeatureDisplay(
int maxFeatureDisplay );
166 void removeCustomActions();
173 QList<QgsMapToolIdentify::IdentifyResult> exec(
const QList<QgsMapToolIdentify::IdentifyResult> &idResults, QPoint pos );
183 void closeEvent( QCloseEvent *e )
override;
186 void handleMenuHover();
187 void deleteRubberBands();
188 void layerDestroyed();
189 void triggerMapLayerAction();
200 void addVectorLayer(
QgsVectorLayer *layer,
const QList<QgsMapToolIdentify::IdentifyResult> &results,
bool singleLayer =
false );
203 QList<QgsMapToolIdentify::IdentifyResult> results( QAction *action,
bool &externalAction );
206 QList<QgsHighlight *> mRubberBands;
207 bool mAllowMultipleReturn;
208 bool mExecWithSingleResult;
209 bool mShowFeatureActions;
210 bool mResultsIfExternalAction;
211 int mMaxLayerDisplay;
212 int mMaxFeatureDisplay;
217 QString mDefaultActionName;
220 CustomActionRegistry mCustomActionRegistry;
223 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