33   createDefaultPolygonStyleSymbol();
    39   createDefaultPolygonStyleSymbol();
    62   mPolygon.insert( indexPoint + 1, newPoint );
    66 void QgsLayoutItemPolygon::createDefaultPolygonStyleSymbol()
    69   properties.insert( QStringLiteral( 
"color" ), QStringLiteral( 
"white" ) );
    70   properties.insert( QStringLiteral( 
"style" ), QStringLiteral( 
"solid" ) );
    71   properties.insert( QStringLiteral( 
"style_border" ), QStringLiteral( 
"solid" ) );
    72   properties.insert( QStringLiteral( 
"color_border" ), QStringLiteral( 
"black" ) );
    73   properties.insert( QStringLiteral( 
"width_border" ), QStringLiteral( 
"0.3" ) );
    74   properties.insert( QStringLiteral( 
"joinstyle" ), QStringLiteral( 
"miter" ) );
    81 void QgsLayoutItemPolygon::refreshSymbol()
    96   if ( !
id().isEmpty() )
    99   return tr( 
"<Polygon>" );
   104   if ( mPolygonStyleSymbol )
   118   QTransform t = QTransform::fromScale( scale, scale );
   120   QList<QPolygonF> rings; 
   121   QPainterPath polygonPath;
   125   mPolygonStyleSymbol->renderPolygon( polygonPath.toFillPolygon( t ), &rings,
   132   mPolygonStyleSymbol.reset( QgsSymbolLayerUtils::loadSymbol<QgsFillSymbol>( elmt, context ) );
   137   mPolygonStyleSymbol.reset( static_cast<QgsFillSymbol *>( symbol->
clone() ) );
   144                          mPolygonStyleSymbol.get(),
   147   elmt.appendChild( pe );
   152   if ( index < 0 || index >= 
mPolygon.size() )
   161     int newSelectNode = index;
 
The class is used as a container of context for various read/write operations on other objects...
 
void updateSceneRect()
Update the current scene rectangle for this item. 
 
A symbol entity for QgsStyle databases. 
 
QgsFillSymbol * symbol()
Returns the fill symbol used to draw the shape. 
 
static QgsLayoutItemPolygon * create(QgsLayout *layout)
Returns a new polygon item for the specified layout. 
 
QgsLayoutItemPolygon(QgsLayout *layout)
Constructor for QgsLayoutItemPolygon for the specified layout. 
 
An abstract layout item that provides generic methods for node based shapes such as polygon or polyli...
 
static QgsFillSymbol * createSimple(const QgsStringMap &properties)
Create a fill symbol with one symbol layer: SimpleFill with specified properties. ...
 
void _writeXmlStyle(QDomDocument &doc, QDomElement &elmt, const QgsReadWriteContext &context) const override
Method called in writeXml. 
 
double mMaxSymbolBleed
Max symbol bleed. 
 
static QIcon getThemeIcon(const QString &name)
Helper to get a theme icon. 
 
static QDomElement saveSymbol(const QString &symbolName, const QgsSymbol *symbol, QDomDocument &doc, const QgsReadWriteContext &context)
Writes a symbol definition to XML. 
 
Layout item for node based polygon shapes. 
 
QPolygonF mPolygon
Shape's nodes. 
 
An interface for classes which can visit style entity (e.g. 
 
int type() const override
 
QgsLayoutRenderContext & renderContext()
Returns a reference to the layout's render context, which stores information relating to the current ...
 
QMap< QString, QString > QgsStringMap
 
virtual bool visit(const QgsStyleEntityVisitorInterface::StyleLeaf &entity)
Called when the visitor will visit a style entity. 
 
void frameChanged()
Emitted if the item's frame style changes. 
 
void _draw(QgsLayoutItemRenderContext &context, const QStyleOptionGraphicsItem *itemStyle=nullptr) override
Method called in paint. 
 
const QgsLayout * layout() const
Returns the layout the object is attached to. 
 
QgsFillSymbol * clone() const override
Returns a deep copy of this symbol. 
 
double dpi() const
Returns the dpi for outputting the layout. 
 
QgsRenderContext & renderContext()
Returns a reference to the context's render context. 
 
static QgsRenderContext createRenderContextForLayout(QgsLayout *layout, QPainter *painter, double dpi=-1)
Creates a render context suitable for the specified layout and painter destination. 
 
QIcon icon() const override
Returns the item's icon. 
 
static double estimateMaxSymbolBleed(QgsSymbol *symbol, const QgsRenderContext &context)
Returns the maximum estimated bleed for the symbol. 
 
QString id() const
Returns the item's ID name. 
 
bool _addNode(int indexPoint, QPointF newPoint, double radius) override
Method called in addNode. 
 
Base class for layouts, which can contain items such as maps, labels, scalebars, etc. 
 
void _readXmlStyle(const QDomElement &elmt, const QgsReadWriteContext &context) override
Method called in readXml. 
 
bool accept(QgsStyleEntityVisitorInterface *visitor) const override
Accepts the specified style entity visitor, causing it to visit all style entities associated with th...
 
bool setSelectedNode(int index)
Selects a node by index. 
 
Contains settings and helpers relating to a render of a QgsLayoutItem. 
 
void setSymbol(QgsFillSymbol *symbol)
Sets the symbol used to draw the shape. 
 
Contains information about the context of a rendering operation. 
 
double convertToPainterUnits(double size, QgsUnitTypes::RenderUnit unit, const QgsMapUnitScale &scale=QgsMapUnitScale()) const
Converts a size from the specified units to painter units (pixels). 
 
bool _removeNode(int nodeIndex) override
Method called in removeNode. 
 
virtual QString uuid() const
Returns the item identification string. 
 
A fill symbol type, for rendering Polygon and MultiPolygon geometries. 
 
QString displayName() const override
Gets item display name. 
 
Contains information relating to the style entity currently being visited.