QGIS API Documentation  2.7.0-Master
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Types | Public Slots | Signals | Public Member Functions | Protected Attributes | List of all members
QgsLegendModel Class Reference

A model that provides group, layer and classification items. More...

#include <qgslegendmodel.h>

Inheritance diagram for QgsLegendModel:
Inheritance graph
[legend]

Public Types

enum  ItemType { GroupItem = 0, LayerItem, ClassificationItem }
 

Public Slots

void addLayer (QgsMapLayer *theMapLayer, double scaleDenominator=-1, QString rule="", QStandardItem *parentItem=0)
 
void removeLayer (const QString &layerId)
 

Signals

void layersChanged ()
 

Public Member Functions

 QgsLegendModel ()
 
 ~QgsLegendModel ()
 
QStandardItem * addGroup (QString text=QString::null, int position=-1, QStandardItem *parentItem=0)
 Adds a group. More...
 
bool autoUpdate ()
 
bool dropMimeData (const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent)
 Implements the drop operation. More...
 
Qt::ItemFlags flags (const QModelIndex &index) const
 
QMimeData * mimeData (const QModelIndexList &indexes) const
 For the drag operation. More...
 
QStringList mimeTypes () const
 
bool readXML (const QDomElement &legendModelElem, const QDomDocument &doc)
 
virtual bool removeRows (int row, int count, const QModelIndex &parent=QModelIndex())
 Implemented to support drag operations. More...
 
void setAutoUpdate (bool autoUpdate)
 
void setLayerSet (const QStringList &layerIds, double scaleDenominator=-1, QString rule="")
 
void setLayerSetAndGroups (QgsLayerTreeGroup *rootGroup)
 Set layers and groups from a layer tree. More...
 
Q_DECL_DEPRECATED void setLayerSetAndGroups (const QStringList &layerIds, const QList< GroupLayerInfo > &groupInfo)
 Sets layer set and groups. More...
 
Qt::DropActions supportedDropActions () const
 
