yaze
0.3.2
Link to the Past ROM Editor
Loading...
Searching...
No Matches
tui.h
Go to the documentation of this file.
1
#ifndef YAZE_CLI_TUI_H
2
#define YAZE_CLI_TUI_H
3
4
// FTXUI is not available on WASM builds
5
#ifndef __EMSCRIPTEN__
6
7
#include <ftxui/component/component.hpp>
8
#include <ftxui/dom/elements.hpp>
9
#include <ftxui/screen/screen.hpp>
10
#include <string>
11
#include <vector>
12
13
#include "
rom/rom.h
"
14
15
namespace
yaze
{
20
namespace
cli {
21
const
std::vector<std::string>
kMainMenuEntries
= {
22
"๐ฎ Load ROM / Quick Start"
,
23
"๐ค AI Agent Chat"
,
24
"๐ TODO Manager"
,
25
"๐ง ROM Tools"
,
26
"๐จ Graphics & Palettes"
,
27
"๐งช Testing & Validation"
,
28
"โ๏ธ Settings"
,
29
"โ Help & Documentation"
,
30
"๐ช Exit"
,
31
};
32
33
enum class
MainMenuEntry
{
34
kLoadRom
,
35
kAIAgentChat
,
36
kTodoManager
,
37
kRomTools
,
38
kGraphicsTools
,
39
kTestingTools
,
40
kSettings
,
41
kHelp
,
42
kExit
,
43
};
44
45
enum class
LayoutID
{
46
kLoadRom
,
47
kAIAgentChat
,
48
kTodoManager
,
49
kRomTools
,
50
kGraphicsTools
,
51
kTestingTools
,
52
kSettings
,
53
kApplyAsarPatch
,
54
kApplyBpsPatch
,
55
kExtractSymbols
,
56
kValidateAssembly
,
57
kGenerateSaveFile
,
58
kPaletteEditor
,
59
kHexViewer
,
60
kCommandPalette
,
61
kHelp
,
62
kExit
,
63
kMainMenu
,
64
kDashboard
,
65
kError
,
66
};
67
68
struct
Context
{
69
Rom
rom
;
70
LayoutID
current_layout
=
LayoutID::kMainMenu
;
71
std::string
error_message
;
72
bool
use_autocomplete
=
true
;
73
bool
show_suggestions
=
true
;
74
};
75
76
static
Context
app_context;
77
78
void
ShowMain
();
79
80
}
// namespace cli
81
}
// namespace yaze
82
83
#endif
// __EMSCRIPTEN__
84
85
#endif
// YAZE_CLI_TUI_H
yaze::Rom
The Rom class is used to load, save, and modify Rom data. This is a generic SNES ROM container and do...
Definition
rom.h:24
yaze::cli::kMainMenuEntries
const std::vector< std::string > kMainMenuEntries
Definition
tui.h:21
yaze::cli::MainMenuEntry
MainMenuEntry
Definition
tui.h:33
yaze::cli::MainMenuEntry::kLoadRom
@ kLoadRom
yaze::cli::MainMenuEntry::kHelp
@ kHelp
yaze::cli::MainMenuEntry::kAIAgentChat
@ kAIAgentChat
yaze::cli::MainMenuEntry::kTodoManager
@ kTodoManager
yaze::cli::MainMenuEntry::kExit
@ kExit
yaze::cli::MainMenuEntry::kGraphicsTools
@ kGraphicsTools
yaze::cli::MainMenuEntry::kSettings
@ kSettings
yaze::cli::MainMenuEntry::kTestingTools
@ kTestingTools
yaze::cli::MainMenuEntry::kRomTools
@ kRomTools
yaze::cli::ShowMain
void ShowMain()
Definition
tui.cc:970
yaze::cli::LayoutID
LayoutID
Definition
tui.h:45
yaze::cli::LayoutID::kDashboard
@ kDashboard
yaze::cli::LayoutID::kCommandPalette
@ kCommandPalette
yaze::cli::LayoutID::kGenerateSaveFile
@ kGenerateSaveFile
yaze::cli::LayoutID::kApplyBpsPatch
@ kApplyBpsPatch
yaze::cli::LayoutID::kExtractSymbols
@ kExtractSymbols
yaze::cli::LayoutID::kMainMenu
@ kMainMenu
yaze::cli::LayoutID::kApplyAsarPatch
@ kApplyAsarPatch
yaze::cli::LayoutID::kValidateAssembly
@ kValidateAssembly
yaze::cli::LayoutID::kHexViewer
@ kHexViewer
yaze::cli::LayoutID::kPaletteEditor
@ kPaletteEditor
yaze::cli::DiagnosticSeverity::kError
@ kError
yaze
Definition
application.cc:18
rom.h
yaze::cli::Context
Definition
tui.h:68
yaze::cli::Context::error_message
std::string error_message
Definition
tui.h:71
yaze::cli::Context::use_autocomplete
bool use_autocomplete
Definition
tui.h:72
yaze::cli::Context::current_layout
LayoutID current_layout
Definition
tui.h:70
yaze::cli::Context::show_suggestions
bool show_suggestions
Definition
tui.h:73
yaze::cli::Context::rom
Rom rom
Definition
tui.h:69
src
cli
tui
tui.h
Generated by
1.10.0