gearmulator

Emulation of classic VA synths of the late 90s/2000s that are based on Motorola 56300 family DSPs
Log | Files | Refs | Submodules | README | LICENSE

commit d5c00c80a3a939a059b705977ba191e61b6bcded
parent 8114b025965134e72584928175c4376fe80b56b0
Author: dsp56300 <dsp56300@users.noreply.github.com>
Date:   Sun,  2 Mar 2025 12:49:51 +0100

ensure that parseFileData is called also when pasting from clipboard

Diffstat:
Msource/jucePluginEditorLib/patchmanager/patchmanager.cpp | 7++++++-
Msource/jucePluginLib/clipboard.cpp | 7++-----
Msource/jucePluginLib/clipboard.h | 4++--
3 files changed, 10 insertions(+), 8 deletions(-)

diff --git a/source/jucePluginEditorLib/patchmanager/patchmanager.cpp b/source/jucePluginEditorLib/patchmanager/patchmanager.cpp @@ -1049,9 +1049,14 @@ namespace jucePluginEditorLib::patchManager if(data.sysex.empty()) return {}; + pluginLib::patchDB::DataList results; + + if (!parseFileData(results, data.sysex)) + return {}; + std::vector<pluginLib::patchDB::PatchPtr> patches; - for (auto& result : data.sysex) + for (auto& result : results) { if(const auto patch = initializePatch(std::move(result), {})) patches.push_back(patch); diff --git a/source/jucePluginLib/clipboard.cpp b/source/jucePluginLib/clipboard.cpp @@ -37,7 +37,7 @@ namespace pluginLib return ss.str(); } - std::vector<std::vector<uint8_t>> Clipboard::getSysexFromString(const std::string& _text) + std::vector<uint8_t> Clipboard::getSysexFromString(const std::string& _text) { if(_text.empty()) return {}; @@ -83,10 +83,7 @@ namespace pluginLib data.push_back(static_cast<uint8_t>(c)); } - std::vector<std::vector<uint8_t>> results; - synthLib::MidiToSysex::extractSysexFromData(results, data); - - return results; + return data; } std::string Clipboard::parametersToString(Processor& _processor, const std::vector<std::string>& _parameters, const std::string& _regionId) diff --git a/source/jucePluginLib/clipboard.h b/source/jucePluginLib/clipboard.h @@ -28,7 +28,7 @@ namespace pluginLib ParameterValues parameterValues; std::map<std::string,ParameterValues> parameterValuesByRegion; - std::vector<std::vector<uint8_t>> sysex; + std::vector<uint8_t> sysex; bool empty() const { @@ -37,7 +37,7 @@ namespace pluginLib }; static std::string midiDataToString(const std::vector<uint8_t>& _data, uint32_t _bytesPerLine = 32); - static std::vector<std::vector<uint8_t>> getSysexFromString(const std::string& _text); + static std::vector<uint8_t> getSysexFromString(const std::string& _text); static std::string parametersToString(Processor& _processor, const std::vector<std::string>& _parameters, const std::string& _regionId); static std::string createJsonString(Processor& _processor, const std::vector<std::string>& _parameters, const std::string& _regionId, const std::vector<uint8_t>& _sysex); static Data getDataFromString(Processor& _processor, const std::string& _text);