yaze
0.3.2
Link to the Past ROM Editor
Loading...
Searching...
No Matches
dungeon_workbench_toolbar.h
Go to the documentation of this file.
1
#ifndef YAZE_APP_EDITOR_DUNGEON_WIDGETS_DUNGEON_WORKBENCH_TOOLBAR_H
2
#define YAZE_APP_EDITOR_DUNGEON_WIDGETS_DUNGEON_WORKBENCH_TOOLBAR_H
3
4
#include <cstddef>
5
#include <deque>
6
#include <functional>
7
8
#include "
app/editor/dungeon/dungeon_workbench_state.h
"
9
10
namespace
yaze::editor
{
11
12
class
DungeonCanvasViewer;
13
14
struct
DungeonWorkbenchToolbarParams
{
15
DungeonWorkbenchLayoutState
*
layout
=
nullptr
;
16
17
int
*
current_room_id
=
nullptr
;
18
int
*
previous_room_id
=
nullptr
;
19
bool
*
split_view_enabled
=
nullptr
;
20
int
*
compare_room_id
=
nullptr
;
21
22
DungeonCanvasViewer
*
primary_viewer
=
nullptr
;
23
DungeonCanvasViewer
*
compare_viewer
=
nullptr
;
24
25
std::function<void(
int
)>
on_room_selected
;
26
std::function<const std::deque<int>&()>
get_recent_rooms
;
27
std::function<void(
bool
)>
set_workflow_mode
;
28
29
char
*
compare_search_buf
=
nullptr
;
30
size_t
compare_search_buf_size
= 0;
31
};
32
33
// Draws the stitched "Workbench" toolbar (room nav + compare + key view
34
// toggles). Intended to replace per-canvas header chrome in Workbench mode.
35
class
DungeonWorkbenchToolbar
{
36
public
:
37
// Returns true when the user requested switching out of Workbench mode.
38
// Caller should apply that mode change after finishing current ImGui scopes.
39
static
bool
Draw
(
const
DungeonWorkbenchToolbarParams
& params);
40
};
41
42
}
// namespace yaze::editor
43
44
#endif
// YAZE_APP_EDITOR_DUNGEON_WIDGETS_DUNGEON_WORKBENCH_TOOLBAR_H
yaze::editor::DungeonCanvasViewer
Definition
dungeon_canvas_viewer.h:40
yaze::editor::DungeonWorkbenchToolbar
Definition
dungeon_workbench_toolbar.h:35
yaze::editor::DungeonWorkbenchToolbar::Draw
static bool Draw(const DungeonWorkbenchToolbarParams ¶ms)
Definition
dungeon_workbench_toolbar.cc:273
dungeon_workbench_state.h
yaze::editor
Editors are the view controllers for the application.
Definition
patch_export_usage.cc:9
yaze::editor::DungeonWorkbenchLayoutState
Definition
dungeon_workbench_state.h:8
yaze::editor::DungeonWorkbenchToolbarParams
Definition
dungeon_workbench_toolbar.h:14
yaze::editor::DungeonWorkbenchToolbarParams::get_recent_rooms
std::function< const std::deque< int > &()> get_recent_rooms
Definition
dungeon_workbench_toolbar.h:26
yaze::editor::DungeonWorkbenchToolbarParams::primary_viewer
DungeonCanvasViewer * primary_viewer
Definition
dungeon_workbench_toolbar.h:22
yaze::editor::DungeonWorkbenchToolbarParams::previous_room_id
int * previous_room_id
Definition
dungeon_workbench_toolbar.h:18
yaze::editor::DungeonWorkbenchToolbarParams::compare_search_buf
char * compare_search_buf
Definition
dungeon_workbench_toolbar.h:29
yaze::editor::DungeonWorkbenchToolbarParams::compare_viewer
DungeonCanvasViewer * compare_viewer
Definition
dungeon_workbench_toolbar.h:23
yaze::editor::DungeonWorkbenchToolbarParams::on_room_selected
std::function< void(int)> on_room_selected
Definition
dungeon_workbench_toolbar.h:25
yaze::editor::DungeonWorkbenchToolbarParams::split_view_enabled
bool * split_view_enabled
Definition
dungeon_workbench_toolbar.h:19
yaze::editor::DungeonWorkbenchToolbarParams::compare_room_id
int * compare_room_id
Definition
dungeon_workbench_toolbar.h:20
yaze::editor::DungeonWorkbenchToolbarParams::current_room_id
int * current_room_id
Definition
dungeon_workbench_toolbar.h:17
yaze::editor::DungeonWorkbenchToolbarParams::layout
DungeonWorkbenchLayoutState * layout
Definition
dungeon_workbench_toolbar.h:15
yaze::editor::DungeonWorkbenchToolbarParams::compare_search_buf_size
size_t compare_search_buf_size
Definition
dungeon_workbench_toolbar.h:30
yaze::editor::DungeonWorkbenchToolbarParams::set_workflow_mode
std::function< void(bool)> set_workflow_mode
Definition
dungeon_workbench_toolbar.h:27
src
app
editor
dungeon
widgets
dungeon_workbench_toolbar.h
Generated by
1.10.0