QGIS API Documentation  2.9.0-Master
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Member Functions | List of all members
QgsLegendModelV2 Class Reference

Item model implementation based on layer tree model for composer legend. More...

#include <qgscomposerlegend.h>

Inheritance diagram for QgsLegendModelV2:
Inheritance graph
[legend]

Public Member Functions

 QgsLegendModelV2 (QgsLayerTreeGroup *rootNode, QObject *parent=0)
 
QVariant data (const QModelIndex &index, int role) const override
 
Qt::ItemFlags flags (const QModelIndex &index) const override
 
- Public Member Functions inherited from QgsLayerTreeModel
 QgsLayerTreeModel (QgsLayerTreeGroup *rootNode, QObject *parent=0)
 Construct a new tree model with given layer tree (root node must not be null pointer). More...
 
 ~QgsLayerTreeModel ()
 
int autoCollapseLegendNodes () const
 Return at what number of legend nodes the layer node should be collapsed. -1 means no auto-collapse (default). More...
 
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. More...
 
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. More...
 
QModelIndex index (int row, int column, const QModelIndex &parent=QModelIndex()) const override
 
QgsLayerTreeNodeindex2node (const QModelIndex &index) const
 Return layer tree node for given index. More...
 
QList< QgsLayerTreeNode * > indexes2nodes (const QModelIndexList &list, bool skipInternal=false) const
 Convert a list of indexes to a list of layer tree nodes. More...
 
Q_DECL_DEPRECATED bool isIndexSymbologyNode (const QModelIndex &index) const
 Return true if index represents a legend node (instead of layer node) More...
 
QList
< QgsLayerTreeModelLegendNode * > 
layerLegendNodes (QgsLayerTreeLayer *nodeLayer)
 Return list of legend nodes attached to a particular layer node. More...
 
Q_DECL_DEPRECATED
QgsLayerTreeLayer
layerNodeForSymbologyNode (const QModelIndex &index) const
 Return layer node to which a legend node belongs to. More...
 
QFont layerTreeNodeFont (int nodeType) const
 Get font for a particular type of layer tree node. nodeType should come from QgsLayerTreeNode::NodeType enumeration. More...
 
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. More...
 
QModelIndex legendNode2index (QgsLayerTreeModelLegendNode *legendNode)
 Return index for a given legend node. More...
 
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. More...
 
QModelIndex parent (const QModelIndex &child) const override
 
void refreshLayerLegend (QgsLayerTreeLayer *nodeLayer)
 Force a refresh of legend nodes of a layer node. More...
 
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. More...
 
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). More...
 
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. More...
 
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. More...
 
void setFlags (Flags f)
 Set OR-ed combination of model flags. More...
 
void setLayerTreeNodeFont (int nodeType, const QFont &font)
 Set font for a particular type of layer tree node. nodeType should come from QgsLayerTreeNode::NodeType enumeration. More...
 
void setLegendFilterByMap (const QgsMapSettings *settings)
 Force only display of legend nodes which are valid for given map settings. More...
 
void setLegendFilterByScale (double scaleDenominator)
 Force only display of legend nodes which are valid for given scale denominator. More...
 
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. More...
 
void setRootGroup (QgsLayerTreeGroup *newRootGroup)
 Reset the model and use a new root group node. More...
 
Qt::DropActions supportedDropActions () const override
 
bool testFlag (Flag f) const
 Check whether a flag is enabled. More...
 

Additional Inherited Members

- Public Types inherited from QgsLayerTreeModel
enum  Flag {
  ShowLegend = 0x0001, ShowSymbology = 0x0001, ShowRasterPreviewIcon = 0x0002, ShowLegendAsTree = 0x0004,
  AllowNodeReorder = 0x1000, AllowNodeRename = 0x2000, AllowNodeChangeVisibility = 0x4000, AllowLegendChangeState = 0x8000,
  AllowSymbologyChangeState = 0x8000
}
 
- Static Public Member Functions inherited from QgsLayerTreeModel
static
QgsLayerTreeModelLegendNode
index2legendNode (const QModelIndex &index)
 Return legend node for given index. More...
 
- Protected Slots inherited from QgsLayerTreeModel
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 inherited from QgsLayerTreeModel
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. More...
 
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 More...
 
void removeLegendFromLayer (QgsLayerTreeLayer *nodeLayer)
 
void tryBuildLegendTree (LayerLegendData &data)
 
- Static Protected Member Functions inherited from QgsLayerTreeModel
static const QIcon & iconGroup ()
 
- Protected Attributes inherited from QgsLayerTreeModel
int mAutoCollapseLegendNodesCount
 Minimal number of nodes when legend should be automatically collapsed. -1 = disabled. More...
 
QPersistentModelIndex mCurrentIndex
 Current index - will be underlined. More...
 
Flags mFlags
 Set of flags for the model. More...
 
QFont mFontGroup
 
QFont mFontLayer
 
QMap< QgsLayerTreeLayer
*, LayerLegendData
mLegend
 Per layer data about layer's legend nodes. More...
 
QScopedPointer< QgsMapHitTestmLegendFilterByMapHitTest
 
QScopedPointer< QgsMapSettingsmLegendFilterByMapSettings
 
double mLegendFilterByScale
 scale denominator for filtering of legend nodes (<= 0 means no filtering) More...
 
int mLegendMapViewDpi
 
double mLegendMapViewMupp
 
double mLegendMapViewScale
 
QgsLayerTreeGroupmRootNode
 Pointer to the root node of the layer tree. Not owned by the model. More...
 

Detailed Description

Item model implementation based on layer tree model for composer legend.

Overrides some functionality of QgsLayerTreeModel to better fit the needs of composer legend.

Note
added in 2.6

Definition at line 42 of file qgscomposerlegend.h.

Constructor & Destructor Documentation

QgsLegendModelV2::QgsLegendModelV2 ( QgsLayerTreeGroup rootNode,
QObject *  parent = 0 
)

Definition at line 562 of file qgscomposerlegend.cpp.

Member Function Documentation

QVariant QgsLegendModelV2::data ( const QModelIndex &  index,
int  role 
) const
override

Definition at line 569 of file qgscomposerlegend.cpp.

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

Definition at line 591 of file qgscomposerlegend.cpp.


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