diff options
Diffstat (limited to 'src/ui')
| -rw-r--r-- | src/ui/ui_contacts.cpp | 30 | ||||
| -rw-r--r-- | src/ui/ui_projects.cpp | 19 | ||||
| -rw-r--r-- | src/ui/ui_settings.cpp | 14 |
3 files changed, 54 insertions, 9 deletions
diff --git a/src/ui/ui_contacts.cpp b/src/ui/ui_contacts.cpp index dbe6625..d680ae8 100644 --- a/src/ui/ui_contacts.cpp +++ b/src/ui/ui_contacts.cpp @@ -5,6 +5,7 @@ #include "ui.hpp" #include "imgui.h" #include "administration.hpp" +#include "administration_writer.hpp" #include "locales.hpp" static view_state current_view_state = view_state::LIST; @@ -259,7 +260,14 @@ static void draw_contact_list() ImGui::Separator(); if (ImGui::Button(localize("form.yes"), ImVec2(120, 0))) { - administration_contact_remove(selected_for_removal); + if (administration_contact_remove(selected_for_removal)) { + if (administration_writer_delete_entry(selected_for_removal.id)) { + ui_set_status(localize("status.saved")); + } + else { + ui_set_status_error(localize("status.saveFailed")); + } + } ImGui::CloseCurrentPopup(); } ImGui::SameLine(); @@ -286,7 +294,15 @@ static void ui_draw_contacts_create() // Save button ImGui::Spacing(); if (ImGui::Button(localize("form.save"))) { - administration_contact_add(active_contact); + if (administration_contact_add(active_contact)) { + if (administration_writer_save_contact_blocking(active_contact)) { + ui_set_status(localize("status.saved")); + } + else { + ui_set_status_error(localize("status.saveFailed")); + } + } + current_view_state = view_state::LIST; } if (!can_save) ImGui::EndDisabled(); @@ -305,7 +321,15 @@ static void ui_draw_contacts_update() // Save button ImGui::Spacing(); if (ImGui::Button(localize("form.save"))) { - administration_contact_update(active_contact); + if (administration_contact_update(active_contact)) { + if (administration_writer_save_contact_blocking(active_contact)) { + ui_set_status(localize("status.saved")); + } + else { + ui_set_status_error(localize("status.saveFailed")); + } + } + current_view_state = view_state::LIST; } if (!can_save) ImGui::EndDisabled(); diff --git a/src/ui/ui_projects.cpp b/src/ui/ui_projects.cpp index 8753a94..ca9b845 100644 --- a/src/ui/ui_projects.cpp +++ b/src/ui/ui_projects.cpp @@ -3,6 +3,7 @@ #include "ui.hpp" #include "imgui.h" #include "administration.hpp" +#include "administration_writer.hpp" #include "locales.hpp" static view_state current_view_state = view_state::LIST; @@ -51,11 +52,25 @@ static void draw_project_form() // Save button ImGui::Spacing(); if (ImGui::Button(localize("form.save"))) { - if (current_view_state == view_state::CREATE) + if (current_view_state == view_state::CREATE) { administration_project_add(active_project); + if (administration_writer_save_project_blocking(active_project)) { + ui_set_status(localize("status.saved")); + } + else { + ui_set_status_error(localize("status.saveFailed")); + } + } - else if (current_view_state == view_state::EDIT) + else if (current_view_state == view_state::EDIT) { administration_project_update(active_project); + if (administration_writer_save_project_blocking(active_project)) { + ui_set_status(localize("status.saved")); + } + else { + ui_set_status_error(localize("status.saveFailed")); + } + } current_view_state = view_state::LIST; selected_country = 0; diff --git a/src/ui/ui_settings.cpp b/src/ui/ui_settings.cpp index 75c4918..1d6a5f4 100644 --- a/src/ui/ui_settings.cpp +++ b/src/ui/ui_settings.cpp @@ -125,7 +125,7 @@ static void ui_draw_vat_rates() is_adding_item = false; administration_tax_bracket_update(new_tax_bracket); - if (administration_writer_save_all_tax_brackets()) { + if (administration_writer_save_tax_bracket_blocking(new_tax_bracket)) { ui_set_status(localize("status.saved")); } else { @@ -177,7 +177,7 @@ static void ui_draw_vat_rates() is_adding_item = false; administration_tax_bracket_add(new_tax_bracket); - if (administration_writer_save_all_tax_brackets()) { + if (administration_writer_save_tax_bracket_blocking(new_tax_bracket)) { ui_set_status(localize("status.saved")); } else { @@ -239,7 +239,7 @@ static void ui_draw_cost_centers() is_adding_item = false; administration_cost_center_update(new_cost_center); - if (administration_writer_save_all_cost_centers()) { + if (administration_writer_save_cost_center_blocking(new_cost_center)) { ui_set_status(localize("status.saved")); } else { @@ -300,7 +300,7 @@ static void ui_draw_cost_centers() is_adding_item = false; is_editing_item = false; administration_cost_center_add(new_cost_center); - if (administration_writer_save_all_cost_centers()) { + if (administration_writer_save_cost_center_blocking(new_cost_center)) { ui_set_status(localize("status.saved")); } else { @@ -346,6 +346,12 @@ void ui_draw_settings() ImGui::Spacing(); if (ImGui::Button(localize("form.save"))) { administration_company_info_set(company_info); + if (administration_writer_save_contact_blocking(company_info)) { + ui_set_status(localize("status.saved")); + } + else { + ui_set_status_error(localize("status.saveFailed")); + } } if (!can_save) ImGui::EndDisabled(); |
