QGIS API Documentation  2.8.2-Wien
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Slots | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
QgsLayerTreeModel Class Reference

The QgsLayerTreeModel class is model implementation for Qt item views framework. More...

#include <qgslayertreemodel.h>

Inheritance diagram for QgsLayerTreeModel:
Inheritance graph
[legend]

Classes

struct  LayerLegendData
 Structure that stores all data associated with one map layer. More...
struct  LayerLegendTree
 Structure that stores tree representation of map layer's legend. More...

Public Types

enum  Flag {
  ShowLegend = 0x0001, ShowSymbology = 0x0001, ShowRasterPreviewIcon = 0x0002, ShowLegendAsTree = 0x0004,
  AllowNodeReorder = 0x1000, AllowNodeRename = 0x2000, AllowNodeChangeVisibility = 0x4000, AllowLegendChangeState = 0x8000,
  AllowSymbologyChangeState = 0x8000
}

Public Member Functions

 QgsLayerTreeModel (QgsLayerTreeGroup *rootNode, QObject *parent=0)
 Construct a new tree model with given layer tree (root node must not be null pointer).
 ~QgsLayerTreeModel ()
int autoCollapseLegendNodes () const
 Return at what number of legend nodes the layer node should be collapsed. -1 means no auto-collapse (default).
Q_DECL_DEPRECATED int autoCollapseSymbologyNodes () const
int columnCount (const QModelIndex &parent=QModelIndex()) const override
QModelIndex currentIndex () const
 Get 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
Qt::ItemFlags flags (const QModelIndex &index) const override
Flags flags () const
 Return OR-ed combination of model flags.
QModelIndex index (int row, int column, const QModelIndex &parent=QModelIndex()) const override
QgsLayerTreeNodeindex2node (const QModelIndex &index) const
 Return 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.
Q_DECL_DEPRECATED bool isIndexSymbologyNode (const QModelIndex &index) const
 Return true if index represents a legend node (instead of layer node)
QList
< QgsLayerTreeModelLegendNode * > 
layerLegendNodes (QgsLayerTreeLayer *nodeLayer)
 Return list of legend nodes attached to a particular layer node.
Q_DECL_DEPRECATED
QgsLayerTreeLayer
layerNodeForSymbologyNode (const QModelIndex &index) const
 Return layer node to which a legend node belongs to.
QFont layerTreeNodeFont (int nodeType) const
 Get font for a particular type of layer tree node. nodeType should come from QgsLayerTreeNode::NodeType enumeration.
const QgsMapSettingslegendFilterByMap () const
double legendFilterByScale () const
void legendMapViewData (double *mapUnitsPerPixel, int *dpi, double *scale)
 Get hints about map view - to be used in legend nodes.
QModelIndex legendNode2index (QgsLayerTreeModelLegendNode *legendNode)
 Return index for a given legend node.
QMimeData * mimeData (const QModelIndexList &indexes) const override
QStringList mimeTypes () const override
QModelIndex node2index (QgsLayerTreeNode *node) const
 Return 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.
Q_DECL_DEPRECATED void refreshLayerSymbology (QgsLayerTreeLayer *nodeLayer)
bool removeRows (int row, int count, const QModelIndex &parent=QModelIndex()) override
QgsLayerTreeGrouprootGroup () const
 Return pointer to the root node of the layer tree. Always a non-null pointer.
int rowCount (const QModelIndex &parent=QModelIndex()) const override
void setAutoCollapseLegendNodes (int nodeCount)
 Set at what number of legend nodes the layer node should be collapsed. Setting -1 disables the auto-collapse (default).
Q_DECL_DEPRECATED void setAutoCollapseSymbologyNodes (int nodeCount)
void setCurrentIndex (const QModelIndex &currentIndex)
 Set 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 setFlag (Flag f, bool on=true)
 Enable or disable a model flag.
void setFlags (Flags f)
 Set OR-ed combination of model flags.
void setLayerTreeNodeFont (int nodeType, const QFont &font)
 Set font for a particular type of layer tree node. nodeType should come from QgsLayerTreeNode::NodeType enumeration.
