QGIS API Documentation  2.18.21-Las Palmas (9fba24a)
Classes | Public Types | Public Slots | Signals | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
QgsMapToolIdentify Class Reference

Map tool for identifying features in layers. More...

#include <qgsmaptoolidentify.h>

Inheritance diagram for QgsMapToolIdentify:
Inheritance graph
[legend]

Classes

struct  IdentifyResult
 

Public Types

enum  IdentifyMode {
  DefaultQgsSetting = -1, ActiveLayer, TopDownStopAtFirst, TopDownAll,
  LayerSelection
}
 
enum  Type { VectorLayer = 1, RasterLayer = 2, AllLayers = VectorLayer | RasterLayer }
 
- Public Types inherited from QgsMapTool
enum  Flag { Transient = 1 << 1, EditTool = 1 << 2, AllowZoomRect = 1 << 3 }
 Enumeration of flags that adjust the way the map tool operates. More...
 

Public Slots

void formatChanged (QgsRasterLayer *layer)
 

Signals

void changedRasterResults (QList< IdentifyResult > &)
 
void identifyMessage (const QString &)
 
void identifyProgress (int, int)
 
- Signals inherited from QgsMapTool
void activated ()
 signal emitted once the map tool is activated More...
 
void deactivated ()
 signal emitted once the map tool is deactivated More...
 
void messageDiscarded ()
 emit signal to clear previous message More...
 
void messageEmitted (const QString &message, QgsMessageBar::MessageLevel=QgsMessageBar::INFO)
 emit a message More...
 

Public Member Functions

 QgsMapToolIdentify (QgsMapCanvas *canvas)
 constructor More...
 
virtual ~QgsMapToolIdentify ()
 
virtual void activate () override
 called when set as currently active map tool More...
 
virtual void canvasMoveEvent (QgsMapMouseEvent *e) override
 Overridden mouse move event. More...
 
virtual void canvasPressEvent (QgsMapMouseEvent *e) override
 Overridden mouse press event. More...
 
virtual void canvasReleaseEvent (QgsMapMouseEvent *e) override
 Overridden mouse release event. More...
 
virtual void deactivate () override
 called when map tool is being deactivated More...
 
virtual Flags flags () const override
 Returns the flags for the map tool. More...
 
QList< IdentifyResultidentify (int x, int y, const QList< QgsMapLayer *> &layerList=QList< QgsMapLayer *>(), IdentifyMode mode=DefaultQgsSetting)
 Performs the identification. More...
 
QList< IdentifyResultidentify (int x, int y, IdentifyMode mode, const LayerType &layerType=AllLayers)
 Performs the identification. More...
 
QgsIdentifyMenuidentifyMenu ()
 return a pointer to the identify menu which will be used in layer selection mode this menu can also be customized More...
 
- Public Member Functions inherited from QgsMapTool
virtual ~QgsMapTool ()
 virtual destructor More...
 
QActionaction ()
 Return associated action with map tool or NULL if no action is associated. More...
 
QAbstractButtonbutton ()
 Return associated button with map tool or NULL if no button is associated. More...
 
QgsMapCanvascanvas ()
 returns pointer to the tool's map canvas More...
 
virtual void canvasDoubleClickEvent (QgsMapMouseEvent *e)
 Mouse double click event for overriding. Default implementation does nothing. More...
 
virtual Q_DECL_DEPRECATED bool isEditTool () const
 Check whether this MapTool performs an edit operation. More...
 
virtual Q_DECL_DEPRECATED bool isTransient () const
 Check whether this MapTool performs a zoom or pan operation. More...
 
virtual void keyPressEvent (QKeyEvent *e)
 Key event for overriding. Default implementation does nothing. More...
 
virtual void keyReleaseEvent (QKeyEvent *e)
 Key event for overriding. Default implementation does nothing. More...
 
virtual Q_DECL_DEPRECATED void renderComplete ()
 Called when rendering has finished. More...
 
void setAction (QAction *action)
 Use this to associate a QAction to this maptool. More...
 
void setButton (QAbstractButton *button)
 Use this to associate a button to this maptool. More...
 
virtual void setCursor (const QCursor &cursor)
 Set a user defined cursor. More...
 
QString toolName ()
 Emit map tool changed with the old tool. More...
 
