summaryrefslogtreecommitdiff
path: root/src/ui
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui')
-rw-r--r--src/ui/ui_contacts.cpp30
-rw-r--r--src/ui/ui_projects.cpp19
-rw-r--r--src/ui/ui_settings.cpp14
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();