diff --git a/UI/frontend-plugins/frontend-tools/data/locale/en-US.ini b/UI/frontend-plugins/frontend-tools/data/locale/en-US.ini index 9eefe2c05..b43843591 100644 --- a/UI/frontend-plugins/frontend-tools/data/locale/en-US.ini +++ b/UI/frontend-plugins/frontend-tools/data/locale/en-US.ini @@ -32,6 +32,7 @@ AddScripts="Add Scripts" RemoveScripts="Remove Scripts" ReloadScripts="Reload Scripts" LoadedScripts="Loaded Scripts" +EditScript="Edit Script" Reload="Reload" OpenFileLocation="Open file location" PythonSettings="Python Settings" diff --git a/UI/frontend-plugins/frontend-tools/forms/scripts.ui b/UI/frontend-plugins/frontend-tools/forms/scripts.ui index e4c299a6e..4217b90b3 100644 --- a/UI/frontend-plugins/frontend-tools/forms/scripts.ui +++ b/UI/frontend-plugins/frontend-tools/forms/scripts.ui @@ -146,6 +146,13 @@ + + + + EditScript + + + diff --git a/UI/frontend-plugins/frontend-tools/scripts.cpp b/UI/frontend-plugins/frontend-tools/scripts.cpp index cafca8866..0a1fa0ece 100644 --- a/UI/frontend-plugins/frontend-tools/scripts.cpp +++ b/UI/frontend-plugins/frontend-tools/scripts.cpp @@ -427,6 +427,16 @@ void ScriptsTool::on_scripts_customContextMenuRequested(const QPoint &pos) popup.exec(QCursor::pos()); } +void ScriptsTool::on_editScript_clicked() +{ + int row = ui->scripts->currentRow(); + if (row == -1) + return; + QUrl url = QUrl::fromLocalFile( + ui->scripts->item(row)->data(Qt::UserRole).toString()); + QDesktopServices::openUrl(url); +} + void ScriptsTool::on_scriptLog_clicked() { scriptLogWindow->show(); diff --git a/UI/frontend-plugins/frontend-tools/scripts.hpp b/UI/frontend-plugins/frontend-tools/scripts.hpp index c511b378e..8d03fc4f1 100644 --- a/UI/frontend-plugins/frontend-tools/scripts.hpp +++ b/UI/frontend-plugins/frontend-tools/scripts.hpp @@ -45,6 +45,7 @@ public slots: void on_addScripts_clicked(); void on_removeScripts_clicked(); void on_reloadScripts_clicked(); + void on_editScript_clicked(); void on_scriptLog_clicked(); void on_defaults_clicked();