4#include <libultraship/libultraship.h>
78using CVarVariant = std::variant<int32_t, const char*, float, Color_RGBA8, Color_RGB8>;
107 std::shared_ptr<UIWidgets::WidgetOptions>
options;
128 options = std::make_shared<UIWidgets::ComboboxOptions>(std::get<UIWidgets::ComboboxOptions>(options_));
132 options = std::make_shared<UIWidgets::CheckboxOptions>(std::get<UIWidgets::CheckboxOptions>(options_));
137 std::make_shared<UIWidgets::FloatSliderOptions>(std::get<UIWidgets::FloatSliderOptions>(options_));
142 std::make_shared<UIWidgets::IntSliderOptions>(std::get<UIWidgets::IntSliderOptions>(options_));
146 options = std::make_shared<UIWidgets::ButtonOptions>(std::get<UIWidgets::ButtonOptions>(options_));
153 options = std::make_shared<UIWidgets::WidgetOptions>(std::get<UIWidgets::WidgetOptions>(options_));
253 std::unordered_map<std::string, SidebarEntry>
sidebars = {};
258 { Ship::AudioBackend::WASAPI,
"Windows Audio Session API" },
259 { Ship::AudioBackend::SDL,
"SDL" },
263 { Ship::WindowBackend::FAST3D_DXGI_DX11,
"DirectX" },
264 { Ship::WindowBackend::FAST3D_SDL_OPENGL,
"OpenGL" },
265 { Ship::WindowBackend::FAST3D_SDL_METAL,
"Metal" },
270 static std::vector<std::function<void()>> menuInitFuncs;
271 return menuInitFuncs;
274 static std::unordered_map<std::string, std::unordered_map<std::string, std::vector<std::function<void()>>>>&
276 static std::unordered_map<std::string, std::unordered_map<std::string, std::vector<std::function<void()>>>>
278 return menuUpdateFuncs;
283 for (
const auto& initFunc : menuInitFuncs) {
293 menuInitFuncs.push_back(initFunc);
301 menuUpdateFuncs[sectionName][sidebarName].push_back(updateFunc);
Definition MenuTypes.h:250
std::string label
Definition MenuTypes.h:251
std::vector< std::string > sidebarOrder
Definition MenuTypes.h:254
std::unordered_map< std::string, SidebarEntry > sidebars
Definition MenuTypes.h:253
const char * sidebarCvar
Definition MenuTypes.h:252
Definition MenuTypes.h:209
const char * reason
Definition MenuTypes.h:211
DisableInfoFunc evaluation
Definition MenuTypes.h:210
int32_t value
Definition MenuTypes.h:213
bool active
Definition MenuTypes.h:212