virtual void wheelEvent (QWheelEvent *e)
 Mouse wheel event for overriding. Default implementation does nothing. More...
 
- Public Member Functions inherited from QObject
 QObject (QObject *parent)
 
 QObject (QObject *parent, const char *name)
 
virtual ~QObject ()
 
bool blockSignals (bool block)
 
QObjectchild (const char *objName, const char *inheritsClass, bool recursiveSearch) const
 
const QObjectList & children () const
 
const char * className () const
 
bool connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const
 
void deleteLater ()
 
void destroyed (QObject *obj)
 
bool disconnect (const QObject *receiver, const char *method)
 
bool disconnect (const char *signal, const QObject *receiver, const char *method)
 
void dumpObjectInfo ()
 
void dumpObjectTree ()
 
QList< QByteArraydynamicPropertyNames () const
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
findChild (const QString &name) const
 
QList< T > findChildren (const QRegExp &regExp) const
 
QList< T > findChildren (const QString &name) const
 
bool inherits (const char *className) const
 
void insertChild (QObject *object)
 
void installEventFilter (QObject *filterObj)
 
bool isA (const char *className) const
 
bool isWidgetType () const
 
void killTimer (int id)
 
virtual const QMetaObjectmetaObject () const
 
void moveToThread (QThread *targetThread)
 
const char * name () const
 
const char * name (const char *defaultName) const
 
QString objectName () const
 
QObjectparent () const
 
QVariant property (const char *name) const
 
void removeChild (QObject *object)
 
void removeEventFilter (QObject *obj)
 
void setName (const char *name)
 
void setObjectName (const QString &name)
 
void setParent (QObject *parent)
 
bool setProperty (const char *name, const QVariant &value)
 
bool signalsBlocked () const
 
int startTimer (int interval)
 
QThreadthread () const
 

Protected Member Functions

QList< IdentifyResultidentify (int x, int y, IdentifyMode mode, const QList< QgsMapLayer *> &layerList, const LayerType &layerType=AllLayers)
 Performs the identification. More...
 
bool identifyLayer (QList< IdentifyResult > *results, QgsMapLayer *layer, const QgsPoint &point, const QgsRectangle &viewExtent, double mapUnitsPerPixel, const QgsMapToolIdentify::LayerType &layerType=AllLayers)
 Call the right method depending on layer type. More...
 
bool identifyRasterLayer (QList< IdentifyResult > *results, QgsRasterLayer *layer, QgsPoint point, const QgsRectangle &viewExtent, double mapUnitsPerPixel)
 
bool identifyVectorLayer (QList< IdentifyResult > *results, QgsVectorLayer *layer, const QgsPoint &point)
 
- Protected Member Functions inherited from QgsMapTool
 QgsMapTool (QgsMapCanvas *canvas)
 constructor takes map canvas as a parameter More...
 
QPoint toCanvasCoordinates (const QgsPoint &point)
 transformation from map coordinates to screen coordinates More...
 
QgsPoint toLayerCoordinates (QgsMapLayer *layer, QPoint point)
 transformation from screen coordinates to layer's coordinates More...
 
QgsPoint toLayerCoordinates (QgsMapLayer *layer, const QgsPoint &point)
 transformation from map coordinates to layer's coordinates More...
 
QgsRectangle toLayerCoordinates (QgsMapLayer *layer, const QgsRectangle &rect)
 trnasformation of the rect from map coordinates to layer's coordinates More...
 
QgsPoint toMapCoordinates (QPoint point)
 transformation from screen coordinates to map coordinates More...
 
QgsPoint toMapCoordinates (QgsMapLayer *layer, const QgsPoint &point)
 transformation from layer's coordinates to map coordinates (which is different in case reprojection is used) More...
 
QgsPointV2 toMapCoordinates (QgsMapLayer *layer, const QgsPointV2 &point)
 transformation from layer's coordinates to map coordinates (which is different in case reprojection is used) More...
 
- Protected Member Functions inherited from QObject
bool checkConnectArgs (const char *signal, const QObject *object, const char *method)
 
virtual void childEvent (QChildEvent *event)
 
virtual void connectNotify (const char *signal)
 
virtual void customEvent (QEvent *event)
 
