From 2dbfbf3148caf06a14c1c40b4a21a38c282ca7f3 Mon Sep 17 00:00:00 2001 From: Jean Pierre Cimalando Date: Mon, 22 Feb 2021 08:11:47 +0100 Subject: [PATCH] Add editor action to open SFZ dir --- plugins/editor/src/editor/Editor.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/plugins/editor/src/editor/Editor.cpp b/plugins/editor/src/editor/Editor.cpp index 5afaa804..281e1796 100644 --- a/plugins/editor/src/editor/Editor.cpp +++ b/plugins/editor/src/editor/Editor.cpp @@ -58,6 +58,7 @@ struct Editor::Impl : EditorController::Receiver, IControlListener { enum { kTagLoadSfzFile, kTagEditSfzFile, + kTagOpenSfzFolder, kTagPreviousSfzFile, kTagNextSfzFile, kTagFileOperations, @@ -848,6 +849,7 @@ void Editor::Impl::createFrameContents() if (SActionMenu* menu = fileOperationsMenu_) { menu->addEntry("Load file", kTagLoadSfzFile); menu->addEntry("Edit file", kTagEditSfzFile); + menu->addEntry("Open SFZ folder", kTagOpenSfzFolder); } if (SPiano* piano = piano_) { @@ -1320,6 +1322,16 @@ void Editor::Impl::valueChanged(CControl* ctl) openFileInExternalEditor(currentSfzFile_.c_str()); break; + case kTagOpenSfzFolder: + if (value != 1) + break; + + if (!userFilesDir_.empty()) + openDirectoryInExplorer(userFilesDir_.c_str()); + else if (!fallbackFilesDir_.empty()) + openDirectoryInExplorer(fallbackFilesDir_.c_str()); + break; + case kTagPreviousSfzFile: if (value != 1) break;