#ifndef EDITOR_MAIN_HPP #define EDITOR_MAIN_HPP #include "../../sdlpp/sdlpp_scene.hpp" #include "../gui/gui.hpp" #include struct SceneStruct { std::shared_ptr scene; std::function &)> doInput; std::function &)> additionalRender; }; extern std::mutex render_mutex; extern std::vector game_scenes; void saveMapCallback(void *input, Button *caller); void loadMapDialogCallback(void *input, Button *caller); SceneStruct createEditorScene(std::shared_ptr &renderer); SceneStruct createEditorMainMenuScene(std::shared_ptr &renderer); SceneStruct createEditorFileChoiceScene(std::shared_ptr &renderer); // TODO move to a shared header SceneStruct createYesNoScene(std::shared_ptr renderer, const std::string &text, std::function finalizer); SceneStruct createOkScene(std::shared_ptr renderer, const std::string &text, std::function finalizer); #endif