Mario Kart 64
Loading...
Searching...
No Matches
PortMenu.h
Go to the documentation of this file.
1#ifndef PORTMENU_H
2#define PORTMENU_H
3
4#include <libultraship/libultraship.h>
5#include "UIWidgets.h"
6#include "Menu.h"
7#include "Fast3D/backends/gfx_rendering_api.h"
8
9
10namespace GameUI {
11
12static const std::unordered_map<int32_t, const char*> menuThemeOptions = {
13 { UIWidgets::Colors::Red, "Red" },
14 { UIWidgets::Colors::DarkRed, "Dark Red" },
15 { UIWidgets::Colors::Orange, "Orange" },
16 { UIWidgets::Colors::Green, "Green" },
17 { UIWidgets::Colors::DarkGreen, "Dark Green" },
18 { UIWidgets::Colors::LightBlue, "Light Blue" },
19 { UIWidgets::Colors::Blue, "Blue" },
20 { UIWidgets::Colors::DarkBlue, "Dark Blue" },
21 { UIWidgets::Colors::Indigo, "Indigo" },
22 { UIWidgets::Colors::Violet, "Violet" },
23 { UIWidgets::Colors::Purple, "Purple" },
24 { UIWidgets::Colors::Brown, "Brown" },
25 { UIWidgets::Colors::Gray, "Gray" },
26 { UIWidgets::Colors::DarkGray, "Dark Gray" },
27};
28
29static const std::unordered_map<int32_t, const char*> introBehaviourOptions = {
30 { 0, "Both" },
31 { 1, "Authentic" },
32 { 2, "Start Menu" },
33 { 3, "Main Menu" },
34};
35
36static const std::unordered_map<int32_t, const char*> textureFilteringMap = {
37 { Fast::FilteringMode::FILTER_THREE_POINT, "Three-Point" },
38 { Fast::FilteringMode::FILTER_LINEAR, "Linear" },
39 { Fast::FilteringMode::FILTER_NONE, "None" },
40};
41
42static const std::unordered_map<int32_t, const char*> motionBlurOptions = {
43 { MOTION_BLUR_DYNAMIC, "Dynamic (default)" },
44 { MOTION_BLUR_ALWAYS_OFF, "Always Off" },
45 { MOTION_BLUR_ALWAYS_ON, "Always On" },
46};
47
48static const std::unordered_map<int32_t, const char*> logLevels = {
49 { DEBUG_LOG_TRACE, "Trace" }, { DEBUG_LOG_DEBUG, "Debug" }, { DEBUG_LOG_INFO, "Info" },
50 { DEBUG_LOG_WARN, "Warn" }, { DEBUG_LOG_ERROR, "Error" }, { DEBUG_LOG_CRITICAL, "Critical" },
51 { DEBUG_LOG_OFF, "Off" },
52};
53
54class PortMenu : public Ship::Menu {
55 public:
56 PortMenu(const std::string& consoleVariable, const std::string& name);
58
59 void InitElement() override;
60 void DrawElement() override;
61 void UpdateElement() override;
62 void Draw() override;
63
64 void AddSidebarEntry(std::string sectionName, std::string sidbarName, uint32_t columnCount);
65 WidgetInfo& AddWidget(WidgetPath& pathInfo, std::string widgetName, WidgetType widgetType);
66 void AddSettings();
67 void AddEnhancements();
68 void AddRulesets();
69 void AddDevTools();
70};
71} // namespace BenGui
72
73#endif // PORTMENU_H
@ MOTION_BLUR_DYNAMIC
Definition MenuTypes.h:61
@ MOTION_BLUR_ALWAYS_ON
Definition MenuTypes.h:63
@ MOTION_BLUR_ALWAYS_OFF
Definition MenuTypes.h:62
WidgetType
Definition MenuTypes.h:32
@ DEBUG_LOG_WARN
Definition MenuTypes.h:70
@ DEBUG_LOG_INFO
Definition MenuTypes.h:69
@ DEBUG_LOG_ERROR
Definition MenuTypes.h:71
@ DEBUG_LOG_OFF
Definition MenuTypes.h:73
@ DEBUG_LOG_TRACE
Definition MenuTypes.h:67
@ DEBUG_LOG_DEBUG
Definition MenuTypes.h:68
@ DEBUG_LOG_CRITICAL
Definition MenuTypes.h:72
PortMenu(const std::string &consoleVariable, const std::string &name)
Definition PortMenu.cpp:554
void AddSidebarEntry(std::string sectionName, std::string sidbarName, uint32_t columnCount)
Definition PortMenu.cpp:33
WidgetInfo & AddWidget(WidgetPath &pathInfo, std::string widgetName, WidgetType widgetType)
Definition PortMenu.cpp:40
~PortMenu()
Definition PortMenu.h:57
void InitElement() override
Definition PortMenu.cpp:562
void DrawElement() override
Definition PortMenu.cpp:641
void UpdateElement() override
Definition PortMenu.cpp:633
void AddRulesets()
Definition PortMenu.cpp:431
void AddEnhancements()
Definition PortMenu.cpp:339
void AddSettings()
Definition PortMenu.cpp:92
void Draw() override
Definition PortMenu.cpp:637
void AddDevTools()
Definition PortMenu.cpp:492
Definition Menu.h:18
Definition FreecamWindow.cpp:36
static const std::unordered_map< int32_t, const char * > menuThemeOptions
Definition PortMenu.h:12
static const std::unordered_map< int32_t, const char * > introBehaviourOptions
Definition PortMenu.h:29
static const std::unordered_map< int32_t, const char * > textureFilteringMap
Definition PortMenu.h:36
static const std::unordered_map< int32_t, const char * > logLevels
Definition PortMenu.h:48
static const std::unordered_map< int32_t, const char * > motionBlurOptions
Definition PortMenu.h:42
@ Blue
Definition UIWidgets.h:47
@ Red
Definition UIWidgets.h:41
@ DarkRed
Definition UIWidgets.h:42
@ Purple
Definition UIWidgets.h:51
@ DarkGray
Definition UIWidgets.h:54
@ Violet
Definition UIWidgets.h:50
@ Brown
Definition UIWidgets.h:52
@ Green
Definition UIWidgets.h:44
@ Gray
Definition UIWidgets.h:53
@ DarkBlue
Definition UIWidgets.h:48
@ Indigo
Definition UIWidgets.h:49
@ Orange
Definition UIWidgets.h:43
@ DarkGreen
Definition UIWidgets.h:45
@ LightBlue
Definition UIWidgets.h:46
Definition MenuTypes.h:103
Definition MenuTypes.h:197