void setLegendFilterByMap (const QgsMapSettings *settings)
 Force only display of legend nodes which are valid for given map settings.
void setLegendFilterByScale (double scaleDenominator)
 Force only display of legend nodes which are valid for given scale denominator.
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 currectly.
void setRootGroup (QgsLayerTreeGroup *newRootGroup)
 Reset the model and use a new root group node.
Qt::DropActions supportedDropActions () const override
bool testFlag (Flag f) const
 Check whether a flag is enabled.

Static Public Member Functions

static
QgsLayerTreeModelLegendNode
index2legendNode (const QModelIndex &index)
 Return legend node for given index.

Protected Slots

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 nodeRemovedChildren ()
void nodeVisibilityChanged (QgsLayerTreeNode *node)
void nodeWillAddChildren (QgsLayerTreeNode *node, int indexFrom, int indexTo)
void nodeWillRemoveChildren (QgsLayerTreeNode *node, int indexFrom, int indexTo)

Protected Member Functions

void addLegendToLayer (QgsLayerTreeLayer *nodeL)
void connectToLayer (QgsLayerTreeLayer *nodeLayer)
void connectToLayers (QgsLayerTreeGroup *parentGroup)
void connectToRootNode ()
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 removeLegendFromLayer (QgsLayerTreeLayer *nodeLayer)
void tryBuildLegendTree (LayerLegendData &data)

Static Protected Member Functions

static const QIcon & iconGroup ()

Protected Attributes

int mAutoCollapseLegendNodesCount
 Minimal number of nodes when legend should be automatically collapsed. -1 = disabled.
QPersistentModelIndex mCurrentIndex
 Current index - will be underlined.
Flags mFlags
 Set of flags for the model.
QFont mFontGroup
QFont mFontLayer
QMap< QgsLayerTreeLayer
*, LayerLegendData
mLegend
 Per layer data about layer's legend nodes.
QScopedPointer< QgsMapHitTestmLegendFilterByMapHitTest
QScopedPointer< QgsMapSettingsmLegendFilterByMapSettings
double mLegendFilterByScale
 scale denominator for filtering of legend nodes (<= 0 means no filtering)
int mLegendMapViewDpi
double mLegendMapViewMupp
double mLegendMapViewScale
QgsLayerTreeGroupmRootNode
 Pointer to the root node of the layer tree. Not owned by the model.

Detailed Description

The QgsLayerTreeModel class is model implementation for Qt item views framework.

The model can be used in any QTreeView, it is however recommended to use it with QgsLayerTreeView which brings additional functionality specific to layer tree handling.

The model listens to the changes in the layer tree and signals the changes as appropriate, so that any view that uses the model is updated accordingly.

Behavior of the model can be customized with flags. For example, whether to show legend or whether to allow changes to the layer tree.

See Also
QgsLayerTreeView
Note
added in 2.4

Definition at line 46 of file qgslayertreemodel.h.

Member Enumeration Documentation

Enumerator:
ShowLegend 

Add legend nodes for layer nodes.

ShowSymbology 

deprecated - use ShowLegend

ShowRasterPreviewIcon 

Will use real preview of raster layer as icon (may be slow)

ShowLegendAsTree 

For legends that support it, will show them in a tree instead of a list (needs also ShowLegend). Added in 2.8.

AllowNodeReorder 

Allow reordering with drag'n'drop.

AllowNodeRename 

Allow renaming of groups and layers.

AllowNodeChangeVisibility 

Allow user to set node visibility with a check box.

AllowLegendChangeState 

