QGIS API Documentation  3.17.0-Master (a84647cf30)
qgslegendpatchshape.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgslegendpatchshape.h
3  -------------------
4 begin : April 2020
5 copyright : (C) 2020 by Nyall Dawson
6 email : nyall dot dawson at gmail dot com
7 ***************************************************************************/
8 
9 /***************************************************************************
10  * *
11  * This program is free software; you can redistribute it and/or modify *
12  * it under the terms of the GNU General Public License as published by *
13  * the Free Software Foundation; either version 2 of the License, or *
14  * (at your option) any later version. *
15  * *
16  ***************************************************************************/
17 #ifndef QGSLEGENDPATCHSHAPE_H
18 #define QGSLEGENDPATCHSHAPE_H
19 
20 #include "qgis_core.h"
21 #include "qgis_sip.h"
22 #include "qgssymbol.h"
23 
30 class CORE_EXPORT QgsLegendPatchShape
31 {
32  public:
33 
40  QgsLegendPatchShape() = default;
41 
54  const QgsGeometry &geometry,
55  bool preserveAspectRatio = true );
56 
61  bool isNull() const;
62 
68  QgsSymbol::SymbolType symbolType() const;
69 
75  void setSymbolType( QgsSymbol::SymbolType type );
76 
82  QgsGeometry geometry() const;
83 
102  void setGeometry( const QgsGeometry &geometry );
103 
110  bool preserveAspectRatio() const;
111 
120  void setPreserveAspectRatio( bool preserve );
121 
127  QList< QList< QPolygonF > > toQPolygonF( QgsSymbol::SymbolType type, QSizeF size ) const;
128 
133  void readXml( const QDomElement &element, const QgsReadWriteContext &context );
134 
139  void writeXml( QDomElement &element, QDomDocument &doc, const QgsReadWriteContext &context ) const;
140 
141  private:
143  QgsGeometry mGeometry;
144  bool mPreserveAspectRatio = true;
145 
146 };
147 
148 #endif // QGSLEGENDPATCHSHAPE_H
The class is used as a container of context for various read/write operations on other objects...
A geometry is the spatial representation of a feature.
Definition: qgsgeometry.h:123
Represents a patch shape for use in map legends.
SymbolType
Type of the symbol.
Definition: qgssymbol.h:86
Fill symbol.
Definition: qgssymbol.h:90