mirror of
https://github.com/qgis/QGIS.git
synced 2025-02-24 00:47:57 -05:00
78 lines
2.8 KiB
Plaintext
78 lines
2.8 KiB
Plaintext
/***************************************************************************
|
|
qgsifeatureselectionmanager.sip
|
|
--------------------------------------
|
|
Date : 6.6.2013
|
|
Copyright : (C) 2013 Matthias Kuhn
|
|
Email : matthias dot kuhn at gmx dot ch
|
|
***************************************************************************
|
|
* *
|
|
* This program is free software; you can redistribute it and/or modify *
|
|
* it under the terms of the GNU General Public License as published by *
|
|
* the Free Software Foundation; either version 2 of the License, or *
|
|
* (at your option) any later version. *
|
|
* *
|
|
***************************************************************************/
|
|
|
|
/**
|
|
* Is an interface class to abstract feature selection handling.
|
|
*
|
|
* e.g. @link{QgsVectorLayer} implements this interface to manage its selections.
|
|
*/
|
|
|
|
class QgsIFeatureSelectionManager : QObject
|
|
{
|
|
%TypeHeaderCode
|
|
#include <qgsifeatureselectionmanager.h>
|
|
%End
|
|
public:
|
|
QgsIFeatureSelectionManager( QObject* parent /TransferThis/ );
|
|
|
|
/**
|
|
* The number of features that are selected in this layer
|
|
*
|
|
* @return See description
|
|
*/
|
|
virtual int selectedFeatureCount() = 0;
|
|
|
|
/**
|
|
* Select features
|
|
*
|
|
* @param ids Feature ids to select
|
|
*/
|
|
virtual void select( const QgsFeatureIds& ids ) = 0;
|
|
|
|
/**
|
|
* Deselect features
|
|
*
|
|
* @param ids Feature ids to deselect
|
|
*/
|
|
virtual void deselect( const QgsFeatureIds& ids ) = 0;
|
|
|
|
/**
|
|
* Change selection to the new set of features. Dismisses the current selection.
|
|
* Will emit the { @link selectionChanged( QgsFeatureIds, QgsFeatureIds, bool ) } signal with the
|
|
* clearAndSelect flag set.
|
|
*
|
|
* @param ids The ids which will be the new selection
|
|
*/
|
|
virtual void setSelectedFeatures( const QgsFeatureIds& ids ) = 0;
|
|
|
|
/**
|
|
* Return reference to identifiers of selected features
|
|
*
|
|
* @return A list of { @link QgsFeatureId } 's
|
|
* @see selectedFeatures()
|
|
*/
|
|
virtual const QgsFeatureIds &selectedFeaturesIds() const = 0;
|
|
|
|
signals:
|
|
/**
|
|
* This signal is emitted when selection was changed
|
|
*
|
|
* @param selected Newly selected feature ids
|
|
* @param deselected Ids of all features which have previously been selected but are not any more
|
|
* @param clearAndSelect In case this is set to true, the old selection was dismissed and the new selection corresponds to selected
|
|
*/
|
|
void selectionChanged( const QgsFeatureIds selected, const QgsFeatureIds deselected, const bool clearAndSelect );
|
|
};
|