void updateItem (QStandardItem *item)
 Tries to automatically update a model entry (e.g. More...
 
void updateItemText (QStandardItem *item)
 Update single item text using item userText and other properties like showFeatureCount. More...
 
void updateLayer (QStandardItem *layerItem)
 Updates the whole symbology of a layer. More...
 
void updateRasterClassificationItem (QStandardItem *classificationItem)
 
void updateVectorV2ClassificationItem (QStandardItem *classificationItem, QgsSymbolV2 *symbol, QString itemText)
 Tries to update a single classification item. More...
 
bool writeXML (QDomElement &composerLegendElem, QDomDocument &doc) const
 

Protected Attributes

bool mAutoUpdate
 True if the legend is auto updated when layers are added or removed from the map canvas. More...
 
bool mHasTopLevelWindow
 True if this application has toplevel windows (normally true). More...
 
QStringList mLayerIds
 

Detailed Description

A model that provides group, layer and classification items.

Definition at line 40 of file qgslegendmodel.h.

Constructor & Destructor Documentation

QgsLegendModel::QgsLegendModel ( )

Definition at line 36 of file qgslegendmodel.cpp.

QgsLegendModel::~QgsLegendModel ( )

Definition at line 50 of file qgslegendmodel.cpp.

Member Function Documentation

QStandardItem * QgsLegendModel::addGroup ( QString  text = QString::null,
int  position = -1,
QStandardItem *  parentItem = 0 
)

Adds a group.

Parameters
textname of group (defaults to translation of "Group")
positioninsertion position (toplevel position (or -1 if it should be placed at the end of the legend).
parentItemparent item
Returns
a pointer to the added group

Definition at line 144 of file qgslegendmodel.cpp.

void QgsLegendModel::addLayer ( QgsMapLayer theMapLayer,
double  scaleDenominator = -1,
QString  rule = "",
QStandardItem *  parentItem = 0 
)
slot

Definition at line 556 of file qgslegendmodel.cpp.

bool QgsLegendModel::autoUpdate ( )
inline

Definition at line 104 of file qgslegendmodel.h.

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

Implements the drop operation.

Definition at line 812 of file qgslegendmodel.cpp.

Qt::ItemFlags QgsLegendModel::flags ( const QModelIndex &  index) const

Definition at line 701 of file qgslegendmodel.cpp.

void QgsLegendModel::layersChanged ( )
signal
QMimeData * QgsLegendModel::mimeData ( const QModelIndexList &  indexes) const

For the drag operation.

Definition at line 780 of file qgslegendmodel.cpp.

QStringList QgsLegendModel::mimeTypes ( ) const

Definition at line 805 of file qgslegendmodel.cpp.

bool QgsLegendModel::readXML ( const QDomElement &  legendModelElem,
const QDomDocument &  doc 
)

Definition at line 649 of file qgslegendmodel.cpp.

void QgsLegendModel::removeLayer ( const QString &  layerId)
slot

Definition at line 528 of file qgslegendmodel.cpp.

bool QgsLegendModel::removeRows ( int  row,
int  count,
const QModelIndex &  parent = QModelIndex() 
)
virtual

Implemented to support drag operations.

Definition at line 752 of file qgslegendmodel.cpp.

void QgsLegendModel::setAutoUpdate ( bool  autoUpdate)

Definition at line 887 of file qgslegendmodel.cpp.

void QgsLegendModel::setLayerSet ( const QStringList &  layerIds,
double  scaleDenominator = -1,
QString  rule = "" 
)

Definition at line 127 of file qgslegendmodel.cpp.

void QgsLegendModel::setLayerSetAndGroups ( QgsLayerTreeGroup rootGroup)

Set layers and groups from a layer tree.

Note
added in 2.6

Definition at line 54 of file qgslegendmodel.cpp.

void QgsLegendModel::setLayerSetAndGroups ( const QStringList &  layerIds,
const QList< GroupLayerInfo > &  groupInfo 
)

Sets layer set and groups.

Deprecated:
in 2.6

Definition at line 79 of file qgslegendmodel.cpp.

Qt::DropActions QgsLegendModel::supportedDropActions ( ) const

Definition at line 696 of file qgslegendmodel.cpp.

void QgsLegendModel::updateItem ( QStandardItem *  item)

Tries to automatically update a model entry (e.g.

a whole layer or only a single item)

Definition at line 420 of file qgslegendmodel.cpp.

void QgsLegendModel::updateItemText ( QStandardItem *  item)

Update single item text using item userText and other properties like showFeatureCount.

Definition at line 441 of file qgslegendmodel.cpp.

void QgsLegendModel::updateLayer ( QStandardItem *  layerItem)

Updates the whole symbology of a layer.

Definition at line 480 of file qgslegendmodel.cpp.

void QgsLegendModel::updateRasterClassificationItem ( QStandardItem *  classificationItem)
inline

Definition at line 80 of file qgslegendmodel.h.

void QgsLegendModel::updateVectorV2ClassificationItem ( QStandardItem *  classificationItem,
QgsSymbolV2 symbol,
QString  itemText 
)
inline

Tries to update a single classification item.

Definition at line 78 of file qgslegendmodel.h.

bool QgsLegendModel::writeXML ( QDomElement &  composerLegendElem,
QDomDocument &  doc 
) const

Definition at line 622 of file qgslegendmodel.cpp.

Member Data Documentation

bool QgsLegendModel::mAutoUpdate
protected

True if the legend is auto updated when layers are added or removed from the map canvas.

Definition at line 137 of file qgslegendmodel.h.

bool QgsLegendModel::mHasTopLevelWindow
protected

True if this application has toplevel windows (normally true).

If this is false, this means that the application might not have a running x-server on unix systems and so QPixmap and QIcon cannot be used

Definition at line 134 of file qgslegendmodel.h.

QStringList QgsLegendModel::mLayerIds
protected

Definition at line 131 of file qgslegendmodel.h.


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