mirror of
https://github.com/qgis/QGIS.git
synced 2025-02-27 00:33:48 -05:00
Rationale: - there was a lot of large objects passed by value, so potentially there's a speed bump from this - even for implicitly shared classes like QString/QList there's still a (small) cost for copying the objects when there's no reason to - it's the right thing to do!
51 lines
1.6 KiB
Plaintext
51 lines
1.6 KiB
Plaintext
/**
|
|
* @brief The QgsMapLayerComboBox class is a combo box which displays the list of layers
|
|
* @note added in 2.3
|
|
*/
|
|
class QgsMapLayerComboBox : QComboBox
|
|
{
|
|
|
|
%TypeHeaderCode
|
|
#include "qgsmaplayercombobox.h"
|
|
%End
|
|
|
|
public:
|
|
/**
|
|
* @brief QgsMapLayerComboBox creates a combo box to dislpay the list of layers (currently in the registry).
|
|
* The layers can be filtered and/or ordered.
|
|
*/
|
|
explicit QgsMapLayerComboBox( QWidget *parent /TransferThis/ = 0 );
|
|
|
|
//! setFilters allows fitering according to layer type and/or geometry type.
|
|
void setFilters( const QgsMapLayerProxyModel::Filters& filters );
|
|
|
|
//! currently used filter on list layers
|
|
QgsMapLayerProxyModel::Filters filters() const;
|
|
|
|
//! except a list of layers not to be listed
|
|
void setExceptedLayerList( const QList<QgsMapLayer*>& layerList );
|
|
|
|
//! returns the list of excepted layers
|
|
QList<QgsMapLayer*> exceptedLayerList() const;
|
|
|
|
/** Returns the current layer selected in the combo box.
|
|
* @see layer
|
|
*/
|
|
QgsMapLayer* currentLayer() const;
|
|
|
|
/** Return the layer currently shown at the specified index within the combo box.
|
|
* @param layerIndex position of layer to return
|
|
* @note added in QGIS 2.10
|
|
* @see currentLayer
|
|
*/
|
|
QgsMapLayer* layer( int layerIndex ) const;
|
|
|
|
public slots:
|
|
//! setLayer set the current layer selected in the combo
|
|
void setLayer( QgsMapLayer* layer );
|
|
|
|
signals:
|
|
//! layerChanged this signal is emitted whenever the currently selected layer changes
|
|
void layerChanged( QgsMapLayer* layer );
|
|
};
|