3 #include <spdlog/spdlog.h>
11 this->data_size = data_size;
16 this->font_size = font_size;
24 bool modified =
false;
27 if (current_fs != font_size)
31 ImGui::SetNextItemWidth((
float)
width);
34 sprintf(lab,
"%s##%d", label ? label :
"",
index);
44 modified = ImGui::InputInt(lab, (
int*) data, 0, 0);
47 modified = ImGui::InputFloat(lab, (
float*) data);
52 ImGui::InputText(lab, (
char*) data, data_size);
56 ImGui::InputText(lab, (
char*) data, data_size, ImGuiInputTextFlags_Password);
59 modified = ImGui::InputDouble(lab, (
double*) data);
63 spdlog::error(
"gui_input.cpp - Unrecognized input type");
68 if (current_fs != font_size)
74 if (this->callback !=
nullptr)
80 void gui_input::check_input_limit() {
84 if (*((
int*) data) < i_min) *((
int*) data) = i_min;
85 if (*((
int*) data) > i_max) *((
int*) data) = i_max;
88 if (*((
float*) data) < f_min) *((
float*) data) = f_min;
89 if (*((
float*) data) > f_max) *((
float*) data) = f_max;
92 if (*((
double*) data) < d_min) *((
double*) data) = d_min;
93 if (*((
double*) data) > d_max) *((
double*) data) = d_max;
97 spdlog::error(
"gui_input.cpp - Unrecognized input type of modified value");
121 this->has_min_max =
true;
127 this->has_min_max =
true;
133 this->has_min_max =
true;
139 this->callback = callback;
static std::unique_ptr< app_workspace > & get_instance()
Get the instance app_workspace which is a singleton.
virtual void render_element()
font_size
This enum defines sizes of corresponding fonts. E.g.: SMALL_FONT is 12px.
kb_input_type
Enum holding options of keyboard INPUT mode types.