From 857587c18b4695eacd31457e3c30b4971b4e46e8 Mon Sep 17 00:00:00 2001 From: Gary Talent Date: Sat, 21 Jun 2025 08:31:27 -0500 Subject: [PATCH] [studio] Cleanup --- src/olympic/studio/applib/src/popups/newmenu.cpp | 4 ++-- src/olympic/studio/applib/src/popups/newmenu.hpp | 2 +- src/olympic/studio/applib/src/studioui.cpp | 2 +- src/olympic/studio/modlib/include/studio/itemmaker.hpp | 6 +----- 4 files changed, 5 insertions(+), 9 deletions(-) diff --git a/src/olympic/studio/applib/src/popups/newmenu.cpp b/src/olympic/studio/applib/src/popups/newmenu.cpp index bc95411d..e0b42a2f 100644 --- a/src/olympic/studio/applib/src/popups/newmenu.cpp +++ b/src/olympic/studio/applib/src/popups/newmenu.cpp @@ -80,9 +80,9 @@ void NewMenu::addItemMaker(ox::UPtr &&im) noexcept { }); } -void NewMenu::installItemTemplate(ox::UPtr &tmplt) noexcept { +void NewMenu::installItemTemplate(ox::UPtr &&tmplt) noexcept { for (auto const&im : m_types) { - if (im->installTemplate(tmplt)) { + if (im->installTemplate(std::move(tmplt))) { break; } } diff --git a/src/olympic/studio/applib/src/popups/newmenu.hpp b/src/olympic/studio/applib/src/popups/newmenu.hpp index 35c08d96..12991511 100644 --- a/src/olympic/studio/applib/src/popups/newmenu.hpp +++ b/src/olympic/studio/applib/src/popups/newmenu.hpp @@ -72,7 +72,7 @@ class NewMenu final: public Popup { void addItemMaker(ox::UPtr &&im) noexcept; - void installItemTemplate(ox::UPtr &tmplt) noexcept; + void installItemTemplate(ox::UPtr &&tmplt) noexcept; private: void drawNewItemType(Context const&sctx) noexcept; diff --git a/src/olympic/studio/applib/src/studioui.cpp b/src/olympic/studio/applib/src/studioui.cpp index 2a77eeeb..51acc240 100644 --- a/src/olympic/studio/applib/src/studioui.cpp +++ b/src/olympic/studio/applib/src/studioui.cpp @@ -438,7 +438,7 @@ void StudioUI::loadModule(Module const &mod) noexcept { } auto tmplts = mod.itemTemplates(m_sctx); for (auto &t : tmplts) { - m_newMenu.installItemTemplate(t); + m_newMenu.installItemTemplate(std::move(t)); } } diff --git a/src/olympic/studio/modlib/include/studio/itemmaker.hpp b/src/olympic/studio/modlib/include/studio/itemmaker.hpp index 6d52731a..ecd7be21 100644 --- a/src/olympic/studio/modlib/include/studio/itemmaker.hpp +++ b/src/olympic/studio/modlib/include/studio/itemmaker.hpp @@ -109,7 +109,7 @@ class ItemMaker { return m_typeDisplayName; } - bool installTemplate(ox::UPtr &tmpl) { + bool installTemplate(ox::UPtr &&tmpl) { if (typeName() == tmpl->typeName() && typeVersion() <= tmpl->typeVersion()) { m_templates.emplace_back(std::move(tmpl)); @@ -120,10 +120,6 @@ class ItemMaker { return false; } - bool installTemplate(ox::UPtr &&tmpl) { - return installTemplate(tmpl); - } - constexpr ox::Vector> const&itemTemplates() const noexcept { return m_templates; }