 |
Blamite Game Engine - blam!
00285.12.18.20.1411.blamite
The core library for the Blamite Game Engine.
|
Go to the documentation of this file.
3 #include "../../debug_ui.h"
4 #include "components/3rdparty/imgui/misc/imgui_stdlib.h"
19 bool show_comments =
false;
28 switch (setting->
type)
32 ImGui::Checkbox(setting->
id.c_str(), setting->
AsBool());
37 ImGui::InputText(setting->
id.c_str(), setting->
GetRawValue());
44 ImGui::ColorEdit4(setting->
id.c_str(), (
float*)&
color);
55 ImGui::InputInt(setting->
id.c_str(), setting->
AsInt());
60 ImGui::InputFloat(setting->
id.c_str(), setting->
AsFloat());
65 ImGui::TextDisabled(setting->
AsString()->c_str());
70 ImGui::TextColored(ImVec4(1, 0, 0, 1), std::string(
"unsupported setting type (" + setting->
id +
")").c_str());
82 std::vector<BlamConfigurationSetting*> settings_to_show = std::vector<BlamConfigurationSetting*>();
84 std::map<std::string, BlamConfigurationSetting*>::iterator it;
92 settings_to_show.push_back(it->second);
97 settings_to_show.push_back(it->second);
101 if (settings_to_show.size() > 0)
103 if (ImGui::CollapsingHeader(section->
name.c_str()))
105 for (
int i = 0; i < settings_to_show.size(); i++)
107 GenerateConfigurationSettingControl(settings_to_show.at(i));
119 if (ImGui::Begin(
"Configuration Editor", &
show))
121 if (ImGui::BeginTabBar(
"config_editor_tabs", ImGuiTabBarFlags_NoTooltip))
125 std::map<std::string, BlamConfigurationFile>::iterator it;
131 if (ImGui::BeginTabItem(config_file->
filename.c_str()))
133 if (ImGui::Button(
"reload"))
140 if (ImGui::Button(
"save"))
147 ImGui::Checkbox(
"show comments", &show_comments);
149 std::map<std::string, BlamConfigurationSection*>::iterator sit;
151 for (sit = config_file->
sections.begin(); sit != config_file->
sections.end(); sit++)
153 GenerateConfigurationSectionControl(sit->second);
BlamColor * AsColor()
Retrieves the setting value as a color.
Definition: BlamConfigurationSetting.cpp:238
Structure representing a configuration section.
Definition: config.h:149
BLAM std::map< std::string, BlamConfigurationFile > * GetConfigurationFiles()
Definition: config_new.cpp:116
std::string name
Definition: config.h:157
std::map< std::string, BlamConfigurationSetting * > settings
Definition: config.h:155
float * AsFloat()
Retrieves the setting value as a float.
Definition: BlamConfigurationSetting.cpp:212
Class representing a configuration setting.
Definition: config.h:42
unsigned char a
The Alpha value of the color.
Definition: globals.h:26
@ color
Definition: render_model.h:12
std::string * AsString()
Retrieves the setting value as a string.
Definition: BlamConfigurationSetting.cpp:189
std::map< std::string, BlamConfigurationSection * > sections
Definition: config.h:245
void Save()
Saves the configuration file back to disk.
Definition: BlamConfigurationFile.cpp:186
BlamConfigurationSettingType type
The type of setting that's being stored.
Definition: config.h:63
std::map< std::string, Blam::Config::ConfigFile > config_files
Stores all configuration files loaded using LoadConfig().
Definition: config_internal.cpp:12
Class for the modern Config Editor.
Definition: config_editor.hpp:16
int * AsInt()
Retrieves the setting value as an int.
Definition: BlamConfigurationSetting.cpp:225
std::string * GetRawValue()
Definition: BlamConfigurationSetting.cpp:303
bool show
Controls whether or not the group should be shown. May not be used in all groups.
Definition: debug_ui.h:362
Class representing an ImGUI drawing group/draw list item.
Definition: debug_ui.h:359
bool * AsBool()
Retrieves the setting value as a bool.
Definition: BlamConfigurationSetting.cpp:199
unsigned char g
The Green value of the color.
Definition: globals.h:24
unsigned char b
The Blue value of the color.
Definition: globals.h:25
float GetBlueAsFloat()
Gets the color's red value as a float, between 0 and 1.
Definition: globals.h:87
std::string filename
Definition: config.h:247
float GetRedAsFloat()
Gets the color's red value as a float, between 0 and 1.
Definition: globals.h:67
float GetGreenAsFloat()
Gets the color's red value as a float, between 0 and 1.
Definition: globals.h:77
Legacy namespace to contain data for the legacy ImGUI console.
Definition: debug_ui.h:434
std::string id
The name of the setting.
Definition: config.h:62
void Draw()
Draws the contents of the group.
Definition: config_editor.hpp:115
float GetAlphaAsFloat()
Gets the color's red value as a float, between 0 and 1.
Definition: globals.h:97
unsigned char r
The Red value of the color.
Definition: globals.h:23
BlamResult Reload()
Cleans up old data and reloads the configuration file from disk.
Definition: BlamConfigurationFile.cpp:174