QGIS API Documentation
3.99.0-Master (26c88405ac0)
Loading...
Searching...
No Matches
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
63
class
GUI_EXPORT
QgsAbstractMapToolHandler
64
{
65
public
:
66
72
struct
Context
73
{
75
bool
dummy
=
false
;
76
};
77
92
QgsAbstractMapToolHandler
(
QgsMapTool
*tool, QAction *
action
);
93
94
virtual
~QgsAbstractMapToolHandler
();
95
99
QgsMapTool
*
mapTool
();
100
104
QAction *
action
();
105
111
virtual
bool
isCompatibleWithLayer
(
QgsMapLayer
*layer,
const
QgsAbstractMapToolHandler::Context
&context ) = 0;
112
121
virtual
void
setLayerForTool
(
QgsMapLayer
*layer );
122
123
private
:
124
QgsMapTool
*mMapTool =
nullptr
;
125
QAction *mAction =
nullptr
;
126
};
127
128
#endif
// QGSABSTRACTMAPTOOLHANDLER_H
QgsAbstractMapToolHandler::~QgsAbstractMapToolHandler
virtual ~QgsAbstractMapToolHandler()
QgsAbstractMapToolHandler::setLayerForTool
virtual void setLayerForTool(QgsMapLayer *layer)
Sets the layer to use for the tool.
Definition
qgsabstractmaptoolhandler.cpp:37
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.
QgsAbstractMapToolHandler::mapTool
QgsMapTool * mapTool()
Returns the tool associated with this handler.
Definition
qgsabstractmaptoolhandler.cpp:27
QgsAbstractMapToolHandler::QgsAbstractMapToolHandler
QgsAbstractMapToolHandler(QgsMapTool *tool, QAction *action)
Constructor for a map tool handler for the specified tool.
Definition
qgsabstractmaptoolhandler.cpp:18
QgsAbstractMapToolHandler::action
QAction * action()
Returns the action associated with toggling the tool.
Definition
qgsabstractmaptoolhandler.cpp:32
QgsMapLayer
Base class for all map layer types.
Definition
qgsmaplayer.h:80
QgsMapTool
Abstract base class for all map tools.
Definition
qgsmaptool.h:72
QgsAbstractMapToolHandler::Context
Context of a QgsAbstractMapToolHandler call.
Definition
qgsabstractmaptoolhandler.h:73
QgsAbstractMapToolHandler::Context::dummy
bool dummy
Placeholder only.
Definition
qgsabstractmaptoolhandler.h:75
Generated on
for QGIS API Documentation by
1.15.0