QGIS API Documentation  3.20.0-Odense (decaadbb31)
qgsjsoneditconfigdlg.cpp
Go to the documentation of this file.
1 /***************************************************************************
2  qgsjsoneditconfigdlg.cpp
3  --------------------------------------
4  Date : 3.5.2021
5  Copyright : (C) 2021 Damiano Lombardi
6  Email : damiano 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 
16 #include "qgsjsoneditconfigdlg.h"
17 
18 QgsJsonEditConfigDlg::QgsJsonEditConfigDlg( QgsVectorLayer *vl, int fieldIdx, QWidget *parent )
19  : QgsEditorConfigWidget( vl, fieldIdx, parent )
20 {
21  setupUi( this );
22  connect( mDefaultViewComboBox, qOverload<int>( &QComboBox::currentIndexChanged ), this, &QgsEditorConfigWidget::changed );
23  connect( mFormatJsonComboBox, qOverload<int>( &QComboBox::currentIndexChanged ), this, &QgsEditorConfigWidget::changed );
24 }
25 
26 
28 {
29  QVariantMap cfg;
30 
31  cfg.insert( QStringLiteral( "DefaultView" ), mDefaultViewComboBox->currentIndex() );
32  cfg.insert( QStringLiteral( "FormatJson" ), mFormatJsonComboBox->currentIndex() );
33 
34  return cfg;
35 }
36 
37 void QgsJsonEditConfigDlg::setConfig( const QVariantMap &config )
38 {
39  mDefaultViewComboBox->setCurrentIndex( config.value( QStringLiteral( "DefaultView" ) ).toInt() );
40  mFormatJsonComboBox->setCurrentIndex( config.value( QStringLiteral( "FormatJson" ) ).toInt() );
41 }
This class should be subclassed for every configurable editor widget type.
void changed()
Emitted when the configuration of the widget is changed.
void setConfig(const QVariantMap &config) override
Update the configuration widget to represent the given configuration.
QVariantMap config() override
Create a configuration from the current GUI state.
QgsJsonEditConfigDlg(QgsVectorLayer *vl, int fieldIdx, QWidget *parent=nullptr)
Constructor for QgsJsonEditWidget.
Represents a vector layer which manages a vector based data sets.