yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
window_sidebar.h
Go to the documentation of this file.
1#ifndef YAZE_APP_EDITOR_MENU_WINDOW_SIDEBAR_H_
2#define YAZE_APP_EDITOR_MENU_WINDOW_SIDEBAR_H_
3
4#include <functional>
5#include <string>
6
7namespace yaze {
8namespace editor {
9
10class WorkspaceWindowManager;
11
13 public:
14 explicit WindowSidebar(
15 WorkspaceWindowManager& window_manager,
16 std::function<bool()> is_dungeon_workbench_mode = {},
17 std::function<void(bool)> set_dungeon_workflow_mode = {},
18 std::function<float()> get_bottom_reserved_height = {});
19
20 static bool MatchesWindowSearch(const std::string& query,
21 const std::string& display_name,
22 const std::string& window_id,
23 const std::string& shortcut_hint);
24 static bool IsDungeonWindowModeTarget(const std::string& window_id);
25
26 void Draw(size_t session_id, const std::string& category,
27 std::function<bool()> has_rom);
28
29 private:
31 std::function<bool()> is_dungeon_workbench_mode_;
32 std::function<void(bool)> set_dungeon_workflow_mode_;
33 std::function<float()> get_bottom_reserved_height_;
34 char sidebar_search_[256] = {};
35};
36
37} // namespace editor
38} // namespace yaze
39
40#endif // YAZE_APP_EDITOR_MENU_WINDOW_SIDEBAR_H_
void Draw(size_t session_id, const std::string &category, std::function< bool()> has_rom)
std::function< void(bool)> set_dungeon_workflow_mode_
WindowSidebar(WorkspaceWindowManager &window_manager, std::function< bool()> is_dungeon_workbench_mode={}, std::function< void(bool)> set_dungeon_workflow_mode={}, std::function< float()> get_bottom_reserved_height={})
std::function< bool()> is_dungeon_workbench_mode_
static bool IsDungeonWindowModeTarget(const std::string &window_id)
WorkspaceWindowManager & window_manager_
std::function< float()> get_bottom_reserved_height_
static bool MatchesWindowSearch(const std::string &query, const std::string &display_name, const std::string &window_id, const std::string &shortcut_hint)
Central registry for all editor cards with session awareness and dependency injection.