Skip to content

Commit

Permalink
[gui] Add option to QGIS Settings->Options->General->Project Files, t…
Browse files Browse the repository at this point in the history
…o authorise loading Python Expression Functions from projects
  • Loading branch information
gacarrillor committed Aug 12, 2024
1 parent 0154950 commit 408655e
Show file tree
Hide file tree
Showing 3 changed files with 227 additions and 181 deletions.
9 changes: 9 additions & 0 deletions src/app/options/qgsoptions.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -236,6 +236,12 @@ QgsOptions::QgsOptions( QWidget *parent, Qt::WindowFlags fl, const QList<QgsOpti
mEnableMacrosComboBox->addItem( tr( "Not During This Session" ), QVariant::fromValue( Qgis::PythonMacroMode::NotForThisSession ) );
mEnableMacrosComboBox->addItem( tr( "Always (Not Recommended)" ), QVariant::fromValue( Qgis::PythonMacroMode::Always ) );

mEnableExpressionsFromProjectComboBox->addItem( tr( "Never" ), QVariant::fromValue( Qgis::PythonExpressionFromProjectMode::Never ) );
mEnableExpressionsFromProjectComboBox->addItem( tr( "Ask" ), QVariant::fromValue( Qgis::PythonExpressionFromProjectMode::Ask ) );
mEnableExpressionsFromProjectComboBox->addItem( tr( "For This Session Only" ), QVariant::fromValue( Qgis::PythonExpressionFromProjectMode::SessionOnly ) );
mEnableExpressionsFromProjectComboBox->addItem( tr( "Not During This Session" ), QVariant::fromValue( Qgis::PythonExpressionFromProjectMode::NotForThisSession ) );
mEnableExpressionsFromProjectComboBox->addItem( tr( "Always (Not Recommended)" ), QVariant::fromValue( Qgis::PythonExpressionFromProjectMode::Always ) );

mIdentifyHighlightColorButton->setColorDialogTitle( tr( "Identify Highlight Color" ) );
mIdentifyHighlightColorButton->setAllowOpacity( true );
mIdentifyHighlightColorButton->setContext( QStringLiteral( "gui" ) );
Expand Down Expand Up @@ -825,6 +831,8 @@ QgsOptions::QgsOptions( QWidget *parent, Qt::WindowFlags fl, const QList<QgsOpti
chbWarnOldProjectVersion->setChecked( mSettings->value( QStringLiteral( "/qgis/warnOldProjectVersion" ), QVariant( true ) ).toBool() );
Qgis::PythonMacroMode pyMacroMode = mSettings->enumValue( QStringLiteral( "/qgis/enableMacros" ), Qgis::PythonMacroMode::Ask );
mEnableMacrosComboBox->setCurrentIndex( mEnableMacrosComboBox->findData( QVariant::fromValue( pyMacroMode ) ) );
Qgis::PythonExpressionFromProjectMode pyExpressionFromProjectMode = mSettings->enumValue( QStringLiteral( "/qgis/enableExpressionsFromProject" ), Qgis::PythonExpressionFromProjectMode::Ask );
mEnableExpressionsFromProjectComboBox->setCurrentIndex( mEnableExpressionsFromProjectComboBox->findData( QVariant::fromValue( pyExpressionFromProjectMode ) ) );

mDefaultPathsComboBox->addItem( tr( "Absolute" ), static_cast< int >( Qgis::FilePathType::Absolute ) );
mDefaultPathsComboBox->addItem( tr( "Relative" ), static_cast< int >( Qgis::FilePathType::Relative ) );
Expand Down Expand Up @@ -1656,6 +1664,7 @@ void QgsOptions::saveOptions()
QgisApp::instance()->updateProjectFromTemplates();
}
mSettings->setEnumValue( QStringLiteral( "/qgis/enableMacros" ), mEnableMacrosComboBox->currentData().value<Qgis::PythonMacroMode>() );
mSettings->setEnumValue( QStringLiteral( "/qgis/enableExpressionsFromProject" ), mEnableExpressionsFromProjectComboBox->currentData().value<Qgis::PythonExpressionFromProjectMode>() );

mSettings->setValue( QStringLiteral( "/qgis/defaultProjectPathsRelative" ),
static_cast< Qgis::FilePathType >( mDefaultPathsComboBox->currentData().toInt() ) == Qgis::FilePathType::Relative );
Expand Down
2 changes: 1 addition & 1 deletion src/gui/qgsgui.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -477,7 +477,7 @@ bool QgsGui::pythonExpressionFromProjectAllowed( const QString &projectFunctions

QgsMessageBarItem *expressionFromProjectMsg = new QgsMessageBarItem(
tr( "Security warning" ),
tr( "Python expressions from project cannot currently be run." ),
tr( "Python expressions from project cannot currently be loaded." ),
btnEnableExpressionsFromProject,
Qgis::MessageLevel::Warning,
0,
Expand Down
Loading

0 comments on commit 408655e

Please sign in to comment.