QgsLayoutConfigObject::QgsLayoutConfigObject( QWidget *parent, QgsLayoutObject *layoutObject ) : QObject( parent ) , mLayoutObject( layoutObject ) { if ( mLayoutObject->layout() ) { connect( &mLayoutObject->layout()->reportContext(), &QgsLayoutReportContext::layerChanged, this, [ = ] { updateDataDefinedButtons(); } ); } if ( layoutAtlas() ) { connect( layoutAtlas(), &QgsLayoutAtlas::toggled, this, &QgsLayoutConfigObject::updateDataDefinedButtons ); } }
void QgsExternalResourceConfigDlg::setConfig( const QVariantMap &config ) { if ( config.contains( QStringLiteral( "FileWidget" ) ) ) { mFileWidgetGroupBox->setChecked( config.value( QStringLiteral( "FileWidget" ) ).toBool() ); } if ( config.contains( QStringLiteral( "FileWidget" ) ) ) { mFileWidgetButtonGroupBox->setChecked( config.value( QStringLiteral( "FileWidgetButton" ) ).toBool() ); } if ( config.contains( QStringLiteral( "FileWidgetFilter" ) ) ) { mFileWidgetFilterLineEdit->setText( config.value( QStringLiteral( "FileWidgetFilter" ) ).toString() ); } if ( config.contains( QStringLiteral( "UseLink" ) ) ) { mUseLink->setChecked( config.value( QStringLiteral( "UseLink" ) ).toBool() ); if ( config.contains( QStringLiteral( "FullUrl" ) ) ) mFullUrl->setChecked( true ); } mPropertyCollection.loadVariant( config.value( QStringLiteral( "PropertyCollection" ) ), QgsWidgetWrapper::propertyDefinitions() ); updateDataDefinedButtons(); mRootPath->setText( config.value( QStringLiteral( "DefaultRoot" ) ).toString() ); // relative storage if ( config.contains( QStringLiteral( "RelativeStorage" ) ) ) { int relative = config.value( QStringLiteral( "RelativeStorage" ) ).toInt(); if ( ( QgsFileWidget::RelativeStorage )relative == QgsFileWidget::Absolute ) { mRelativeGroupBox->setChecked( false ); } else { mRelativeGroupBox->setChecked( true ); mRelativeButtonGroup->button( relative )->setChecked( true ); } } // set storage mode if ( config.contains( QStringLiteral( "StorageMode" ) ) ) { int mode = config.value( QStringLiteral( "StorageMode" ) ).toInt(); mStorageButtonGroup->button( mode )->setChecked( true ); } // Document viewer if ( config.contains( QStringLiteral( "DocumentViewer" ) ) ) { QgsExternalResourceWidget::DocumentViewerContent content = ( QgsExternalResourceWidget::DocumentViewerContent )config.value( QStringLiteral( "DocumentViewer" ) ).toInt(); int idx = mDocumentViewerContentComboBox->findData( content ); if ( idx >= 0 ) { mDocumentViewerContentComboBox->setCurrentIndex( idx ); } if ( config.contains( QStringLiteral( "DocumentViewerHeight" ) ) ) { mDocumentViewerHeight->setValue( config.value( QStringLiteral( "DocumentViewerHeight" ) ).toInt() ); } if ( config.contains( QStringLiteral( "DocumentViewerWidth" ) ) ) { mDocumentViewerWidth->setValue( config.value( QStringLiteral( "DocumentViewerWidth" ) ).toInt() ); } } }