QGIS API Documentation 3.37.0-Master (fdefdf9c27f)
qgsgenericfeatureselectionmanager.cpp
Go to the documentation of this file.
1/***************************************************************************
2 qgsgenericfeatureselectionmanager.cpp
3 --------------------------------------
4 Date : 11.6.2013
5 Copyright : (C) 2013 Matthias Kuhn
6 Email : matthias at opengis dot ch
7 ***************************************************************************
8 * *
9 * This program is free software; you can redistribute it and/or modify *
10 * it under the terms of the GNU General Public License as published by *
11 * the Free Software Foundation; either version 2 of the License, or *
12 * (at your option) any later version. *
13 * *
14 ***************************************************************************/
15
17
20{
21}
22
25 , mSelectedFeatures( initialSelection )
26{
27}
28
30{
31 return mSelectedFeatures.size();
32}
33
35{
36 mSelectedFeatures += ids;
37 emit selectionChanged( ids, QgsFeatureIds(), false );
38}
39
41{
42 mSelectedFeatures -= ids;
43 emit selectionChanged( QgsFeatureIds(), ids, false );
44}
45
47{
48 const QgsFeatureIds selected = mSelectedFeatures - ids;
49 const QgsFeatureIds deselected = ids - mSelectedFeatures;
50
51 mSelectedFeatures = ids;
52 emit selectionChanged( selected, deselected, true );
53}
54
56{
57 return mSelectedFeatures;
58}
void select(const QgsFeatureIds &ids) override
Select features by feature ids.
int selectedFeatureCount() override
Returns the number of features that are selected in this layer.
void deselect(const QgsFeatureIds &ids) override
Deselect features by feature ids.
const QgsFeatureIds & selectedFeatureIds() const override
Returns reference to identifiers of selected features.
void setSelectedFeatures(const QgsFeatureIds &ids) override
Change selection to the new set of features.
Is an interface class to abstract feature selection handling.
void selectionChanged(const QgsFeatureIds &selected, const QgsFeatureIds &deselected, bool clearAndSelect)
Emitted when selection was changed.
QSet< QgsFeatureId > QgsFeatureIds
Definition: qgsfeatureid.h:37