virtual void disconnectNotify (const char *signal)
 
int receivers (const char *signal) const
 
QObjectsender () const
 
int senderSignalIndex () const
 
virtual void timerEvent (QTimerEvent *event)
 

Protected Attributes

QgsIdentifyMenumIdentifyMenu
 
- Protected Attributes inherited from QgsMapTool
QActionmAction
 optionally map tool can have pointer to action which will be used to set that action as active More...
 
QAbstractButtonmButton
 optionally map tool can have pointer to a button which will be used to set that action as active More...
 
QgsMapCanvasmCanvas
 pointer to map canvas More...
 
QCursor mCursor
 cursor used in map tool More...
 
QString mToolName
 translated name of the map tool More...
 

Additional Inherited Members

- Static Public Member Functions inherited from QgsMapTool
static double searchRadiusMM ()
 Get search radius in mm. More...
 
static double searchRadiusMU (const QgsRenderContext &context)
 Get search radius in map units for given context. More...
 
static double searchRadiusMU (QgsMapCanvas *canvas)
 Get search radius in map units for given canvas. More...
 
- Static Public Member Functions inherited from QObject
bool connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
bool connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
QString tr (const char *sourceText, const char *disambiguation, int n)
 
QString trUtf8 (const char *sourceText, const char *disambiguation, int n)
 
- Static Protected Member Functions inherited from QObject
QByteArray normalizeSignalSlot (const char *signalSlot)
 
- Properties inherited from QObject
 objectName
 

Detailed Description

Map tool for identifying features in layers.

after selecting a point, performs the identification:

Definition at line 44 of file qgsmaptoolidentify.h.

Member Enumeration Documentation

◆ IdentifyMode

Enumerator
DefaultQgsSetting 
ActiveLayer 
TopDownStopAtFirst 
TopDownAll 
LayerSelection 

Definition at line 51 of file qgsmaptoolidentify.h.

◆ Type

Enumerator
VectorLayer 
RasterLayer 
AllLayers 

Definition at line 60 of file qgsmaptoolidentify.h.

Constructor & Destructor Documentation

◆ QgsMapToolIdentify()

QgsMapToolIdentify::QgsMapToolIdentify ( QgsMapCanvas canvas)

constructor

Definition at line 51 of file qgsmaptoolidentify.cpp.

◆ ~QgsMapToolIdentify()

QgsMapToolIdentify::~QgsMapToolIdentify ( )
virtual

Definition at line 62 of file qgsmaptoolidentify.cpp.

Member Function Documentation

◆ activate()

void QgsMapToolIdentify::activate ( )
overridevirtual

called when set as currently active map tool

Reimplemented from QgsMapTool.

Definition at line 172 of file qgsmaptoolidentify.cpp.

◆ canvasMoveEvent()

void QgsMapToolIdentify::canvasMoveEvent ( QgsMapMouseEvent e)
overridevirtual

Overridden mouse move event.

Reimplemented from QgsMapTool.

Definition at line 67 of file qgsmaptoolidentify.cpp.

◆ canvasPressEvent()

void QgsMapToolIdentify::canvasPressEvent ( QgsMapMouseEvent e)
overridevirtual

Overridden mouse press event.

Reimplemented from QgsMapTool.

Definition at line 72 of file qgsmaptoolidentify.cpp.

◆ canvasReleaseEvent()

void QgsMapToolIdentify::canvasReleaseEvent ( QgsMapMouseEvent e)
overridevirtual

Overridden mouse release event.

Reimplemented from QgsMapTool.

Reimplemented in QgsMapToolIdentifyFeature.

Definition at line 77 of file qgsmaptoolidentify.cpp.

◆ changedRasterResults

void QgsMapToolIdentify::changedRasterResults ( QList< IdentifyResult > &  )
signal

◆ deactivate()

void QgsMapToolIdentify::deactivate ( )
overridevirtual

called when map tool is being deactivated

Reimplemented from QgsMapTool.

Definition at line 177 of file qgsmaptoolidentify.cpp.

◆ flags()

virtual Flags QgsMapToolIdentify::flags ( ) const
inlineoverridevirtual

Returns the flags for the map tool.

Note
added in QGIS 2.16

Reimplemented from QgsMapTool.

