diff --git a/src/nostalgia/studio/main.cpp b/src/nostalgia/studio/main.cpp index 97d91a2a..c371a379 100644 --- a/src/nostalgia/studio/main.cpp +++ b/src/nostalgia/studio/main.cpp @@ -16,5 +16,5 @@ int main(int argc, const char **argv) { #endif nostalgia::registerKeelModules(); nostalgia::registerStudioModules(); - return studio::main("Nostalgia Studio", ox::String(".nostalgia"), argc, argv); + return studio::main("Nostalgia Studio", ".nostalgia", argc, argv); } diff --git a/src/studio/applib/include/studioapp/studioapp.hpp b/src/studio/applib/include/studioapp/studioapp.hpp index da02d82e..3d74e02e 100644 --- a/src/studio/applib/include/studioapp/studioapp.hpp +++ b/src/studio/applib/include/studioapp/studioapp.hpp @@ -21,7 +21,7 @@ int main(StudioOptions&&); int main( ox::CRStringView appName, - ox::String projectDataDir, + ox::CRStringView projectDataDir, int argc, const char **argv); diff --git a/src/studio/applib/src/main.cpp b/src/studio/applib/src/main.cpp index cc468a52..64eb99d9 100644 --- a/src/studio/applib/src/main.cpp +++ b/src/studio/applib/src/main.cpp @@ -19,13 +19,13 @@ namespace studio { class StudioUIDrawer: public turbine::gl::Drawer { private: - StudioUI *m_ui = nullptr; + StudioUI &m_ui; public: - explicit StudioUIDrawer(StudioUI *ui) noexcept: m_ui(ui) { + explicit StudioUIDrawer(StudioUI &ui) noexcept: m_ui(ui) { } protected: void draw(turbine::Context&) noexcept final { - m_ui->draw(); + m_ui.draw(); } }; @@ -44,7 +44,7 @@ static void keyEventHandler(turbine::Context &ctx, turbine::Key key, bool down) static ox::Error runApp( ox::CRStringView appName, - ox::String projectDataDir, + ox::CRStringView projectDataDir, ox::UniquePtr fs) noexcept { oxRequireM(ctx, turbine::init(std::move(fs), appName)); turbine::setWindowTitle(*ctx, ctx->keelCtx.appName); @@ -53,9 +53,9 @@ static ox::Error runApp( turbine::setConstantRefresh(*ctx, false); studio::StudioContext studioCtx; turbine::setApplicationData(*ctx, &studioCtx); - StudioUI ui(ctx.get(), std::move(projectDataDir)); + StudioUI ui(ctx.get(), projectDataDir); studioCtx.ui = &ui; - StudioUIDrawer drawer(&ui); + StudioUIDrawer drawer(ui); turbine::gl::addDrawer(*ctx, &drawer); const auto err = turbine::run(*ctx); turbine::gl::removeDrawer(*ctx, &drawer); @@ -64,7 +64,7 @@ static ox::Error runApp( int main( ox::CRStringView appName, - ox::String projectDataDir, + ox::CRStringView projectDataDir, int, const char**) { OX_INIT_DEBUG_LOGGER(loggerConn, appName) @@ -75,13 +75,13 @@ int main( static_cast(time << 1) }); // run app - const auto err = runApp(appName, std::move(projectDataDir), ox::UniquePtr(nullptr)); + const auto err = runApp(appName, projectDataDir, ox::UniquePtr(nullptr)); oxAssert(err, "Something went wrong..."); return static_cast(err); } int main(StudioOptions &&opts, int argc = 0, const char **argv = nullptr) { - return main(opts.appName, std::move(opts.projectDataDir), argc, argv); + return main(opts.appName, opts.projectDataDir, argc, argv); } } diff --git a/src/studio/applib/src/studioapp.cpp b/src/studio/applib/src/studioapp.cpp index c39dc50c..abdd8eb0 100644 --- a/src/studio/applib/src/studioapp.cpp +++ b/src/studio/applib/src/studioapp.cpp @@ -33,9 +33,9 @@ oxModelBegin(StudioConfig) oxModelFieldRename(show_project_explorer, showProjectExplorer) oxModelEnd() -StudioUI::StudioUI(turbine::Context *ctx, ox::String projectDir) noexcept: +StudioUI::StudioUI(turbine::Context *ctx, ox::StringView projectDir) noexcept: m_ctx(ctx), - m_projectDir(std::move(projectDir)), + m_projectDir(projectDir), m_projectExplorer(ox::make_unique(m_ctx)), m_aboutPopup(*ctx) { m_projectExplorer->fileChosen.connect(this, &StudioUI::openFile); @@ -253,8 +253,8 @@ void StudioUI::drawTabs() noexcept { } } -void StudioUI::loadEditorMaker(const studio::EditorMaker &editorMaker) noexcept { - for (const auto &ext : editorMaker.fileTypes) { +void StudioUI::loadEditorMaker(studio::EditorMaker const&editorMaker) noexcept { + for (auto const&ext : editorMaker.fileTypes) { m_editorMakers[ext] = editorMaker.make; } } @@ -370,7 +370,7 @@ ox::Error StudioUI::openFileActiveTab(ox::CRStringView path, bool makeActiveTab) return {}; } -ox::Error StudioUI::closeFile(const ox::String &path) noexcept { +ox::Error StudioUI::closeFile(ox::CRStringView path) noexcept { if (!m_openFiles.contains(path)) { return OxError(0); } diff --git a/src/studio/applib/src/studioapp.hpp b/src/studio/applib/src/studioapp.hpp index 7ed9a00f..8a652536 100644 --- a/src/studio/applib/src/studioapp.hpp +++ b/src/studio/applib/src/studioapp.hpp @@ -44,14 +44,14 @@ class StudioUI: public ox::SignalHandler { bool m_showProjectExplorer = true; public: - explicit StudioUI(turbine::Context *ctx, ox::String projectDir) noexcept; + explicit StudioUI(turbine::Context *ctx, ox::StringView projectDir) noexcept; void update() noexcept; void handleKeyEvent(turbine::Key, bool down) noexcept; [[nodiscard]] - constexpr auto project() noexcept { + constexpr studio::Project *project() noexcept { return m_project.get(); } @@ -65,7 +65,7 @@ class StudioUI: public ox::SignalHandler { void drawTabs() noexcept; - void loadEditorMaker(const studio::EditorMaker &editorMaker) noexcept; + void loadEditorMaker(studio::EditorMaker const&editorMaker) noexcept; void loadModule(const studio::Module *mod) noexcept; @@ -85,7 +85,7 @@ class StudioUI: public ox::SignalHandler { ox::Error openFileActiveTab(ox::CRStringView path, bool makeActiveTab) noexcept; - ox::Error closeFile(const ox::String &path) noexcept; + ox::Error closeFile(ox::CRStringView path) noexcept; }; }