QGIS API Documentation 3.41.0-Master (3440c17df1d)
|
This widget is used to show the attributes of a set of features of a QgsVectorLayer. More...
#include <qgsdualview.h>
Public Types | |
enum | FeatureListBrowsingAction { NoAction = 0 , PanToFeature , ZoomToFeature } |
Action on the map canvas when browsing the list of features. More... | |
enum | ViewMode { AttributeTable = 0 , AttributeEditor = 1 } |
The view modes, in which this widget can present information. More... | |
Public Slots | |
void | cancelProgress () |
Cancel the progress dialog (if any) | |
void | copyCellContent () const |
Copy the content of the selected cell in the clipboard. | |
void | openConditionalStyles () |
void | parentFormValueChanged (const QString &attribute, const QVariant &value) |
Called in embedded forms when an attribute value in the parent form has changed. | |
bool | saveEditChanges () |
saveEditChanges | |
void | setCurrentEditSelection (const QgsFeatureIds &fids) |
Set the current edit selection in the AttributeEditor mode. | |
void | setMultiEditEnabled (bool enabled) |
Sets whether multi edit mode is enabled. | |
void | toggleSearchMode (bool enabled) |
Toggles whether search mode should be enabled in the form. | |
Signals | |
void | displayExpressionChanged (const QString &expression) |
Emitted whenever the display expression is successfully changed. | |
void | filterChanged () |
Emitted whenever the filter changes. | |
void | filterExpressionSet (const QString &expression, QgsAttributeForm::FilterType type) |
Emitted when a filter expression is set using the view. | |
void | formModeChanged (QgsAttributeEditorContext::Mode mode) |
Emitted when the form changes mode. | |
void | showContextMenuExternally (QgsActionMenu *menu, QgsFeatureId fid) |
Emitted when selecting context menu on the feature list to create the context menu individually. | |
Public Member Functions | |
QgsDualView (QWidget *parent=nullptr) | |
Constructor. | |
~QgsDualView () override | |
QgsAttributeTableConfig | attributeTableConfig () const |
The config used for the attribute table. | |
int | featureCount () |
Returns the number of features on the layer. | |
int | filteredFeatureCount () |
Returns the number of features which are currently visible, according to the filter restrictions. | |
QgsFeatureIds | filteredFeatures () |
Gets a list of currently visible feature ids. | |
void | filterFeatures (const QgsExpression &filterExpression, const QgsExpressionContext &context) |
Sets the expression and Updates the filtered features in the filter model. | |
QgsAttributeTableFilterModel::FilterMode | filterMode () |
Gets the filter mode. | |
void | init (QgsVectorLayer *layer, QgsMapCanvas *mapCanvas, const QgsFeatureRequest &request=QgsFeatureRequest(), const QgsAttributeEditorContext &context=QgsAttributeEditorContext(), bool loadFeatures=true, bool showFirstFeature=true) |
Has to be called to initialize the dual view. | |
QgsAttributeTableModel * | masterModel () const |
Returns the model which has the information about all features (not only filtered) | |
void | setAttributeTableConfig (const QgsAttributeTableConfig &config) |
Set the attribute table config which should be used to control the appearance of the attribute table. | |
void | setFeatureSelectionManager (QgsIFeatureSelectionManager *featureSelectionManager) |
Set the feature selection model. | |
Q_DECL_DEPRECATED void | setFilteredFeatures (const QgsFeatureIds &filteredFeatures) |
Set a list of currently visible features. | |
void | setFilterMode (QgsAttributeTableFilterModel::FilterMode filterMode) |
Set the filter mode. | |
void | setRequest (const QgsFeatureRequest &request) |
Set the request. | |
void | setSelectedOnTop (bool selectedOnTop) |
Toggle the selectedOnTop flag. | |
void | setSortExpression (const QString &sortExpression, Qt::SortOrder sortOrder=Qt::AscendingOrder) |
Set the expression used for sorting the table and feature list. | |
void | setView (ViewMode view) |
Change the current view mode. | |
QString | sortExpression () const |
Gets the expression used for sorting the table and feature list. | |
QgsAttributeTableView * | tableView () |
Returns the table view. | |
ViewMode | view () const |
Returns the current view mode. | |
Static Public Member Functions | |
static QgsAttributeList | requiredAttributes (const QgsVectorLayer *layer) |
Returns the list of required attributes according to the attribute table configuration of the layer, only visible attributes and virtual fields referenced fields are returned. | |
Protected Member Functions | |
void | hideEvent (QHideEvent *event) override |
Friends | |
class | TestQgsAttributeTable |
class | TestQgsDualView |
This widget is used to show the attributes of a set of features of a QgsVectorLayer.
The attributes can be edited. It supports two different layouts: the table layout, in which the attributes for the features are shown in a table and the editor layout, where the features are shown as a selectable list and the attributes for the currently selected feature are shown in a form.
Definition at line 44 of file qgsdualview.h.
Action on the map canvas when browsing the list of features.
Enumerator | |
---|---|
NoAction | No action is done. |
PanToFeature | The map is panned to the center of the feature bounding-box. |
ZoomToFeature | The map is zoomed to contained the feature bounding-box. |
Definition at line 74 of file qgsdualview.h.
The view modes, in which this widget can present information.
Relates to the QStackedWidget stacks.
Definition at line 55 of file qgsdualview.h.
|
explicit |
|
override |
Definition at line 116 of file qgsdualview.cpp.
QgsAttributeTableConfig QgsDualView::attributeTableConfig | ( | ) | const |
The config used for the attribute table.
Definition at line 1368 of file qgsdualview.cpp.
|
slot |
Cancel the progress dialog (if any)
Definition at line 820 of file qgsdualview.cpp.
|
slot |
Copy the content of the selected cell in the clipboard.
Definition at line 808 of file qgsdualview.cpp.
|
signal |
Emitted whenever the display expression is successfully changed.
expression | The expression that was applied |
int QgsDualView::featureCount | ( | ) |
Returns the number of features on the layer.
Definition at line 798 of file qgsdualview.cpp.
|
signal |
Emitted whenever the filter changes.
int QgsDualView::filteredFeatureCount | ( | ) |
Returns the number of features which are currently visible, according to the filter restrictions.
Definition at line 803 of file qgsdualview.cpp.
|
inline |
Gets a list of currently visible feature ids.
Definition at line 178 of file qgsdualview.h.
|
signal |
Emitted when a filter expression is set using the view.
expression | filter expression |
type | filter type |
void QgsDualView::filterFeatures | ( | const QgsExpression & | filterExpression, |
const QgsExpressionContext & | context | ||
) |
Sets the expression and Updates the filtered features in the filter model.
It is called when the filter expression changed.
Definition at line 1307 of file qgsdualview.cpp.
|
inline |
|
signal |
Emitted when the form changes mode.
mode | new mode |
|
overrideprotected |
Definition at line 834 of file qgsdualview.cpp.
void QgsDualView::init | ( | QgsVectorLayer * | layer, |
QgsMapCanvas * | mapCanvas, | ||
const QgsFeatureRequest & | request = QgsFeatureRequest() , |
||
const QgsAttributeEditorContext & | context = QgsAttributeEditorContext() , |
||
bool | loadFeatures = true , |
||
bool | showFirstFeature = true |
||
) |
Has to be called to initialize the dual view.
layer | The layer which should be used to fetch features |
mapCanvas | The mapCanvas (used for the FilterMode QgsAttributeTableFilterModel::ShowVisible) |
request | Use a modified request to limit the shown features |
context | The context in which this view is shown |
loadFeatures | whether to initially load all features into the view. If set to false , limited features can later be loaded using setFilterMode() |
showFirstFeature | whether to initially show the first feature form upon initializing the dual view |
Definition at line 122 of file qgsdualview.cpp.
|
inline |
Returns the model which has the information about all features (not only filtered)
Definition at line 185 of file qgsdualview.h.
|
slot |
Definition at line 717 of file qgsdualview.cpp.
|
slot |
Called in embedded forms when an attribute value in the parent form has changed.
Notify the form widgets that something has changed in case they have filter expression that depend on the parent form scope.
Definition at line 826 of file qgsdualview.cpp.
|
static |
Returns the list of required attributes according to the attribute table configuration of the layer, only visible attributes and virtual fields referenced fields are returned.
Definition at line 1149 of file qgsdualview.cpp.
|
slot |
saveEditChanges
true
if the saving was OK. false
is possible due to connected validation logic. Definition at line 712 of file qgsdualview.cpp.
void QgsDualView::setAttributeTableConfig | ( | const QgsAttributeTableConfig & | config | ) |
Set the attribute table config which should be used to control the appearance of the attribute table.
Definition at line 1330 of file qgsdualview.cpp.
|
slot |
Set the current edit selection in the AttributeEditor mode.
fids | A list of edited features (Currently only one at a time is supported) |
Definition at line 706 of file qgsdualview.cpp.
void QgsDualView::setFeatureSelectionManager | ( | QgsIFeatureSelectionManager * | featureSelectionManager | ) |
Set the feature selection model.
featureSelectionManager | the feature selection model |
Definition at line 1319 of file qgsdualview.cpp.
void QgsDualView::setFilteredFeatures | ( | const QgsFeatureIds & | filteredFeatures | ) |
Set a list of currently visible features.
filteredFeatures | A list of feature ids |
Definition at line 1302 of file qgsdualview.cpp.
void QgsDualView::setFilterMode | ( | QgsAttributeTableFilterModel::FilterMode | filterMode | ) |
|
slot |
Sets whether multi edit mode is enabled.
Definition at line 722 of file qgsdualview.cpp.
void QgsDualView::setRequest | ( | const QgsFeatureRequest & | request | ) |
void QgsDualView::setSelectedOnTop | ( | bool | selectedOnTop | ) |
Toggle the selectedOnTop flag.
If enabled, selected features will be moved to top.
selectedOnTop | true: Show selected features on top. false: Use defined sorting column. |
Definition at line 433 of file qgsdualview.cpp.
void QgsDualView::setSortExpression | ( | const QString & | sortExpression, |
Qt::SortOrder | sortOrder = Qt::AscendingOrder |
||
) |
Set the expression used for sorting the table and feature list.
Definition at line 1350 of file qgsdualview.cpp.
void QgsDualView::setView | ( | QgsDualView::ViewMode | view | ) |
Change the current view mode.
view | The view mode to set |
Definition at line 299 of file qgsdualview.cpp.
|
signal |
Emitted when selecting context menu on the feature list to create the context menu individually.
menu | context menu |
fid | feature id of the selected feature |
QString QgsDualView::sortExpression | ( | ) | const |
Gets the expression used for sorting the table and feature list.
Definition at line 1363 of file qgsdualview.cpp.
|
inline |
|
slot |
Toggles whether search mode should be enabled in the form.
enabled | set to true to switch on search mode |
Definition at line 740 of file qgsdualview.cpp.
QgsDualView::ViewMode QgsDualView::view | ( | ) | const |
|
friend |
Definition at line 452 of file qgsdualview.h.
|
friend |
Definition at line 451 of file qgsdualview.h.