QGIS API Documentation 3.39.0-Master (d85f3c2a281)
Loading...
Searching...
No Matches
qgslabelingengineruleregistry.h
Go to the documentation of this file.
1/***************************************************************************
2 qgslabelingengineruleregistry.h
3 ---------------------
4 Date : August 2024
5 Copyright : (C) 2024 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#ifndef QGSLABELINGENGINERULEREGISTRY_H
16#define QGSLABELINGENGINERULEREGISTRY_H
17
18#include "qgis_core.h"
19#include "qgis_sip.h"
20#include "qgis.h"
21
23
39{
40 public:
41
48
53
57 QStringList ruleIds() const;
58
62 QString displayType( const QString &id ) const;
63
70 bool isAvailable( const QString &id ) const;
71
79 QgsAbstractLabelingEngineRule *create( const QString &id ) const SIP_TRANSFERBACK;
80
90 bool addRule( QgsAbstractLabelingEngineRule *rule SIP_TRANSFER );
91
97 void removeRule( const QString &id );
98
99 private:
100
101#ifdef SIP_RUN
103#endif
104
105 std::map< QString, std::unique_ptr< QgsAbstractLabelingEngineRule > > mRules;
106
107};
108
109#endif // QGSLABELINGENGINERULEREGISTRY_H
Abstract base class for labeling engine rules.
A registry for labeling engine rules.
QgsLabelingEngineRuleRegistry(const QgsLabelingEngineRuleRegistry &other)=delete
QgsLabelingEngineRuleRegistry cannot be copied.
QgsLabelingEngineRuleRegistry & operator=(const QgsLabelingEngineRuleRegistry &other)=delete
QgsLabelingEngineRuleRegistry cannot be copied.
#define SIP_TRANSFER
Definition qgis_sip.h:36
#define SIP_TRANSFERBACK
Definition qgis_sip.h:48