From 8e269d0c075e4b762041391b26f6b5f0b4d59cb6 Mon Sep 17 00:00:00 2001 From: Robert Goldmann <deadlocker@gmx.de> Date: Thu, 8 Dec 2022 23:38:53 +0100 Subject: [PATCH] #683 - added new hotkey to hotkey page --- .../budgetmaster/hotkeys/ChartHotkeys.java | 60 +++++++++++++++++++ .../hotkeys/HotKeysController.java | 2 + .../resources/languages/base_de.properties | 4 ++ .../resources/languages/base_en.properties | 4 ++ .../src/main/resources/templates/hotkeys.ftl | 2 + 5 files changed, 72 insertions(+) create mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/hotkeys/ChartHotkeys.java diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/hotkeys/ChartHotkeys.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/hotkeys/ChartHotkeys.java new file mode 100644 index 000000000..7431ceb17 --- /dev/null +++ b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/hotkeys/ChartHotkeys.java @@ -0,0 +1,60 @@ +package de.deadlocker8.budgetmaster.hotkeys; + +import de.thecodelabs.utils.util.Localization; + +import java.text.MessageFormat; + +public enum ChartHotkeys implements HotKey +{ + SHIFT_CLICK("hotkeys.charts.shift.click", true); + + private final String localizationKey; + private final boolean hasModifier; + + ChartHotkeys(String localizationKey, boolean hasModifier) + { + this.localizationKey = localizationKey; + this.hasModifier = hasModifier; + } + + @Override + public String getModifierLocalized() + { + if(hasModifier) + { + return getLocalized("modifier"); + } + return null; + } + + @Override + public String getKeyLocalized() + { + return getLocalized("key"); + } + + @Override + public String getTextLocalized() + { + return getLocalized(null); + } + + private String getLocalized(String keySuffix) + { + if(keySuffix == null) + { + return Localization.getString(localizationKey); + } + + return Localization.getString(MessageFormat.format("{0}.{1}", localizationKey, keySuffix)); + } + + @Override + public String toString() + { + return "ChartHotkeys{" + + "localizationKey='" + localizationKey + '\'' + + ", hasModifier=" + hasModifier + + "} " + super.toString(); + } +} diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/hotkeys/HotKeysController.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/hotkeys/HotKeysController.java index afb1712dc..db4b3806e 100644 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/hotkeys/HotKeysController.java +++ b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmaster/hotkeys/HotKeysController.java @@ -15,6 +15,7 @@ public class HotKeysController extends BaseController public static final String HOTKEYS_GENERAL = "hotkeysGeneral"; public static final String HOTKEYS_DATEPICKER = "hotkeysGlobalDatePicker"; public static final String HOTKEYS_ACCOUNT_SELECT = "hotkeysAccountSelect"; + public static final String HOTKEYS_CHARTS = "hotkeysCharts"; } private static class ReturnValues @@ -28,6 +29,7 @@ public class HotKeysController extends BaseController model.addAttribute(ModelAttributes.HOTKEYS_GENERAL, GeneralHotKey.values()); model.addAttribute(ModelAttributes.HOTKEYS_DATEPICKER, GlobalDatePickerHotKey.values()); model.addAttribute(ModelAttributes.HOTKEYS_ACCOUNT_SELECT, GlobalAccountSelectHotKey.values()); + model.addAttribute(ModelAttributes.HOTKEYS_CHARTS, ChartHotkeys.values()); return ReturnValues.HOTKEYS; } } \ No newline at end of file diff --git a/BudgetMasterServer/src/main/resources/languages/base_de.properties b/BudgetMasterServer/src/main/resources/languages/base_de.properties index e6a2bb93f..c8161df65 100644 --- a/BudgetMasterServer/src/main/resources/languages/base_de.properties +++ b/BudgetMasterServer/src/main/resources/languages/base_de.properties @@ -557,6 +557,10 @@ hotkeys.global.account.select.open.key=a hotkeys.global.account.select.open=Kontoauswahl öffnen hotkeys.global.account.select.by.number.key=0 - 9 hotkeys.global.account.select.by.number=Konto auswählen +hotkeys.charts=Diagramme +hotkeys.charts.shift.click.key=Klick +hotkeys.charts.shift.click=Zugehörige Buchungen für angeklickten Bereich anzeigen +hotkeys.charts.shift.click.modifier=Umschalt # charts diff --git a/BudgetMasterServer/src/main/resources/languages/base_en.properties b/BudgetMasterServer/src/main/resources/languages/base_en.properties index d0b765724..8d0298586 100644 --- a/BudgetMasterServer/src/main/resources/languages/base_en.properties +++ b/BudgetMasterServer/src/main/resources/languages/base_en.properties @@ -557,6 +557,10 @@ hotkeys.global.account.select.open.key=a hotkeys.global.account.select.open=Open account select hotkeys.global.account.select.by.number.key=0 - 9 hotkeys.global.account.select.by.number=Choose account +hotkeys.charts=Charts +hotkeys.charts.shift.click.key=Click +hotkeys.charts.shift.click=Show related transactions for clicked area +hotkeys.charts.shift.click.modifier=Shift # charts chart.display.type=Display type diff --git a/BudgetMasterServer/src/main/resources/templates/hotkeys.ftl b/BudgetMasterServer/src/main/resources/templates/hotkeys.ftl index fde923f3a..c69b9edd1 100644 --- a/BudgetMasterServer/src/main/resources/templates/hotkeys.ftl +++ b/BudgetMasterServer/src/main/resources/templates/hotkeys.ftl @@ -24,6 +24,8 @@ <@listHotKeys locale.getString("hotkeys.global.datepicker") hotkeysGlobalDatePicker/> <@listHotKeys locale.getString("hotkeys.global.account.select") hotkeysAccountSelect/> + + <@listHotKeys locale.getString("hotkeys.charts") hotkeysCharts/> </@header.content> </div> </main> -- GitLab