16#ifndef QGSLAYERTREEVIEW_H 
   17#define QGSLAYERTREEVIEW_H 
   36#include <QSortFilterProxyModel> 
   60    void setFilterText( 
const QString &filterText = QString() );
 
   65    bool showPrivateLayers() 
const;
 
   70    void setShowPrivateLayers( 
bool showPrivate );
 
   78    bool hideValidLayers() 
const;
 
   86    void setHideValidLayers( 
bool hideValid );
 
   90    bool filterAcceptsRow( 
int sourceRow, 
const QModelIndex &sourceParent ) 
const override;
 
   98    bool mShowPrivateLayers = 
false;
 
   99    bool mHideValidLayers = 
false;
 
 
  124    if ( sipCpp->inherits( 
"QgsLayerTreeView" ) )
 
  125      sipType = sipType_QgsLayerTreeView;
 
  140    void setModel( QAbstractItemModel *model ) 
override;
 
  234    void setLayerVisible( 
QgsMapLayer *layer, 
bool visible );
 
  274    QList<QgsLayerTreeNode *> selectedNodes( 
bool skipInternal = 
false ) 
const;
 
  283    QList<QgsLayerTreeLayer *> selectedLayerNodes() 
const;
 
  292    QList<QgsMapLayer *> selectedLayers() 
const;
 
  302    QList<QgsLayerTreeModelLegendNode *> selectedLegendNodes() 
const;
 
  310    QList<QgsMapLayer *> selectedLayersRecursive() 
const;
 
  338    QList<QgsLayerTreeViewIndicator *> indicators( 
QgsLayerTreeNode *node ) 
const;
 
  358    static QStringList viewOnlyCustomProperties() 
SIP_SKIP;
 
  366    bool showPrivateLayers() const;
 
  374    bool hideValidLayers() const;
 
  378    void refreshLayerSymbology( const QString &layerId );
 
  383    void expandAllNodes();
 
  388    void collapseAllNodes();
 
  395    void setLayerMarkWidth( 
int width ) { mLayerMarkWidth = width; }
 
  407    void setShowPrivateLayers( 
bool showPrivate );
 
  415    void setHideValidLayers( 
bool hideValid );
 
  434    void contextMenuEvent( QContextMenuEvent *event ) 
override;
 
  438    QgsMapLayer *layerForIndex( 
const QModelIndex &index ) 
const;
 
  440    void mouseDoubleClickEvent( QMouseEvent *event ) 
override;
 
  441    void mouseReleaseEvent( QMouseEvent *event ) 
override;
 
  442    void keyPressEvent( QKeyEvent *event ) 
override;
 
  444    void dragEnterEvent( QDragEnterEvent *event ) 
override;
 
  445    void dragMoveEvent( QDragMoveEvent *event ) 
override;
 
  446    void dropEvent( QDropEvent *event ) 
override;
 
  448    void resizeEvent( QResizeEvent *event ) 
override;
 
  452    void modelRowsInserted( 
const QModelIndex &index, 
int start, 
int end );
 
  453    void modelRowsRemoved();
 
  455    void updateExpandedStateToNode( 
const QModelIndex &index );
 
  457    void onCurrentChanged();
 
  464    void onHorizontalScroll( 
int value );
 
  466    void onDataChanged( 
const QModelIndex &topLeft, 
const QModelIndex &bottomRight, 
const QVector<int> &roles );
 
  476    QHash< QgsLayerTreeNode *, QList<QgsLayerTreeViewIndicator *> > 
mIndicators;
 
  488    bool mShowPrivateLayers = 
false;
 
  489    bool mHideValidLayers = 
false;
 
  491    QTimer *mBlockDoubleClickTimer = 
nullptr;
 
  496    friend class QgsLayerTreeViewItemDelegate;
 
 
QgsLayerTreeFilterProxyModel is a sort filter proxy model to easily reproduce the legend/layer tree i...
 
Layer tree group node serves as a container for layers and further groups.
 
Layer tree node points to a map layer.
 
The QgsLegendRendererItem class is abstract interface for legend items returned from QgsMapLayerLegen...
 
The QgsLayerTreeModel class is model implementation for Qt item views framework.
 
This class is a base class for nodes in a layer tree.
 
The QgsLayerTreeProxyModel class is a proxy model for QgsLayerTreeModel, supports private layers and ...
 
The QgsLayerTreeViewDefaultActions class serves as a factory of actions that can be used together wit...
 
Indicator that can be used in a layer tree view to display icons next to items of the layer tree.
 
The QgsLayerTreeView class extends QTreeView and provides some additional functionality when working ...
 
int mLayerMarkWidth
Width of contextual menu mark for layer nodes.
 
void currentLayerChanged(QgsMapLayer *layer)
Emitted when a current layer is changed.
 
void contextMenuAboutToShow(QMenu *menu)
Emitted when the context menu is about to show.
 
QString mCurrentLayerID
Keeps track of current layer ID (to check when to emit signal about change of current layer)
 
void datasetsDropped(QDropEvent *event)
Emitted when datasets are dropped onto the layer tree view.
 
QHash< QgsLayerTreeNode *, QList< QgsLayerTreeViewIndicator * > > mIndicators
Storage of indicators used with the tree view.
 
QgsLayerTreeViewMenuProvider * menuProvider() const
Returns pointer to the context menu provider. May be nullptr.
 
QPoint mLastReleaseMousePos
Used by the item delegate for identification of which indicator has been clicked.
 
int layerMarkWidth() const
Returns width of contextual menu mark, at right of layer node items.
 
Base class for all map layer types.
 
A bar for displaying non-blocking messages to the user.
 
#define SIP_CONVERT_TO_SUBCLASS_CODE(code)