diff --git a/src/frontend/menu.cpp b/src/frontend/menu.cpp index 64f8affb..1e279ae4 100644 --- a/src/frontend/menu.cpp +++ b/src/frontend/menu.cpp @@ -86,25 +86,25 @@ bool menus::call(Engine& engine, runnable func) { engine.setScreen(std::make_shared(engine)); // could not to find or read pack guiutil::alert( - gui, langs::get(L"error.pack-not-found")+L": "+ + gui->getMenu(), langs::get(L"error.pack-not-found")+L": "+ util::str2wstr_utf8(error.getPackId()) ); return false; } catch (const assetload::error& error) { engine.setScreen(std::make_shared(engine)); guiutil::alert( - gui, langs::get(L"Assets Load Error", L"menu")+L":\n"+ + gui->getMenu(), langs::get(L"Assets Load Error", L"menu")+L":\n"+ util::str2wstr_utf8(error.what()) ); return false; } catch (const parsing_error& error) { engine.setScreen(std::make_shared(engine)); - guiutil::alert(gui, util::str2wstr_utf8(error.errorLog())); + guiutil::alert(gui->getMenu(), util::str2wstr_utf8(error.errorLog())); return false; } catch (const std::runtime_error& error) { engine.setScreen(std::make_shared(engine)); guiutil::alert( - gui, langs::get(L"Content Error", L"menu")+L":\n"+ + gui->getMenu(), langs::get(L"Content Error", L"menu")+L":\n"+ util::str2wstr_utf8(error.what()) ); return false; diff --git a/src/graphics/ui/gui_util.cpp b/src/graphics/ui/gui_util.cpp index 95e37514..0d913395 100644 --- a/src/graphics/ui/gui_util.cpp +++ b/src/graphics/ui/gui_util.cpp @@ -23,8 +23,11 @@ std::shared_ptr guiutil::create(const std::string& source, scripten return reader.readXML("[string]", source); } -void guiutil::alert(GUI* gui, const std::wstring& text, const runnable& on_hidden) { - auto menu = gui->getMenu(); +void guiutil::alert( + const std::shared_ptr& menu, + const std::wstring& text, + const runnable& on_hidden +) { auto panel = std::make_shared(glm::vec2(500, 300), glm::vec4(8.0f), 8.0f); panel->setColor(glm::vec4(0.0f, 0.0f, 0.0f, 0.5f)); @@ -47,7 +50,7 @@ void guiutil::alert(GUI* gui, const std::wstring& text, const runnable& on_hidde } void guiutil::confirm( - GUI* gui, + const std::shared_ptr& menu, const std::wstring& text, const runnable& on_confirm, std::wstring yestext, @@ -55,7 +58,6 @@ void guiutil::confirm( if (yestext.empty()) yestext = langs::get(L"Yes"); if (notext.empty()) notext = langs::get(L"No"); - auto menu = gui->getMenu(); auto panel = std::make_shared(glm::vec2(600, 200), glm::vec4(8.0f), 8.0f); panel->setColor(glm::vec4(0.0f, 0.0f, 0.0f, 0.5f)); panel->add(std::make_shared