Definition at line 95 of file qgsmaptoolidentify.h.

◆ formatChanged

void QgsMapToolIdentify::formatChanged ( QgsRasterLayer layer)
slot

Definition at line 705 of file qgsmaptoolidentify.cpp.

◆ identify() [1/3]

QList< QgsMapToolIdentify::IdentifyResult > QgsMapToolIdentify::identify ( int  x,
int  y,
const QList< QgsMapLayer *> &  layerList = QList<QgsMapLayer*>(),
IdentifyMode  mode = DefaultQgsSetting 
)

Performs the identification.

Parameters
xx coordinates of mouseEvent
yy coordinates of mouseEvent
layerListPerforms the identification within the given list of layers. Default value is an empty list, i.e. uses all the layers.
modeIdentification mode. Can use Qgis default settings or a defined mode. Default mode is DefaultQgsSetting.
Returns
a list of IdentifyResult

Definition at line 82 of file qgsmaptoolidentify.cpp.

◆ identify() [2/3]

QList< QgsMapToolIdentify::IdentifyResult > QgsMapToolIdentify::identify ( int  x,
int  y,
IdentifyMode  mode,
const LayerType &  layerType = AllLayers 
)

Performs the identification.

To avoid beeing forced to specify IdentifyMode with a list of layers this has been made private and two publics methods are offered

Parameters
xx coordinates of mouseEvent
yy coordinates of mouseEvent
modeIdentification mode. Can use Qgis default settings or a defined mode.
layerTypeOnly performs identification in a certain type of layers (raster, vector). Default value is AllLayers.
Returns
a list of IdentifyResult

Definition at line 87 of file qgsmaptoolidentify.cpp.

◆ identify() [3/3]

QList< QgsMapToolIdentify::IdentifyResult > QgsMapToolIdentify::identify ( int  x,
int  y,
IdentifyMode  mode,
const QList< QgsMapLayer *> &  layerList,
const LayerType &  layerType = AllLayers 
)
protected

Performs the identification.

To avoid beeing forced to specify IdentifyMode with a list of layers this has been made private and two publics methods are offered

Parameters
xx coordinates of mouseEvent
yy coordinates of mouseEvent
modeIdentification mode. Can use Qgis default settings or a defined mode.
layerListPerforms the identification within the given list of layers.
layerTypeOnly performs identification in a certain type of layers (raster, vector).
Returns
a list of IdentifyResult

Definition at line 92 of file qgsmaptoolidentify.cpp.

◆ identifyLayer()

bool QgsMapToolIdentify::identifyLayer ( QList< IdentifyResult > *  results,
QgsMapLayer layer,
const QgsPoint point,
const QgsRectangle viewExtent,
double  mapUnitsPerPixel,
const QgsMapToolIdentify::LayerType &  layerType = AllLayers 
)
protected

Call the right method depending on layer type.

Definition at line 182 of file qgsmaptoolidentify.cpp.

◆ identifyMenu()

QgsIdentifyMenu* QgsMapToolIdentify::identifyMenu ( )
inline

return a pointer to the identify menu which will be used in layer selection mode this menu can also be customized

Definition at line 130 of file qgsmaptoolidentify.h.

◆ identifyMessage

void QgsMapToolIdentify::identifyMessage ( const QString )
signal

◆ identifyProgress

void QgsMapToolIdentify::identifyProgress ( int  ,
int   
)
signal

◆ identifyRasterLayer()

bool QgsMapToolIdentify::identifyRasterLayer ( QList< IdentifyResult > *  results,
QgsRasterLayer layer,
QgsPoint  point,
const QgsRectangle viewExtent,
double  mapUnitsPerPixel 
)
protected

Definition at line 451 of file qgsmaptoolidentify.cpp.

◆ identifyVectorLayer()

bool QgsMapToolIdentify::identifyVectorLayer ( QList< IdentifyResult > *  results,
QgsVectorLayer layer,
const QgsPoint point 
)
protected

Definition at line 198 of file qgsmaptoolidentify.cpp.

Member Data Documentation

◆ mIdentifyMenu

QgsIdentifyMenu* QgsMapToolIdentify::mIdentifyMenu
protected

Definition at line 152 of file qgsmaptoolidentify.h.


The documentation for this class was generated from the following files: