QGIS API Documentation
3.28.0-Firenze (ed3ad0430f)
src
gui
qgsabstractmaptoolhandler.h
Go to the documentation of this file.
1
/***************************************************************************
2
qgsabstractmaptoolhandler.h
3
---------------------
4
begin : October 2020
5
copyright : (C) 2020 by Nyall Dawson
6
email : nyall dot dawson at gmail dot com
7
***************************************************************************
8
* *
9
* This program is free software; you can redistribute it and/or modify *
10
* it under the terms of the GNU General Public License as published by *
11
* the Free Software Foundation; either version 2 of the License, or *
12
* (at your option) any later version. *
13
* *
14
***************************************************************************/
15
16
#ifndef QGSABSTRACTMAPTOOLHANDLER_H
17
#define QGSABSTRACTMAPTOOLHANDLER_H
18
19
#include "qgis_gui.h"
20
21
class
QgsMapLayer
;
22
class
QgsMapTool
;
23
class
QAction;
24
61
class
GUI_EXPORT
QgsAbstractMapToolHandler
62
{
63
64
public
:
65
71
struct
Context
72
{
74
bool
dummy =
false
;
75
};
76
91
QgsAbstractMapToolHandler
(
QgsMapTool
*tool, QAction *action );
92
93
virtual
~QgsAbstractMapToolHandler
();
94
98
QgsMapTool
*mapTool();
99
103
QAction *action();
104
110
virtual
bool
isCompatibleWithLayer
(
QgsMapLayer
*layer,
const
QgsAbstractMapToolHandler::Context
&context ) = 0;
111
120
virtual
void
setLayerForTool(
QgsMapLayer
*layer );
121
122
private
:
123
124
QgsMapTool
*mMapTool =
nullptr
;
125
QAction *mAction =
nullptr
;
126
};
127
128
#endif
// QGSABSTRACTMAPTOOLHANDLER_H
QgsAbstractMapToolHandler
An abstract base class for map tool handlers which automatically handle all the necessary logic for t...
Definition:
qgsabstractmaptoolhandler.h:62
QgsAbstractMapToolHandler::~QgsAbstractMapToolHandler
virtual ~QgsAbstractMapToolHandler()
QgsAbstractMapToolHandler::isCompatibleWithLayer
virtual bool isCompatibleWithLayer(QgsMapLayer *layer, const QgsAbstractMapToolHandler::Context &context)=0
Returns true if the associated map tool is compatible with the specified layer.
QgsMapLayer
Base class for all map layer types.
Definition:
qgsmaplayer.h:73
QgsMapTool
Abstract base class for all map tools.
Definition:
qgsmaptool.h:71
QgsAbstractMapToolHandler::Context
Context of a QgsAbstractMapToolHandler call.
Definition:
qgsabstractmaptoolhandler.h:72
Generated on Sat Oct 22 2022 16:10:47 for QGIS API Documentation by
1.9.4