Allow check boxes for legend nodes (if supported by layer's legend)

AllowSymbologyChangeState 

deprecated - use AllowLegendChangeState

Definition at line 72 of file qgslayertreemodel.h.

Constructor & Destructor Documentation

QgsLayerTreeModel::QgsLayerTreeModel ( QgsLayerTreeGroup rootNode,
QObject *  parent = 0 
)
explicit

Construct a new tree model with given layer tree (root node must not be null pointer).

The root node is not transferred by the model.

Definition at line 34 of file qgslayertreemodel.cpp.

QgsLayerTreeModel::~QgsLayerTreeModel ( )

Definition at line 49 of file qgslayertreemodel.cpp.

Member Function Documentation

void QgsLayerTreeModel::addLegendToLayer ( QgsLayerTreeLayer nodeL)
protected

Definition at line 1062 of file qgslayertreemodel.cpp.

int QgsLayerTreeModel::autoCollapseLegendNodes ( ) const
inline

Return at what number of legend nodes the layer node should be collapsed. -1 means no auto-collapse (default).

Definition at line 143 of file qgslayertreemodel.h.

Q_DECL_DEPRECATED int QgsLayerTreeModel::autoCollapseSymbologyNodes ( ) const
inline
int QgsLayerTreeModel::columnCount ( const QModelIndex &  parent = QModelIndex()) const
override

Definition at line 84 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::connectToLayer ( QgsLayerTreeLayer nodeLayer)
protected

Definition at line 736 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::connectToLayers ( QgsLayerTreeGroup parentGroup)
protected

Definition at line 814 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::connectToRootNode ( )
protected

Definition at line 836 of file qgslayertreemodel.cpp.

QModelIndex QgsLayerTreeModel::currentIndex ( ) const

Get index of the item marked as current. Item marked as current is underlined.

Definition at line 491 of file qgslayertreemodel.cpp.

QVariant QgsLayerTreeModel::data ( const QModelIndex &  index,
int  role = Qt::DisplayRole 
) const
override

Reimplemented in QgsLegendModelV2.

Definition at line 149 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::disconnectFromLayer ( QgsLayerTreeLayer nodeLayer)
protected

Definition at line 795 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::disconnectFromLayers ( QgsLayerTreeGroup parentGroup)
protected

Definition at line 825 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::disconnectFromRootNode ( )
protected

Definition at line 851 of file qgslayertreemodel.cpp.

bool QgsLayerTreeModel::dropMimeData ( const QMimeData *  data,
Qt::DropAction  action,
int  row,
int  column,
const QModelIndex &  parent 
)
override

Definition at line 906 of file qgslayertreemodel.cpp.

QList< QgsLayerTreeModelLegendNode * > QgsLayerTreeModel::filterLegendNodes ( const QList< QgsLayerTreeModelLegendNode * > &  nodes)
protected

Filter nodes from QgsMapLayerLegend according to the current filtering rules.

Definition at line 998 of file qgslayertreemodel.cpp.

Qt::ItemFlags QgsLayerTreeModel::flags ( const QModelIndex &  index) const
override

Reimplemented in QgsLegendModelV2.

Definition at line 282 of file qgslayertreemodel.cpp.

QgsLayerTreeModel::Flags QgsLayerTreeModel::flags ( ) const

Return OR-ed combination of model flags.

Definition at line 978 of file qgslayertreemodel.cpp.

const QIcon & QgsLayerTreeModel::iconGroup ( )
staticprotected

Definition at line 988 of file qgslayertreemodel.cpp.

QModelIndex QgsLayerTreeModel::index ( int  row,
int  column,
const QModelIndex &  parent = QModelIndex() 
) const
override

Definition at line 90 of file qgslayertreemodel.cpp.

QgsLayerTreeModelLegendNode * QgsLayerTreeModel::index2legendNode ( const QModelIndex &  index)
static

Return legend node for given index.

Returns null for invalid index

Note
added in 2.6

Definition at line 1145 of file qgslayertreemodel.cpp.

QgsLayerTreeNode * QgsLayerTreeModel::index2node ( const QModelIndex &  index) const

Return layer tree node for given index.

Returns root node for invalid index. Returns null pointer if index does not refer to a layer tree node (e.g. it is a legend node)

Definition at line 54 of file qgslayertreemodel.cpp.

QList< QgsLayerTreeNode * > QgsLayerTreeModel::indexes2nodes ( const QModelIndexList &  list,
bool  skipInternal = false 
) const

Convert a list of indexes to a list of layer tree nodes.

Indices that do not represent layer tree nodes are skipped.

  • skipInternal If true, a node is included in the output list only if no parent node is in the list

Definition at line 414 of file qgslayertreemodel.cpp.

QModelIndex QgsLayerTreeModel::indexOfParentLayerTreeNode ( QgsLayerTreeNode parentNode) const
protected

Definition at line 134 of file qgslayertreemodel.cpp.

bool QgsLayerTreeModel::isIndexSymbologyNode ( const QModelIndex &  index) const

Return true if index represents a legend node (instead of layer node)

Deprecated:
use index2legendNode()

Definition at line 440 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::layerLegendChanged ( )
protectedslot

Definition at line 690 of file qgslayertreemodel.cpp.

QList< QgsLayerTreeModelLegendNode * > QgsLayerTreeModel::layerLegendNodes ( QgsLayerTreeLayer nodeLayer)

Return list of legend nodes attached to a particular layer node.

Note
added in 2.6

Definition at line 1276 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::layerNeedsUpdate ( )
protectedslot

Definition at line 706 of file qgslayertreemodel.cpp.

QgsLayerTreeLayer * QgsLayerTreeModel::layerNodeForSymbologyNode ( const QModelIndex &  index) const

Return layer node to which a legend node belongs to.

Returns null pointer if index is not a legend node.

Deprecated:
use index2legendNode()->parent()

Definition at line 445 of file qgslayertreemodel.cpp.

QFont QgsLayerTreeModel::layerTreeNodeFont ( int  nodeType) const

Get font for a particular type of layer tree node. nodeType should come from QgsLayerTreeNode::NodeType enumeration.

Definition at line 533 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::legendCleanup ( )
protected

Definition at line 1040 of file qgslayertreemodel.cpp.

bool QgsLayerTreeModel::legendEmbeddedInParent ( QgsLayerTreeLayer nodeLayer) const
protected

Definition at line 1263 of file qgslayertreemodel.cpp.

const QgsMapSettings* QgsLayerTreeModel::legendFilterByMap ( ) const
inline

Definition at line 156 of file qgslayertreemodel.h.

double QgsLayerTreeModel::legendFilterByScale ( ) const
inline

Definition at line 149 of file qgslayertreemodel.h.

QIcon QgsLayerTreeModel::legendIconEmbeddedInParent ( QgsLayerTreeLayer nodeLayer) const
protected

Definition at line 1270 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::legendInvalidateMapBasedData ( )
protected

Definition at line 1281 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::legendMapViewData ( double *  mapUnitsPerPixel,
int *  dpi,
double *  scale 
)

Get hints about map view - to be used in legend nodes.

Arguments that are not null will receive values. If there are no valid map view data (from previous call to setLegendMapViewData()), returned values are zeros.

Note
added in 2.6

Definition at line 598 of file qgslayertreemodel.cpp.

QModelIndex QgsLayerTreeModel::legendNode2index ( QgsLayerTreeModelLegendNode legendNode)

Return index for a given legend node.

If the legend node does not belong to the layer tree, the result is undefined. If the legend node is belongs to the tree but it is filtered out, invalid model index is returned.

Note
added in 2.6

Definition at line 1151 of file qgslayertreemodel.cpp.

QVariant QgsLayerTreeModel::legendNodeData ( QgsLayerTreeModelLegendNode node,
int  role 
) const
protected

Definition at line 1246 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::legendNodeDataChanged ( )
protectedslot

Definition at line 724 of file qgslayertreemodel.cpp.

Qt::ItemFlags QgsLayerTreeModel::legendNodeFlags ( QgsLayerTreeModelLegendNode node) const
protected

Definition at line 1254 of file qgslayertreemodel.cpp.

QModelIndex QgsLayerTreeModel::legendNodeIndex ( int  row,
int  column,
QgsLayerTreeModelLegendNode node 
) const
protected

Definition at line 1216 of file qgslayertreemodel.cpp.

int QgsLayerTreeModel::legendNodeRowCount ( QgsLayerTreeModelLegendNode node) const
protected

Definition at line 1179 of file qgslayertreemodel.cpp.

QModelIndex QgsLayerTreeModel::legendParent ( QgsLayerTreeModelLegendNode legendNode) const
protected

Definition at line 1226 of file qgslayertreemodel.cpp.

QModelIndex QgsLayerTreeModel::legendRootIndex ( int  row,
int  column,
QgsLayerTreeLayer nL 
) const
protected

Definition at line 1205 of file qgslayertreemodel.cpp.

int QgsLayerTreeModel::legendRootRowCount ( QgsLayerTreeLayer nL) const
protected

Definition at line 1189 of file qgslayertreemodel.cpp.

QMimeData * QgsLayerTreeModel::mimeData ( const QModelIndexList &  indexes) const
override

Definition at line 886 of file qgslayertreemodel.cpp.

QStringList QgsLayerTreeModel::mimeTypes ( ) const
override

Definition at line 878 of file qgslayertreemodel.cpp.

QModelIndex QgsLayerTreeModel::node2index ( QgsLayerTreeNode node) const

Return index for a given node. If the node does not belong to the layer tree, the result is undefined.

Definition at line 378 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::nodeAddedChildren ( QgsLayerTreeNode node,
int  indexFrom,
int  indexTo 
)
protectedslot

Definition at line 626 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::nodeCustomPropertyChanged ( QgsLayerTreeNode node,
const QString &  key 
)
protectedslot

Definition at line 661 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::nodeLayerLoaded ( )
protectedslot

Definition at line 668 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::nodeLayerWillBeUnloaded ( )
protectedslot

Definition at line 678 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::nodeRemovedChildren ( )
protectedslot

Definition at line 647 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::nodeVisibilityChanged ( QgsLayerTreeNode node)
protectedslot

Definition at line 652 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::nodeWillAddChildren ( QgsLayerTreeNode node,
int  indexFrom,
int  indexTo 
)
protectedslot

Definition at line 605 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::nodeWillRemoveChildren ( QgsLayerTreeNode node,
int  indexFrom,
int  indexTo 
)
protectedslot

Definition at line 636 of file qgslayertreemodel.cpp.

QModelIndex QgsLayerTreeModel::parent ( const QModelIndex &  child) const
override

Definition at line 112 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::recursivelyEmitDataChanged ( const QModelIndex &  index = QModelIndex())
protected

emit dataChanged() for layer tree node items

Definition at line 858 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::refreshLayerLegend ( QgsLayerTreeLayer nodeLayer)

Force a refresh of legend nodes of a layer node.

Not necessary to call when layer's renderer is changed as the model listens to these events.

Definition at line 471 of file qgslayertreemodel.cpp.

Q_DECL_DEPRECATED void QgsLayerTreeModel::refreshLayerSymbology ( QgsLayerTreeLayer nodeLayer)
inline
Deprecated:
use refreshLayerLegend()

Definition at line 174 of file qgslayertreemodel.h.

void QgsLayerTreeModel::removeLegendFromLayer ( QgsLayerTreeLayer nodeLayer)
protected

Definition at line 1051 of file qgslayertreemodel.cpp.

bool QgsLayerTreeModel::removeRows ( int  row,
int  count,
const QModelIndex &  parent = QModelIndex() 
)
override

Definition at line 954 of file qgslayertreemodel.cpp.

QgsLayerTreeGroup * QgsLayerTreeModel::rootGroup ( ) const

Return pointer to the root node of the layer tree. Always a non-null pointer.

Definition at line 451 of file qgslayertreemodel.cpp.

int QgsLayerTreeModel::rowCount ( const QModelIndex &  parent = QModelIndex()) const
override

Definition at line 64 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::setAutoCollapseLegendNodes ( int  nodeCount)
inline

Set at what number of legend nodes the layer node should be collapsed. Setting -1 disables the auto-collapse (default).

Definition at line 141 of file qgslayertreemodel.h.

Q_DECL_DEPRECATED void QgsLayerTreeModel::setAutoCollapseSymbologyNodes ( int  nodeCount)
inline
void QgsLayerTreeModel::setCurrentIndex ( const QModelIndex &  currentIndex)

Set index of the current item. May be used by view. Item marked as current is underlined.

Definition at line 496 of file qgslayertreemodel.cpp.

bool QgsLayerTreeModel::setData ( const QModelIndex &  index,
const QVariant &  value,
int  role = Qt::EditRole 
)
override

Definition at line 319 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::setFlag ( QgsLayerTreeModel::Flag  f,
bool  on = true 
)

Enable or disable a model flag.

Definition at line 970 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::setFlags ( Flags  f)

Set OR-ed combination of model flags.

Definition at line 965 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::setLayerTreeNodeFont ( int  nodeType,
const QFont &  font 
)

Set font for a particular type of layer tree node. nodeType should come from QgsLayerTreeNode::NodeType enumeration.

Definition at line 508 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::setLegendFilterByMap ( const QgsMapSettings settings)

Force only display of legend nodes which are valid for given map settings.

Setting null pointer or invalid map settings will disable the functionality. Ownership of map settings pointer does not change, a copy is made.

Note
added in 2.6

Definition at line 556 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::setLegendFilterByScale ( double  scaleDenominator)

Force only display of legend nodes which are valid for given scale denominator.

Setting value <= 0 will disable the functionality

Note
added in 2.6

Definition at line 546 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::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 currectly.

Note
added in 2.6

Definition at line 585 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::setRootGroup ( QgsLayerTreeGroup newRootGroup)

Reset the model and use a new root group node.

Note
added in 2.6

Definition at line 456 of file qgslayertreemodel.cpp.

Qt::DropActions QgsLayerTreeModel::supportedDropActions ( ) const
override

Definition at line 873 of file qgslayertreemodel.cpp.

bool QgsLayerTreeModel::testFlag ( QgsLayerTreeModel::Flag  f) const

Check whether a flag is enabled.

Definition at line 983 of file qgslayertreemodel.cpp.

void QgsLayerTreeModel::tryBuildLegendTree ( LayerLegendData data)
protected

Definition at line 1105 of file qgslayertreemodel.cpp.

Member Data Documentation

int QgsLayerTreeModel::mAutoCollapseLegendNodesCount
protected

Minimal number of nodes when legend should be automatically collapsed. -1 = disabled.

Definition at line 242 of file qgslayertreemodel.h.

QPersistentModelIndex QgsLayerTreeModel::mCurrentIndex
protected

Current index - will be underlined.

Definition at line 240 of file qgslayertreemodel.h.

Flags QgsLayerTreeModel::mFlags
protected

Set of flags for the model.

Definition at line 238 of file qgslayertreemodel.h.

QFont QgsLayerTreeModel::mFontGroup
protected

Definition at line 276 of file qgslayertreemodel.h.

QFont QgsLayerTreeModel::mFontLayer
protected

Definition at line 275 of file qgslayertreemodel.h.

QMap<QgsLayerTreeLayer*, LayerLegendData> QgsLayerTreeModel::mLegend
protected

Per layer data about layer's legend nodes.

Definition at line 273 of file qgslayertreemodel.h.

QScopedPointer<QgsMapHitTest> QgsLayerTreeModel::mLegendFilterByMapHitTest
protected

Definition at line 282 of file qgslayertreemodel.h.

QScopedPointer<QgsMapSettings> QgsLayerTreeModel::mLegendFilterByMapSettings
protected

Definition at line 281 of file qgslayertreemodel.h.

double QgsLayerTreeModel::mLegendFilterByScale
protected

scale denominator for filtering of legend nodes (<= 0 means no filtering)

Definition at line 279 of file qgslayertreemodel.h.

int QgsLayerTreeModel::mLegendMapViewDpi
protected

Definition at line 285 of file qgslayertreemodel.h.

double QgsLayerTreeModel::mLegendMapViewMupp
protected

Definition at line 284 of file qgslayertreemodel.h.

double QgsLayerTreeModel::mLegendMapViewScale
protected

Definition at line 286 of file qgslayertreemodel.h.

QgsLayerTreeGroup* QgsLayerTreeModel::mRootNode
protected

Pointer to the root node of the layer tree. Not owned by the model.

Definition at line 236 of file qgslayertreemodel.h.


The documentation for this class was generated from the following files: