QGIS API Documentation 3.41.0-Master (3440c17df1d)
|
A layer tree model subclass for elevation profiles. More...
#include <qgselevationprofilelayertreeview.h>
Signals | |
void | addLayers (const QList< QgsMapLayer * > &layers) |
Emitted when layers should be added to the profile, e.g. | |
Signals inherited from QgsLayerTreeModel | |
void | hitTestCompleted () |
Emitted when a hit test for visible legend items completes. | |
void | hitTestStarted () |
Emitted when a hit test for visible legend items starts. | |
void | messageEmitted (const QString &message, Qgis::MessageLevel level=Qgis::MessageLevel::Info, int duration=5) |
Emits a message than can be displayed to the user in a GUI class. | |
Public Member Functions | |
QgsElevationProfileLayerTreeModel (QgsLayerTree *rootNode, QObject *parent=nullptr) | |
Construct a new tree model with given layer tree (root node must not be nullptr ). | |
bool | canDropMimeData (const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) const override |
QVariant | data (const QModelIndex &index, int role=Qt::DisplayRole) const override |
bool | dropMimeData (const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) override |
QMimeData * | mimeData (const QModelIndexList &indexes) const override |
bool | setData (const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) override |
Public Member Functions inherited from QgsLayerTreeModel | |
QgsLayerTreeModel (QgsLayerTree *rootNode, QObject *parent=nullptr) | |
Construct a new tree model with given layer tree (root node must not be nullptr ). | |
~QgsLayerTreeModel () override | |
void | addTargetScreenProperties (const QgsScreenProperties &properties) |
Adds additional target screen properties to use when generating icons for Qt::DecorationRole data. | |
int | autoCollapseLegendNodes () const |
Returns at what number of legend nodes the layer node should be collapsed. -1 means no auto-collapse (default). | |
int | columnCount (const QModelIndex &parent=QModelIndex()) const override |
QModelIndex | currentIndex () const |
Gets index of the item marked as current. Item marked as current is underlined. | |
QVariant | data (const QModelIndex &index, int role=Qt::DisplayRole) const override |
bool | dropMimeData (const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) override |
const QgsLayerTreeFilterSettings * | filterSettings () const |
Returns the filter settings to use to filter legend nodes. | |
QgsLayerTreeModelLegendNode * | findLegendNode (const QString &layerId, const QString &ruleKey) const |
Searches through the layer tree to find a legend node with a matching layer ID and rule key. | |
Flags | flags () const |
Returns OR-ed combination of model flags. | |
Qt::ItemFlags | flags (const QModelIndex &index) const override |
bool | hitTestInProgress () const |
Returns true if a hit test for visible legend items is currently in progress. | |
QModelIndex | index (int row, int column, const QModelIndex &parent=QModelIndex()) const override |
QgsLayerTreeNode * | index2node (const QModelIndex &index) const |
Returns layer tree node for given index. | |
QList< QgsLayerTreeNode * > | indexes2nodes (const QModelIndexList &list, bool skipInternal=false) const |
Convert a list of indexes to a list of layer tree nodes. | |
QList< QgsLayerTreeModelLegendNode * > | layerLegendNodes (QgsLayerTreeLayer *nodeLayer, bool skipNodeEmbeddedInParent=false) |
Returns filtered list of active legend nodes attached to a particular layer node (by default it returns also legend node embedded in parent layer node (if any) unless skipNodeEmbeddedInParent is true ) | |
QList< QgsLayerTreeModelLegendNode * > | layerOriginalLegendNodes (QgsLayerTreeLayer *nodeLayer) |
Returns original (unfiltered) list of legend nodes attached to a particular layer node. | |
QMap< QString, QString > | layerStyleOverrides () const |
Gets map of map layer style overrides (key: layer ID, value: style name) where a different style should be used instead of the current one. | |
QFont | layerTreeNodeFont (int nodeType) const |
Gets font for a particular type of layer tree node. nodeType should come from QgsLayerTreeNode::NodeType enumeration. | |
double | legendFilterByScale () const |
Returns the scale which restricts the legend nodes which are visible. | |
const QgsMapSettings * | legendFilterMapSettings () const |
Returns the current map settings used for the current legend filter (or nullptr if none is enabled) | |
void | legendMapViewData (double *mapUnitsPerPixel, int *dpi, double *scale) const |
Gets hints about map view - to be used in legend nodes. | |
QModelIndex | legendNode2index (QgsLayerTreeModelLegendNode *legendNode) |
Returns index for a given legend node. | |
QgsLayerTreeModelLegendNode * | legendNodeEmbeddedInParent (QgsLayerTreeLayer *nodeLayer) const |
Returns legend node that may be embedded in parent (i.e. | |
QMimeData * | mimeData (const QModelIndexList &indexes) const override |
QStringList | mimeTypes () const override |
QModelIndex | node2index (QgsLayerTreeNode *node) const |
Returns index for a given node. If the node does not belong to the layer tree, the result is undefined. | |
QModelIndex | parent (const QModelIndex &child) const override |
void | refreshLayerLegend (QgsLayerTreeLayer *nodeLayer) |
Force a refresh of legend nodes of a layer node. | |
bool | removeRows (int row, int count, const QModelIndex &parent=QModelIndex()) override |
QgsLayerTree * | rootGroup () const |
Returns pointer to the root node of the layer tree. Always a non nullptr value. | |
int | rowCount (const QModelIndex &parent=QModelIndex()) const override |
void | setAutoCollapseLegendNodes (int nodeCount) |
Sets at what number of legend nodes the layer node should be collapsed. Setting -1 disables the auto-collapse (default). | |
void | setCurrentIndex (const QModelIndex ¤tIndex) |
Sets index of the current item. May be used by view. Item marked as current is underlined. | |
bool | setData (const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) override |
void | setFilterSettings (const QgsLayerTreeFilterSettings *settings=nullptr) |
Sets the filter settings to use to filter legend nodes. | |
void | setFlag (Flag f, bool on=true) |
Enable or disable a model flag. | |
void | setFlags (QgsLayerTreeModel::Flags f) |
Sets OR-ed combination of model flags. | |
void | setLayerStyleOverrides (const QMap< QString, QString > &overrides) |
Sets map of map layer style overrides (key: layer ID, value: style name) where a different style should be used instead of the current one. | |
void | setLayerTreeNodeFont (int nodeType, const QFont &font) |
Sets font for a particular type of layer tree node. nodeType should come from QgsLayerTreeNode::NodeType enumeration. | |
Q_DECL_DEPRECATED void | setLegendFilter (const QgsMapSettings *settings, bool useExtent=true, const QgsGeometry &polygon=QgsGeometry(), bool useExpressions=true) |
Filter display of legend nodes for given map settings. | |
Q_DECL_DEPRECATED void | setLegendFilterByMap (const QgsMapSettings *settings) |
Force only display of legend nodes which are valid for given map settings. | |
void | setLegendFilterByScale (double scale) |
Force only display of legend nodes which are valid for a given scale. | |
void | setLegendMapViewData (double mapUnitsPerPixel, int dpi, double scale) |
Give the layer tree model hints about the currently associated map view so that legend nodes that use map units can be scaled correctly. | |
void | setRootGroup (QgsLayerTree *newRootGroup) |
Reset the model and use a new root group node. | |
Qt::DropActions | supportedDropActions () const override |
QSet< QgsScreenProperties > | targetScreenProperties () const |
Returns the target screen properties to use when generating icons. | |
bool | testFlag (Flag f) const |
Check whether a flag is enabled. | |
void | waitForHitTestBlocking () |
When a current hit test for visible legend items is in progress, calling this method will block until that hit test is complete. | |
Additional Inherited Members | |
Public Types inherited from QgsLayerTreeModel | |
enum | Flag { ShowLegend = 0x0001 , ShowLegendAsTree = 0x0004 , DeferredLegendInvalidation = 0x0008 , UseEmbeddedWidgets = 0x0010 , UseTextFormatting = 0x0020 , AllowNodeReorder = 0x1000 , AllowNodeRename = 0x2000 , AllowNodeChangeVisibility = 0x4000 , AllowLegendChangeState = 0x8000 , ActionHierarchical = 0x10000 , UseThreadedHitTest = 0x20000 } |
typedef QFlags< Flag > | Flags |
Static Public Member Functions inherited from QgsLayerTreeModel | |
static QgsLayerTreeModelLegendNode * | index2legendNode (const QModelIndex &index) |
Returns legend node for given index. | |
static int | scaleIconSize (int standardSize) |
Scales an layer tree model icon size to compensate for display pixel density, making the icon size hi-dpi friendly, whilst still resulting in pixel-perfect sizes for low-dpi displays. | |
Protected Slots inherited from QgsLayerTreeModel | |
void | invalidateLegendMapBasedData () |
void | layerFlagsChanged () |
Emitted when layer flags have changed. | |
void | layerLegendChanged () |
void | layerNeedsUpdate () |
void | legendNodeDataChanged () |
void | nodeAddedChildren (QgsLayerTreeNode *node, int indexFrom, int indexTo) |
void | nodeCustomPropertyChanged (QgsLayerTreeNode *node, const QString &key) |
void | nodeLayerLoaded () |
void | nodeLayerWillBeUnloaded () |
void | nodeNameChanged (QgsLayerTreeNode *node, const QString &name) |
Updates model when node's name has changed. | |
void | nodeRemovedChildren () |
void | nodeVisibilityChanged (QgsLayerTreeNode *node) |
void | nodeWillAddChildren (QgsLayerTreeNode *node, int indexFrom, int indexTo) |
void | nodeWillRemoveChildren (QgsLayerTreeNode *node, int indexFrom, int indexTo) |
Protected Member Functions inherited from QgsLayerTreeModel | |
void | addLegendToLayer (QgsLayerTreeLayer *nodeL) |
void | connectToLayer (QgsLayerTreeLayer *nodeLayer) |
void | connectToLayers (QgsLayerTreeGroup *parentGroup) |
void | connectToRootNode () |
QgsRenderContext * | createTemporaryRenderContext () const |
Returns a temporary render context. | |
void | disconnectFromLayer (QgsLayerTreeLayer *nodeLayer) |
void | disconnectFromLayers (QgsLayerTreeGroup *parentGroup) |
void | disconnectFromRootNode () |
QList< QgsLayerTreeModelLegendNode * > | filterLegendNodes (const QList< QgsLayerTreeModelLegendNode * > &nodes) |
Filter nodes from QgsMapLayerLegend according to the current filtering rules. | |
QModelIndex | indexOfParentLayerTreeNode (QgsLayerTreeNode *parentNode) const |
void | legendCleanup () |
bool | legendEmbeddedInParent (QgsLayerTreeLayer *nodeLayer) const |
QIcon | legendIconEmbeddedInParent (QgsLayerTreeLayer *nodeLayer) const |
void | legendInvalidateMapBasedData () |
QVariant | legendNodeData (QgsLayerTreeModelLegendNode *node, int role) const |
Qt::ItemFlags | legendNodeFlags (QgsLayerTreeModelLegendNode *node) const |
QModelIndex | legendNodeIndex (int row, int column, QgsLayerTreeModelLegendNode *node) const |
int | legendNodeRowCount (QgsLayerTreeModelLegendNode *node) const |
QModelIndex | legendParent (QgsLayerTreeModelLegendNode *legendNode) const |
QModelIndex | legendRootIndex (int row, int column, QgsLayerTreeLayer *nL) const |
int | legendRootRowCount (QgsLayerTreeLayer *nL) const |
void | recursivelyEmitDataChanged (const QModelIndex &index=QModelIndex()) |
emit dataChanged() for layer tree node items | |
void | refreshScaleBasedLayers (const QModelIndex &index=QModelIndex(), double previousScale=0.0) |
Updates layer data for scale dependent layers, should be called when map scale changes. | |
void | removeLegendFromLayer (QgsLayerTreeLayer *nodeLayer) |
LayerLegendTree * | tryBuildLegendTree (const QList< QgsLayerTreeModelLegendNode * > &nodes) |
Static Protected Member Functions inherited from QgsLayerTreeModel | |
static QIcon | iconGroup () |
Protected Attributes inherited from QgsLayerTreeModel | |
int | mAutoCollapseLegendNodesCount = -1 |
Minimal number of nodes when legend should be automatically collapsed. -1 = disabled. | |
QPersistentModelIndex | mCurrentIndex |
Current index - will be underlined. | |
QTimer | mDeferLegendInvalidationTimer |
std::unique_ptr< QgsLayerTreeFilterSettings > | mFilterSettings |
Flags | mFlags |
Sets of flags for the model. | |
QFont | mFontGroup |
QFont | mFontLayer |
QMap< QString, QSet< QString > > | mHitTestResults |
QPointer< QgsMapHitTestTask > | mHitTestTask |
QSet< QgsLayerTreeLayer * > | mInvalidatedNodes |
Keep track of layer nodes for which the legend size needs to be recalculated. | |
QMap< QString, QString > | mLayerStyleOverrides |
Overrides of map layers' styles: key = layer ID, value = style XML. | |
QHash< QgsLayerTreeLayer *, LayerLegendData > | mLegend |
Per layer data about layer's legend nodes. | |
double | mLegendFilterByScale = 0 |
scale denominator for filtering of legend nodes (<= 0 means no filtering) | |
int | mLegendMapViewDpi = 0 |
double | mLegendMapViewMupp = 0 |
double | mLegendMapViewScale = 0 |
QgsLayerTree * | mRootNode = nullptr |
Pointer to the root node of the layer tree. Not owned by the model. | |
QSet< QgsScreenProperties > | mTargetScreenProperties |
A layer tree model subclass for elevation profiles.
Definition at line 45 of file qgselevationprofilelayertreeview.h.
|
explicit |
Construct a new tree model with given layer tree (root node must not be nullptr
).
The root node is not transferred by the model.
Definition at line 39 of file qgselevationprofilelayertreeview.cpp.
|
signal |
Emitted when layers should be added to the profile, e.g.
via a drag and drop action.
|
override |
Definition at line 261 of file qgselevationprofilelayertreeview.cpp.
|
override |
Definition at line 48 of file qgselevationprofilelayertreeview.cpp.
|
override |
Definition at line 282 of file qgselevationprofilelayertreeview.cpp.
|
override |
Definition at line 336 of file qgselevationprofilelayertreeview.cpp.
|
override |
Definition at line 244 of file qgselevationprofilelayertreeview.cpp.