summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/administration_reader.cpp7
-rw-r--r--src/locales/en.cpp18
-rw-r--r--src/ui/imgui_extensions.cpp12
-rw-r--r--src/ui/ui_expenses.cpp10
-rw-r--r--src/ui/ui_invoices.cpp44
-rw-r--r--src/ui/ui_main.cpp11
-rw-r--r--src/ui/ui_settings.cpp2
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();
}