yaze
0.3.2
Link to the Past ROM Editor
Loading...
Searching...
No Matches
dungeon_toolset.h
Go to the documentation of this file.
1
#ifndef YAZE_APP_EDITOR_DUNGEON_DUNGEON_TOOLSET_H
2
#define YAZE_APP_EDITOR_DUNGEON_DUNGEON_TOOLSET_H
3
4
#include <functional>
5
#include <array>
6
7
#include "imgui/imgui.h"
8
9
namespace
yaze
{
10
namespace
editor {
11
18
class
DungeonToolset
{
19
public
:
20
enum
BackgroundType
{
21
kNoBackground
,
22
kBackground1
,
23
kBackground2
,
24
kBackground3
,
25
kBackgroundAny
,
26
};
27
28
enum
PlacementType
{
29
kNoType
,
30
kObject
,
// Object editing mode
31
kSprite
,
// Sprite editing mode
32
kItem
,
// Item placement mode
33
kEntrance
,
// Entrance/exit editing mode
34
kDoor
,
// Door configuration mode
35
kChest
,
// Chest management mode
36
kBlock
// Legacy block mode
37
};
38
39
DungeonToolset
() =
default
;
40
41
void
Draw
();
42
43
// Getters
44
BackgroundType
background_type
()
const
{
return
background_type_
; }
45
PlacementType
placement_type
()
const
{
return
placement_type_
; }
46
47
// Setters
48
void
set_background_type
(
BackgroundType
type) {
background_type_
= type; }
49
void
set_placement_type
(
PlacementType
type) {
placement_type_
= type; }
50
51
// Callbacks
52
void
SetUndoCallback
(std::function<
void
()> callback) {
undo_callback_
= callback; }
53
void
SetRedoCallback
(std::function<
void
()> callback) {
redo_callback_
= callback; }
54
void
SetPaletteToggleCallback
(std::function<
void
()> callback) {
palette_toggle_callback_
= callback; }
55
56
private
:
57
BackgroundType
background_type_
=
kBackgroundAny
;
58
PlacementType
placement_type_
=
kNoType
;
59
60
// Callbacks for editor actions
61
std::function<void()>
undo_callback_
;
62
std::function<void()>
redo_callback_
;
63
std::function<void()>
palette_toggle_callback_
;
64
};
65
66
}
// namespace editor
67
}
// namespace yaze
68
69
#endif
// YAZE_APP_EDITOR_DUNGEON_DUNGEON_TOOLSET_H
yaze::editor::DungeonToolset
Handles the dungeon editor toolset UI.
Definition
dungeon_toolset.h:18
yaze::editor::DungeonToolset::SetUndoCallback
void SetUndoCallback(std::function< void()> callback)
Definition
dungeon_toolset.h:52
yaze::editor::DungeonToolset::set_background_type
void set_background_type(BackgroundType type)
Definition
dungeon_toolset.h:48
yaze::editor::DungeonToolset::SetPaletteToggleCallback
void SetPaletteToggleCallback(std::function< void()> callback)
Definition
dungeon_toolset.h:54
yaze::editor::DungeonToolset::DungeonToolset
DungeonToolset()=default
yaze::editor::DungeonToolset::undo_callback_
std::function< void()> undo_callback_
Definition
dungeon_toolset.h:61
yaze::editor::DungeonToolset::placement_type
PlacementType placement_type() const
Definition
dungeon_toolset.h:45
yaze::editor::DungeonToolset::BackgroundType
BackgroundType
Definition
dungeon_toolset.h:20
yaze::editor::DungeonToolset::kNoBackground
@ kNoBackground
Definition
dungeon_toolset.h:21
yaze::editor::DungeonToolset::kBackgroundAny
@ kBackgroundAny
Definition
dungeon_toolset.h:25
yaze::editor::DungeonToolset::kBackground3
@ kBackground3
Definition
dungeon_toolset.h:24
yaze::editor::DungeonToolset::kBackground1
@ kBackground1
Definition
dungeon_toolset.h:22
yaze::editor::DungeonToolset::kBackground2
@ kBackground2
Definition
dungeon_toolset.h:23
yaze::editor::DungeonToolset::Draw
void Draw()
Definition
dungeon_toolset.cc:19
yaze::editor::DungeonToolset::palette_toggle_callback_
std::function< void()> palette_toggle_callback_
Definition
dungeon_toolset.h:63
yaze::editor::DungeonToolset::set_placement_type
void set_placement_type(PlacementType type)
Definition
dungeon_toolset.h:49
yaze::editor::DungeonToolset::PlacementType
PlacementType
Definition
dungeon_toolset.h:28
yaze::editor::DungeonToolset::kSprite
@ kSprite
Definition
dungeon_toolset.h:31
yaze::editor::DungeonToolset::kBlock
@ kBlock
Definition
dungeon_toolset.h:36
yaze::editor::DungeonToolset::kChest
@ kChest
Definition
dungeon_toolset.h:35
yaze::editor::DungeonToolset::kItem
@ kItem
Definition
dungeon_toolset.h:32
yaze::editor::DungeonToolset::kDoor
@ kDoor
Definition
dungeon_toolset.h:34
yaze::editor::DungeonToolset::kNoType
@ kNoType
Definition
dungeon_toolset.h:29
yaze::editor::DungeonToolset::kEntrance
@ kEntrance
Definition
dungeon_toolset.h:33
yaze::editor::DungeonToolset::kObject
@ kObject
Definition
dungeon_toolset.h:30
yaze::editor::DungeonToolset::SetRedoCallback
void SetRedoCallback(std::function< void()> callback)
Definition
dungeon_toolset.h:53
yaze::editor::DungeonToolset::background_type_
BackgroundType background_type_
Definition
dungeon_toolset.h:57
yaze::editor::DungeonToolset::placement_type_
PlacementType placement_type_
Definition
dungeon_toolset.h:58
yaze::editor::DungeonToolset::redo_callback_
std::function< void()> redo_callback_
Definition
dungeon_toolset.h:62
yaze::editor::DungeonToolset::background_type
BackgroundType background_type() const
Definition
dungeon_toolset.h:44
yaze
Main namespace for the application.
Definition
asar_wrapper.cc:14
src
app
editor
dungeon
dungeon_toolset.h
Generated by
1.9.8