diff options
| author | Aldrik Ramaekers <aldrikboy@gmail.com> | 2025-11-01 14:09:04 +0100 |
|---|---|---|
| committer | Aldrik Ramaekers <aldrikboy@gmail.com> | 2025-11-01 14:09:04 +0100 |
| commit | a2918b9724a65ba147cfafc6bcf8d410a647330b (patch) | |
| tree | 3b8ca3ee934a239f458b889f06beb673fa32ffa4 /src | |
| parent | 9b8664daf17dac9efb1f4add9d00c562e4ddbf40 (diff) | |
export ui, localizations
Diffstat (limited to 'src')
| -rw-r--r-- | src/administration_reader.cpp | 7 | ||||
| -rw-r--r-- | src/locales/en.cpp | 18 | ||||
| -rw-r--r-- | src/ui/imgui_extensions.cpp | 12 | ||||
| -rw-r--r-- | src/ui/ui_expenses.cpp | 10 | ||||
| -rw-r--r-- | src/ui/ui_invoices.cpp | 44 | ||||
| -rw-r--r-- | src/ui/ui_main.cpp | 11 | ||||
| -rw-r--r-- | src/ui/ui_settings.cpp | 2 |
7 files changed, 81 insertions, 23 deletions
diff --git a/src/administration_reader.cpp b/src/administration_reader.cpp index 321a622..05133f8 100644 --- a/src/administration_reader.cpp +++ b/src/administration_reader.cpp @@ -21,15 +21,15 @@ #include "logger.hpp" #include "strops.hpp" #include "memops.hpp" +#include "locales.hpp" #include "administration_reader.hpp" #include "administration_writer.hpp" #include "tinyfiledialogs.h" bool administration_reader::open_new() { - // @locale::get char const * lFilterPatterns[1] = { "*.openbook" }; - char* save_path = tinyfd_saveFileDialog("Select destination", NULL, 1, lFilterPatterns, NULL); + char* save_path = tinyfd_saveFileDialog(locale::get("ui.fileselect.selectDestination"), NULL, 1, lFilterPatterns, NULL); if (!save_path) return false; @@ -41,9 +41,8 @@ bool administration_reader::open_new() bool administration_reader::open_existing(char* file_path) { if (file_path == NULL) { - // @locale::get char const * lFilterPatterns[1] = { "*.openbook" }; - file_path = tinyfd_openFileDialog("Select save file", NULL, 1, lFilterPatterns, NULL, 0); + file_path = tinyfd_openFileDialog(locale::get("ui.fileselect.selectSaveFile"), NULL, 1, lFilterPatterns, NULL, 0); if (!file_path) return false; } diff --git a/src/locales/en.cpp b/src/locales/en.cpp index 062460c..d949609 100644 --- a/src/locales/en.cpp +++ b/src/locales/en.cpp @@ -27,6 +27,24 @@ locale_entry en_locales[] = { {"ui.tooltip.invalidInvoice", "Invoice has missing information."}, {"ui.tooltip.invalidProject", "Project has missing information."}, {"ui.tooltip.invalidContact", "Contact has missing information."}, + {"ui.import", "+ Import"}, + {"ui.clear", "Clear"}, + {"ui.selected", "Selected"}, + {"ui.exportAs", "Export"}, + {"ui.sendAs", "Send"}, + {"ui.sendAs.email", "Email"}, + {"ui.sendAs.einvoice", "E-Invoice (Peppol Network)"}, + + {"ui.fileselect.text", "Select file..."}, + {"ui.fileselect.title", "Choose a file"}, + {"ui.fileselect.selectDestination", "Select destination"}, + {"ui.fileselect.selectSaveFile", "Select save file"}, + + {"ui.menu.file", "File"}, + {"ui.menu.file.new", "New"}, + {"ui.menu.file.open", "Open"}, + {"ui.menu.help", "Help"}, + {"ui.menu.help.events", "Event Log"}, // Status strings. {"status.saved", "[Saved to disk]"}, diff --git a/src/ui/imgui_extensions.cpp b/src/ui/imgui_extensions.cpp index 359fc17..f3b9ff8 100644 --- a/src/ui/imgui_extensions.cpp +++ b/src/ui/imgui_extensions.cpp @@ -38,7 +38,7 @@ namespace ImGui const ImVec4 col = ImGui::GetStyleColorVec4(ImGuiCol_ButtonHovered); const ImVec4 bg = ImGui::GetStyleColorVec4(ImGuiCol_Button); - ImGui::LoadingIndicatorCircle("##loadingAnim", radius, bg, col, 6, 4.0f); + ImGui::LoadingIndicatorCircle(radius, bg, col, 6, 4.0f); } if (disabled) ImGui::EndDisabled(); @@ -76,7 +76,7 @@ namespace ImGui const ImVec4 col = ImGui::GetStyleColorVec4(ImGuiCol_ButtonHovered); const ImVec4 bg = ImGui::GetStyleColorVec4(ImGuiCol_Button); - ImGui::LoadingIndicatorCircle("##loadingAnim", radius, bg, col, 6, 4.0f); + ImGui::LoadingIndicatorCircle(radius, bg, col, 6, 4.0f); ImGui::EndDisabled(); ImGui::PopID(); @@ -135,7 +135,7 @@ namespace ImGui } } - bool FileSelect(char* text, char* buffer) + bool FileSelect(const char* text, char* buffer) { bool result = false; float widthAvailable = ImGui::GetContentRegionAvail().x; @@ -145,7 +145,7 @@ namespace ImGui { const char *filterPatterns[] = { "*.pdf" }; const char *file = tinyfd_openFileDialog( - "Choose a file", // dialog title // @localize + locale::get("ui.fileselect.title"), // dialog title NULL, // default path 1, // number of filter patterns filterPatterns, // filter patterns array @@ -162,13 +162,13 @@ namespace ImGui if (buffer[0] != '\0') { ImGui::SameLine(); - if (ImGui::Button("Clear")) + if (ImGui::Button(locale::get("ui.clear"))) { buffer[0] = '\0'; result = true; } ImGui::SameLine(); - ImGui::TextWrapped("Selected: %s", buffer); // @localize + ImGui::TextWrapped("%s: %s", locale::get("ui.selected"), buffer); } diff --git a/src/ui/ui_expenses.cpp b/src/ui/ui_expenses.cpp index 8635273..5556cd6 100644 --- a/src/ui/ui_expenses.cpp +++ b/src/ui/ui_expenses.cpp @@ -89,7 +89,7 @@ static void draw_expense_form(invoice* buffer, bool viewing_only = false) ImGui::Separator(); - if (ImGui::FileSelect("Select file...", buffer->document.original_path)) { // @locale::get + if (ImGui::FileSelect(locale::get("ui.fileselect.text"), buffer->document.original_path)) { buffer->document.copy_path[0] = 0; } @@ -175,7 +175,7 @@ static void draw_expenses_list() if (ImGui::Button(locale::get("form.create"))) { current_view_state = ui::view_state::CREATE; - active_invoice = administration::invoice_create_empty(); // @leak + active_invoice = administration::invoice_create_empty(); active_invoice.customer = administration::company_info_get(); active_invoice.is_outgoing = 0; active_invoice.status = invoice_status::INVOICE_RECEIVED; @@ -183,9 +183,9 @@ static void draw_expenses_list() char import_file_path[MAX_LEN_PATH] = {0}; ImGui::SameLine(); - if (ImGui::FileSelect("+ Import", import_file_path)) { // @localize + if (ImGui::FileSelect(locale::get("ui.import"), import_file_path)) { current_view_state = ui::view_state::VIEW_IMPORT_REQUEST; - active_invoice = administration::invoice_create_empty(); // @leak + active_invoice = administration::invoice_create_empty(); active_invoice.customer = administration::company_info_get(); active_invoice.is_outgoing = 0; active_invoice.status = invoice_status::INVOICE_RECEIVED; @@ -388,7 +388,7 @@ static void draw_import_request() const ImVec4 col = ImGui::GetStyleColorVec4(ImGuiCol_ButtonHovered); const ImVec4 bg = ImGui::GetStyleColorVec4(ImGuiCol_Button); - ImGui::LoadingIndicatorCircle("##loadingAnim", radius, bg, col, 10, 4.0f); + ImGui::LoadingIndicatorCircle(radius, bg, col, 10, 4.0f); } ImGui::PopFont(); diff --git a/src/ui/ui_invoices.cpp b/src/ui/ui_invoices.cpp index 3987b72..ebf84d4 100644 --- a/src/ui/ui_invoices.cpp +++ b/src/ui/ui_invoices.cpp @@ -200,7 +200,7 @@ static void draw_invoice_form(invoice* buffer, bool viewing_only = false) ImGui::Separator(); - if (ImGui::FileSelect("Select file...", buffer->document.original_path)) { // @locale::get + if (ImGui::FileSelect(locale::get("ui.fileselect.text"), buffer->document.original_path)) { buffer->document.copy_path[0] = 0; } @@ -400,6 +400,10 @@ static void draw_invoice_update() if (ImGui::Button(locale::get("form.back"), true, false)) { _reset_to_default_view(); } + + ImGui::Spacing(); + ImGui::Separator(3.0f); + ImGui::Spacing(); draw_invoice_form(&active_invoice); @@ -420,6 +424,10 @@ static void draw_invoice_create() if (ImGui::Button(locale::get("form.back"), true, false)) { _reset_to_default_view(); } + + ImGui::Spacing(); + ImGui::Separator(3.0f); + ImGui::Spacing(); draw_invoice_form(&active_invoice); @@ -441,6 +449,40 @@ static void draw_invoice_view() _reset_to_default_view(); } + ImGui::SameLine(); + + ImGui::PushItemWidth(100.0f); + if (ImGui::BeginCombo("##Send", locale::get("ui.sendAs"))) + { + if (ImGui::Selectable(locale::get("ui.sendAs.email"), false)) { + + } + if (ImGui::Selectable(locale::get("ui.sendAs.einvoice"), false)) { + + } + ImGui::EndCombo(); + } + ImGui::PushItemWidth(0.0f); + + ImGui::SameLine(); + + ImGui::PushItemWidth(100.0f); + if (ImGui::BeginCombo("##Export as", locale::get("ui.exportAs"))) + { + if (ImGui::Selectable("PDF", false)) { + + } + if (ImGui::Selectable("UBL", false)) { + + } + ImGui::EndCombo(); + } + ImGui::PushItemWidth(0.0f); + + ImGui::Spacing(); + ImGui::Separator(3.0f); + ImGui::Spacing(); + draw_invoice_form(&active_invoice, true); } diff --git a/src/ui/ui_main.cpp b/src/ui/ui_main.cpp index d4b9c58..6d55177 100644 --- a/src/ui/ui_main.cpp +++ b/src/ui/ui_main.cpp @@ -67,20 +67,19 @@ void ui::draw_main() { if (ui_state == ui::main_state::UI_END) ui::set_state(ui::main_state::UI_INVOICES); - // @locale::get if (ImGui::BeginMainMenuBar()) { - if (ImGui::BeginMenu("File")) + if (ImGui::BeginMenu(locale::get("ui.menu.file"))) { - if (ImGui::MenuItem("New")) { administration_reader::open_new(); } - if (ImGui::MenuItem("Open")) { administration_reader::open_existing(NULL); } + if (ImGui::MenuItem(locale::get("ui.menu.file.new"))) { administration_reader::open_new(); } + if (ImGui::MenuItem(locale::get("ui.menu.file.open"))) { administration_reader::open_existing(NULL); } ImGui::EndMenu(); } - if (ImGui::BeginMenu("Help")) + if (ImGui::BeginMenu(locale::get("ui.menu.help"))) { - if (ImGui::MenuItem("Event Log")) { ui::set_state(ui::main_state::UI_LOG); } + if (ImGui::MenuItem(locale::get("ui.menu.help.events"))) { ui::set_state(ui::main_state::UI_LOG); } ImGui::EndMenu(); } diff --git a/src/ui/ui_settings.cpp b/src/ui/ui_settings.cpp index 1c8f92b..076f231 100644 --- a/src/ui/ui_settings.cpp +++ b/src/ui/ui_settings.cpp @@ -316,7 +316,7 @@ static void draw_services() float radius = 10.0f; const ImVec4 col = ImGui::GetStyleColorVec4(ImGuiCol_ButtonHovered); const ImVec4 bg = ImGui::GetStyleColorVec4(ImGuiCol_Button); - ImGui::LoadingIndicatorCircle("##loadingAnim", radius, bg, col, 6, 4.0f); + ImGui::LoadingIndicatorCircle(radius, bg, col, 6, 4.0f); ImGui::SameLine(); } |
