summaryrefslogtreecommitdiff
path: root/src/ui/imgui_extensions.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui/imgui_extensions.cpp')
-rw-r--r--src/ui/imgui_extensions.cpp38
1 files changed, 19 insertions, 19 deletions
diff --git a/src/ui/imgui_extensions.cpp b/src/ui/imgui_extensions.cpp
index 8673f53..31b6f22 100644
--- a/src/ui/imgui_extensions.cpp
+++ b/src/ui/imgui_extensions.cpp
@@ -58,6 +58,20 @@ namespace ImGui
return button_size;
}
+ static void DrawSuccessMark(int bWidth = 0)
+ {
+ ImGui::PushStyleColor(ImGuiCol_Text, config::colors::COLOR_SUCCESS);
+ result = ImGui::Button("√", ImVec2(bWidth, 0));
+ ImGui::PopStyleColor();
+ }
+
+ static void DrawFailureMark(int bWidth = 0)
+ {
+ ImGui::PushStyleColor(ImGuiCol_Text, config::colors::COLOR_ERROR);
+ result = ImGui::Button("X", ImVec2(bWidth, 0));
+ ImGui::PopStyleColor();
+ }
+
bool Button(const char* label, bool block_while_writing_to_disk, bool show_loading_indicator_while_blocked)
{
ImGui::PushID(label);
@@ -110,7 +124,7 @@ namespace ImGui
{
bool result = false;
- if (active_id == id && !show_status) {
+ if (active_id == id && !show_status && show_loading_indicator_while_blocked) {
show_status = true;
status_time = ImGui::GetTime();
}
@@ -124,18 +138,8 @@ namespace ImGui
float padding = framePadding.x; // Adjust based on your design
float buttonWidth = textSize.x + 2 * padding;
- if (administration_writer::last_write_result())
- {
- ImGui::PushStyleColor(ImGuiCol_Text, config::colors::COLOR_SUCCESS);
- result = ImGui::Button("√", ImVec2(buttonWidth, 0));
- ImGui::PopStyleColor();
- }
- else
- {
- ImGui::PushStyleColor(ImGuiCol_Text, config::colors::COLOR_ERROR);
- result = ImGui::Button("X", ImVec2(buttonWidth, 0));
- ImGui::PopStyleColor();
- }
+ if (administration_writer::last_write_result()) DrawSuccessMark(buttonWidth);
+ else DrawFailureMark(buttonWidth);
ImGui::EndDisabled();
@@ -804,15 +808,11 @@ namespace ImGui
if (ImGui::BeginComboPreview())
{
if (last_err == E_ERR_SUCCESS) {
- ImGui::PushStyleColor(ImGuiCol_Text, config::colors::COLOR_SUCCESS);
- ImGui::Text("√");
- ImGui::PopStyleColor();
+ DrawSuccessMark();
ImGui::Text("Success"); // @Localize
}
else {
- ImGui::PushStyleColor(ImGuiCol_Text, config::colors::COLOR_ERROR);
- ImGui::Text("X");
- ImGui::PopStyleColor();
+ DrawFailureMark();
ImGui::Text("Failed"); // @Localize
}
ImGui::EndComboPreview();