mirror of
				https://github.com/qgis/QGIS.git
				synced 2025-11-03 00:14:12 -05:00 
			
		
		
		
	
		
			
				
	
	
		
			76 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			76 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
 | 
						|
/**
 | 
						|
 * @brief The QgsMapLayerModel class is a model to display layers in widgets.
 | 
						|
 * @see QgsMapLayerProxyModel to sort and/filter the layers
 | 
						|
 * @see QgsFieldModel to combine in with a field selector.
 | 
						|
 * @note added in 2.3
 | 
						|
 */
 | 
						|
class QgsMapLayerModel : QAbstractItemModel
 | 
						|
{
 | 
						|
 | 
						|
%TypeHeaderCode
 | 
						|
#include "qgsmaplayermodel.h"
 | 
						|
%End
 | 
						|
 | 
						|
  public:
 | 
						|
 | 
						|
    //! Item data roles
 | 
						|
    enum ItemDataRole
 | 
						|
    {
 | 
						|
      LayerIdRole, /*!< Stores the map layer ID */
 | 
						|
      LayerRole, /*!< Stores pointer to the map layer itself */
 | 
						|
    };
 | 
						|
 | 
						|
    /**
 | 
						|
     * @brief QgsMapLayerModel creates a model to display layers in widgets.
 | 
						|
     */
 | 
						|
    explicit QgsMapLayerModel( QObject *parent /TransferThis/ = 0 );
 | 
						|
    /**
 | 
						|
     * @brief QgsMapLayerModel creates a model to display a specific list of layers in a widget.
 | 
						|
     */
 | 
						|
    explicit QgsMapLayerModel( const QList<QgsMapLayer*>& layers, QObject *parent /TransferThis/ = 0 );
 | 
						|
 | 
						|
    /**
 | 
						|
     * @brief setItemsCheckable defines if layers should be selectable in the widget
 | 
						|
     */
 | 
						|
    void setItemsCheckable( bool checkable );
 | 
						|
    /**
 | 
						|
     * @brief checkAll changes the checkstate for all the layers
 | 
						|
     */
 | 
						|
    void checkAll( Qt::CheckState checkState );
 | 
						|
    /**
 | 
						|
     * @brief layersChecked returns the list of layers which are checked (or unchecked)
 | 
						|
     */
 | 
						|
    QList<QgsMapLayer*> layersChecked( Qt::CheckState checkState = Qt::Checked );
 | 
						|
    //! returns if the items can be checked or not
 | 
						|
    bool itemsCheckable() const;
 | 
						|
 | 
						|
    /**
 | 
						|
     * @brief indexFromLayer returns the model index for a given layer
 | 
						|
     */
 | 
						|
    QModelIndex indexFromLayer( QgsMapLayer* layer ) const;
 | 
						|
 | 
						|
 | 
						|
  protected slots:
 | 
						|
    void removeLayers( const QStringList& layerIds );
 | 
						|
    void addLayers( const QList<QgsMapLayer*>& layers );
 | 
						|
 | 
						|
    // QAbstractItemModel interface
 | 
						|
  public:
 | 
						|
    QModelIndex index( int row, int column, const QModelIndex &parent = QModelIndex() ) const;
 | 
						|
    QModelIndex parent( const QModelIndex &child ) const;
 | 
						|
    int rowCount( const QModelIndex &parent ) const;
 | 
						|
    int columnCount( const QModelIndex &parent ) const;
 | 
						|
    QVariant data( const QModelIndex &index, int role ) const;
 | 
						|
%If (QT5_SUPPORT)
 | 
						|
    /**
 | 
						|
     * Returns strings for all roles supported by this model.
 | 
						|
     *
 | 
						|
     * @note Available only with Qt5 (python and c++)
 | 
						|
     */
 | 
						|
    QHash<int, QByteArray> roleNames() const;
 | 
						|
%End
 | 
						|
    bool setData( const QModelIndex &index, const QVariant &value, int role );
 | 
						|
    Qt::ItemFlags flags( const QModelIndex &index ) const;
 | 
						|
};
 |