mirror of
https://github.com/qgis/QGIS.git
synced 2025-02-24 00:47:57 -05:00
372 lines
10 KiB
Plaintext
372 lines
10 KiB
Plaintext
/************************************************************************
|
|
* This file has been generated automatically from *
|
|
* *
|
|
* src/core/layout/qgslayoutitemmapitem.h *
|
|
* *
|
|
* Do not edit manually ! Edit header and run scripts/sipify.py again *
|
|
************************************************************************/
|
|
|
|
|
|
|
|
|
|
class QgsLayoutItemMapItem : QgsLayoutObject
|
|
{
|
|
%Docstring(signature="appended")
|
|
An item which is drawn inside a :py:class:`QgsLayoutItemMap`, e.g., a grid or map overview.
|
|
%End
|
|
|
|
%TypeHeaderCode
|
|
#include "qgslayoutitemmapitem.h"
|
|
%End
|
|
public:
|
|
|
|
enum StackingPosition
|
|
{
|
|
StackBelowMap,
|
|
StackBelowMapLayer,
|
|
StackAboveMapLayer,
|
|
StackBelowMapLabels,
|
|
StackAboveMapLabels,
|
|
};
|
|
|
|
QgsLayoutItemMapItem( const QString &name, QgsLayoutItemMap *map );
|
|
%Docstring
|
|
Constructor for QgsLayoutItemMapItem, attached to the specified ``map``.
|
|
|
|
The ``name`` argument gives a friendly display name for the item.
|
|
%End
|
|
|
|
virtual void draw( QPainter *painter ) = 0;
|
|
%Docstring
|
|
Draws the item on to a destination ``painter``.
|
|
%End
|
|
|
|
virtual bool writeXml( QDomElement &element, QDomDocument &document, const QgsReadWriteContext &context ) const;
|
|
%Docstring
|
|
Stores map item state in a DOM element, where ``element`` is the DOM element
|
|
corresponding to a 'LayoutMap' tag.
|
|
|
|
.. seealso:: :py:func:`readXml`
|
|
%End
|
|
|
|
virtual bool readXml( const QDomElement &element, const QDomDocument &doc, const QgsReadWriteContext &context );
|
|
%Docstring
|
|
Sets the map item state from a DOM document, where ``element`` is the DOM
|
|
node corresponding to a 'LayoutMapGrid' tag.
|
|
|
|
.. seealso:: :py:func:`writeXml`
|
|
%End
|
|
|
|
virtual void finalizeRestoreFromXml();
|
|
%Docstring
|
|
Called after all pending items have been restored from XML. Map items can use
|
|
this method to run steps which must take place after all items have been restored to the layout,
|
|
such as connecting to signals emitted by other items, which may not have existed in the layout
|
|
at the time :py:func:`~QgsLayoutItemMapItem.readXml` was called. E.g. an overview can use this to connect to its linked
|
|
map item after restoration from XML.
|
|
|
|
.. seealso:: :py:func:`readXml`
|
|
%End
|
|
|
|
void setMap( QgsLayoutItemMap *map );
|
|
%Docstring
|
|
Sets the corresponding layout ``map`` for the item.
|
|
|
|
.. seealso:: :py:func:`map`
|
|
%End
|
|
|
|
const QgsLayoutItemMap *map() const;
|
|
%Docstring
|
|
Returns the layout item map for the item.
|
|
|
|
.. seealso:: :py:func:`setMap`
|
|
%End
|
|
|
|
QString id() const;
|
|
%Docstring
|
|
Returns the unique id for the map item.
|
|
%End
|
|
|
|
void setName( const QString &name );
|
|
%Docstring
|
|
Sets the friendly display ``name`` for the item.
|
|
|
|
.. seealso:: :py:func:`name`
|
|
%End
|
|
|
|
QString name() const;
|
|
%Docstring
|
|
Returns the friendly display name for the item.
|
|
|
|
.. seealso:: :py:func:`setName`
|
|
%End
|
|
|
|
virtual void setEnabled( bool enabled );
|
|
%Docstring
|
|
Controls whether the item will be drawn. Set ``enabled`` to ``True`` to enable drawing of the item.
|
|
|
|
.. seealso:: :py:func:`enabled`
|
|
%End
|
|
|
|
bool enabled() const;
|
|
%Docstring
|
|
Returns whether the item will be drawn.
|
|
|
|
.. seealso:: :py:func:`setEnabled`
|
|
%End
|
|
|
|
virtual bool usesAdvancedEffects() const;
|
|
%Docstring
|
|
Returns ``True`` if the item is drawn using advanced effects, such as blend modes.
|
|
%End
|
|
|
|
StackingPosition stackingPosition() const;
|
|
%Docstring
|
|
Returns the item's stacking position, which specifies where the in the map's
|
|
stack the item should be rendered.
|
|
|
|
.. seealso:: :py:func:`setStackingPosition`
|
|
|
|
.. seealso:: :py:func:`stackingLayer`
|
|
|
|
.. versionadded:: 3.6
|
|
%End
|
|
|
|
void setStackingPosition( StackingPosition position );
|
|
%Docstring
|
|
Sets the item's stacking ``position``, which specifies where the in the map's
|
|
stack the item should be rendered.
|
|
|
|
.. seealso:: :py:func:`stackingPosition`
|
|
|
|
.. seealso:: :py:func:`setStackingLayer`
|
|
|
|
.. versionadded:: 3.6
|
|
%End
|
|
|
|
QgsMapLayer *stackingLayer() const;
|
|
%Docstring
|
|
Returns the item's stacking layer, which specifies where the in the map's
|
|
stack the item should be rendered.
|
|
|
|
This setting is only used when :py:func:`~QgsLayoutItemMapItem.stackingPosition` is StackBelowMapLayer or
|
|
StackAboveMapLayer.
|
|
|
|
.. seealso:: :py:func:`setStackingLayer`
|
|
|
|
.. seealso:: :py:func:`stackingPosition`
|
|
|
|
.. versionadded:: 3.6
|
|
%End
|
|
|
|
void setStackingLayer( QgsMapLayer *layer );
|
|
%Docstring
|
|
Sets the item's stacking ``layer``, which specifies where the in the map's
|
|
stack the item should be rendered.
|
|
|
|
This setting is only used when :py:func:`~QgsLayoutItemMapItem.stackingPosition` is StackBelowMapLayer or
|
|
StackAboveMapLayer.
|
|
|
|
.. seealso:: :py:func:`stackingLayer`
|
|
|
|
.. seealso:: :py:func:`setStackingPosition`
|
|
|
|
.. versionadded:: 3.6
|
|
%End
|
|
|
|
virtual bool accept( QgsStyleEntityVisitorInterface *visitor ) const;
|
|
%Docstring
|
|
Accepts the specified style entity ``visitor``, causing it to visit all style entities associated
|
|
with the map item.
|
|
|
|
Returns ``True`` if the visitor should continue visiting other objects, or ``False`` if visiting
|
|
should be canceled.
|
|
|
|
.. versionadded:: 3.10
|
|
%End
|
|
|
|
virtual QgsMapLayer *mapLayer();
|
|
%Docstring
|
|
Returns the internal map layer used by this item, if available.
|
|
|
|
.. versionadded:: 3.10.1
|
|
%End
|
|
|
|
virtual QgsExpressionContext createExpressionContext() const;
|
|
|
|
|
|
protected:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
class QgsLayoutItemMapItemStack
|
|
{
|
|
%Docstring(signature="appended")
|
|
A collection of map items which are drawn above the map content in a
|
|
:py:class:`QgsLayoutItemMap`. The item stack controls which items are drawn and the
|
|
order they are drawn in.
|
|
|
|
.. seealso:: :py:class:`QgsLayoutItemMapItem`
|
|
%End
|
|
|
|
%TypeHeaderCode
|
|
#include "qgslayoutitemmapitem.h"
|
|
%End
|
|
public:
|
|
|
|
QgsLayoutItemMapItemStack( QgsLayoutItemMap *map );
|
|
%Docstring
|
|
Constructor for QgsLayoutItemMapItemStack, attached to the
|
|
specified ``map``.
|
|
%End
|
|
|
|
virtual ~QgsLayoutItemMapItemStack();
|
|
|
|
int size() const;
|
|
%Docstring
|
|
Returns the number of items in the stack.
|
|
%End
|
|
|
|
virtual bool writeXml( QDomElement &element, QDomDocument &doc, const QgsReadWriteContext &context ) const;
|
|
%Docstring
|
|
Stores the state of the item stack in a DOM node, where ``element`` is the DOM element corresponding to a 'LayoutMap' tag.
|
|
Returns ``True`` if write was successful.
|
|
|
|
.. seealso:: :py:func:`readXml`
|
|
%End
|
|
|
|
virtual bool readXml( const QDomElement &element, const QDomDocument &doc, const QgsReadWriteContext &context ) = 0;
|
|
%Docstring
|
|
Sets the item stack's state from a DOM document, where ``element`` is a DOM node corresponding to a 'LayoutMap' tag.
|
|
Returns ``True`` if read was successful.
|
|
|
|
.. seealso:: :py:func:`writeXml`
|
|
%End
|
|
|
|
virtual void finalizeRestoreFromXml();
|
|
%Docstring
|
|
Called after all pending items have been restored from XML. Map item stacks can use
|
|
this method to run steps which must take place after all items have been restored to the layout,
|
|
such as connecting to signals emitted by other items, which may not have existed in the layout
|
|
at the time :py:func:`~QgsLayoutItemMapItemStack.readXml` was called. E.g. an overview can use this to connect to its linked
|
|
map item after restoration from XML.
|
|
|
|
.. seealso:: :py:func:`readXml`
|
|
%End
|
|
|
|
void drawItems( QPainter *painter, bool ignoreStacking = true );
|
|
%Docstring
|
|
Draws the items from the stack on a specified ``painter``.
|
|
|
|
If ``ignoreStacking`` is ``True``, then all items will be drawn, regardless
|
|
of their actual stacking position settings. If it is ``False``, only items
|
|
which are set to stack above the map item will be drawn.
|
|
%End
|
|
|
|
bool containsAdvancedEffects() const;
|
|
%Docstring
|
|
Returns whether any items within the stack contain advanced effects,
|
|
such as blending modes.
|
|
%End
|
|
|
|
bool hasEnabledItems() const;
|
|
%Docstring
|
|
Returns ``True`` if the stack has any currently enabled items.
|
|
|
|
.. versionadded:: 3.10
|
|
%End
|
|
|
|
QgsLayoutItemMapItem *item( int index ) const;
|
|
%Docstring
|
|
Returns a reference to the item at the specified ``index`` within the stack.
|
|
%End
|
|
|
|
protected:
|
|
|
|
void addItem( QgsLayoutItemMapItem *item /Transfer/ );
|
|
%Docstring
|
|
Adds a new map item to the stack and takes ownership of the item.
|
|
The item will be added to the end of the stack, and rendered
|
|
above any existing map items already present in the stack.
|
|
|
|
.. note::
|
|
|
|
After adding an item to the stack :py:func:`~QgsLayoutItemMapItemStack.update`
|
|
should be called for the :py:class:`QgsLayoutItemMap` to prevent rendering artifacts.
|
|
|
|
.. seealso:: :py:func:`removeItem`
|
|
%End
|
|
|
|
void removeItem( const QString &itemId );
|
|
%Docstring
|
|
Removes an item which matching ``itemId`` from the stack and deletes the corresponding :py:class:`QgsLayoutItemMapItem`
|
|
|
|
.. note::
|
|
|
|
After removing an item from the stack, :py:func:`~QgsLayoutItemMapItemStack.update`
|
|
should be called for the :py:class:`QgsLayoutItemMap` to prevent rendering artifacts.
|
|
|
|
.. seealso:: :py:func:`addItem`
|
|
%End
|
|
|
|
void moveItemUp( const QString &itemId );
|
|
%Docstring
|
|
Moves an item which matching ``itemId`` up the stack, causing it to be rendered above other items.
|
|
|
|
.. note::
|
|
|
|
After moving an item within the stack, :py:func:`~QgsLayoutItemMapItemStack.update` should be
|
|
called for the :py:class:`QgsLayoutItemMap` to redraw the map with the new item stack order.
|
|
|
|
.. seealso:: :py:func:`moveItemDown`
|
|
%End
|
|
|
|
void moveItemDown( const QString &itemId );
|
|
%Docstring
|
|
Moves an item which matching ``itemId`` up the stack, causing it to be rendered above other items.
|
|
|
|
.. note::
|
|
|
|
After moving an item within the stack, :py:func:`~QgsLayoutItemMapItemStack.update` should be
|
|
called for the :py:class:`QgsLayoutItemMap` to redraw the map with the new item stack order.
|
|
|
|
.. seealso:: :py:func:`moveItemUp`
|
|
%End
|
|
|
|
QgsLayoutItemMapItem *item( const QString &itemId ) const;
|
|
%Docstring
|
|
Returns a reference to an item which matching ``itemId`` within the stack.
|
|
%End
|
|
|
|
|
|
QList< QgsLayoutItemMapItem * > asList() const;
|
|
%Docstring
|
|
Returns a list of :py:class:`QgsLayoutItemMapItems` contained by the stack.
|
|
%End
|
|
|
|
protected:
|
|
|
|
|
|
|
|
void removeItems();
|
|
%Docstring
|
|
Clears the item stack and deletes all :py:class:`QgsLayoutItemMapItems` contained
|
|
by the stack
|
|
%End
|
|
};
|
|
|
|
|
|
/************************************************************************
|
|
* This file has been generated automatically from *
|
|
* *
|
|
* src/core/layout/qgslayoutitemmapitem.h *
|
|
* *
|
|
* Do not edit manually ! Edit header and run scripts/sipify.py again *
|
|
************************************************************************/
|