diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/Messages.java b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/Messages.java index 5ef069c761..eea8c0dc1b 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/Messages.java +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/Messages.java @@ -1328,6 +1328,11 @@ public class Messages extends NLS public static String OptionDateIsInTheFuture; public static String OptionDateIsInThePast; public static String YearlyPerformanceHeatmapToolTip; + + public static String ExpandAll; + public static String ExpandCurrentMonth; + public static String CollapseAll; + public static String LabelTreeExpansionConfig; static { // initialize resource bundle diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages.properties b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages.properties index 725946a393..1b0493fadd 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages.properties +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages.properties @@ -216,6 +216,8 @@ ClientEditorLabelReturnsVolatility = Return / Volatility ClientEditorPerformanceCalculation = Calculation +CollapseAll = Collapse All + ColumnAbsolutePerformance = Abs.Perf. ColumnAbsolutePerformancePercent = Abs.Perf. % @@ -816,6 +818,10 @@ EventWizardLabelMessage = Event EventWizardTitle = Add event +ExpandAll = Expand All + +ExpandCurrentMonth = Expand Current Month + ExportWizardAccountTransactions = Account Transactions ExportWizardAllTransactionsAktienfreundeNet = aktienfreunde.net (all transactions and dividends) @@ -1702,6 +1708,8 @@ LabelTransferTo = transfer to LabelTransferals = Transferals +LabelTreeExpansionConfig = Expand Monthly Details + LabelUnexpectedQuotes = Unexpected Quotes: LabelUnexpectedQuotes_Description = On these dates, there should not be a security price according to the configured trade calendar, but a security price was found.\n\nThis could indicate that a wrong trade calendar is used. diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_cs.properties b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_cs.properties index ed36d1157d..163adcf943 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_cs.properties +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_cs.properties @@ -212,6 +212,8 @@ ClientEditorLabelReturnsVolatility = V\u00FDnos / Volatilita ClientEditorPerformanceCalculation = Propo\u010Det +ColumnCollapseAll = Sbalit v\u0161e + ColumnAbsolutePerformance = Abs.v\u00FDk. ColumnAbsolutePerformancePercent = Abs.v\u00FDk. % @@ -812,6 +814,10 @@ EventWizardLabelMessage = Ud\u00E1lost EventWizardTitle = P\u0159idat ud\u00E1lost +ExpandAll = Rozbalit v\u0161e + +ExpandCurrentMonth = Rozbalit aktu\u00E1ln\u00ED m\u011Bs\u00EDc + ExportWizardAccountTransactions = Transakce na \u00FA\u010Dtu ExportWizardAllTransactionsAktienfreundeNet = aktienfreunde.net (v\u0161echny transakce a dividendy) @@ -1694,6 +1700,8 @@ LabelTransferTo = p\u0159evod na LabelTransferals = P\u0159evody +LabelTreeExpansionConfig = Roz\u0161\u00ED\u0159en\u00ED m\u011Bs\u00ED\u010Dn\u00EDch \u00FAdaj\u016F + LabelUnexpectedQuotes = Neo\u010Dek\u00E1van\u00E9 kurzy: LabelUnexpectedQuotes_Description = V t\u011Bchto dnech by podle nastaven\u00E9ho obchodn\u00EDho kalend\u00E1\u0159e nem\u011Bla b\u00FDt cena cenn\u00E9ho pap\u00EDru, ale cena cenn\u00E9ho pap\u00EDru byla nalezena.\n\nTo m\u016F\u017Ee znamenat, \u017Ee je pou\u017Eit nespr\u00E1vn\u00FD obchodn\u00ED kalend\u00E1\u0159. diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_da.properties b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_da.properties index 12548e9980..66076fb2f1 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_da.properties +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_da.properties @@ -209,6 +209,8 @@ ClientEditorLabelReturnsVolatility = Afkast / Volatilitet ClientEditorPerformanceCalculation = Kalkulation +CollapseAll = Skjul alle + ColumnAbsolutePerformance = Abs.Afk. ColumnAbsolutePerformancePercent = Abs.Afk. % @@ -809,6 +811,10 @@ EventWizardLabelMessage = Begivenhed EventWizardTitle = Tilf\u00F8j begivenhed +ExpandAll = Udvid alle + +ExpandCurrentMonth = Udvid den aktuelle m\u00E5ned + ExportWizardAccountTransactions = Kontotransaktioner ExportWizardAllTransactionsAktienfreundeNet = aktienfreunde.net (alle transaktioner og udbytter) @@ -1693,6 +1699,8 @@ LabelTransferTo = overf\u00F8r til LabelTransferals = Overf\u00F8rsler +LabelTreeExpansionConfig = Forl\u00E6ng m\u00E5nedlige detaljer + LabelUnexpectedQuotes = Uventede kurser: LabelUnexpectedQuotes_Description = P\u00E5 disse datoer skulle der ikke v\u00E6re en v\u00E6rdipapirpris i henhold til den konfigurerede handelskalender, men der blev fundet en v\u00E6rdipapirpris.\n\nDette kan tyde p\u00E5, at der er brugt en forkert handelskalender. diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_de.properties b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_de.properties index a21fc46264..29e1b1e78f 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_de.properties +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_de.properties @@ -209,6 +209,8 @@ ClientEditorLabelReturnsVolatility = Rendite / Volatilit\u00E4t ClientEditorPerformanceCalculation = Berechnung +CollapseAll = Alle Einklappen + ColumnAbsolutePerformance = Abs.Perf. ColumnAbsolutePerformancePercent = Abs.Perf. % @@ -809,6 +811,10 @@ EventWizardLabelMessage = Ereignis EventWizardTitle = Ereignis hinzuf\u00FCgen +ExpandAll = Alles Erweitern + +ExpandCurrentMonth = Aktuellen Monat Erweitern + ExportWizardAccountTransactions = Kontoums\u00E4tze ExportWizardAllTransactionsAktienfreundeNet = aktienfreunde.net (alle Transaktionen und Dividenden) @@ -1695,6 +1701,8 @@ LabelTransferTo = Umbuchung auf LabelTransferals = Einlagen / Entnahmen +LabelTreeExpansionConfig = Monatsdetails erweitern + LabelUnexpectedQuotes = Unerwartete Kurse: LabelUnexpectedQuotes_Description = An diesen Terminen sollte es laut konfiguriertem Handelskalender keinen Wertpapierkurs geben, aber es wurde ein Wertpapierkurs gefunden.\n\nDies k\u00F6nnte darauf hinweisen, dass ein falscher Handelskalender verwendet wird. diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_es.properties b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_es.properties index 656635310b..9e8c1b84dd 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_es.properties +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_es.properties @@ -209,6 +209,8 @@ ClientEditorLabelReturnsVolatility = Rentabilidad / Riesgo ClientEditorPerformanceCalculation = Resultados +CollapseAll = Contraer todo + ColumnAbsolutePerformance = Retorno Abs. ColumnAbsolutePerformancePercent = Rent. Abs. % @@ -809,6 +811,10 @@ EventWizardLabelMessage = Evento EventWizardTitle = A\u00F1adir evento +ExpandAll = Ampliar todo + +ExpandCurrentMonth = Ampliar el mes en curso + ExportWizardAccountTransactions = Transacciones de la cuenta ExportWizardAllTransactionsAktienfreundeNet = aktienfreunde.net (todas las transacciones y dividendos) @@ -1695,6 +1701,8 @@ LabelTransferTo = Transferir a LabelTransferals = Traspaso +LabelTreeExpansionConfig = Ampliar datos mensuales + LabelUnexpectedQuotes = Cotizaciones registradas inesperadas: LabelUnexpectedQuotes_Description = En estas fechas no deber\u00EDa haber cotizaci\u00F3n para el valor de acuerdo con el calendario burs\u00E1til configurado, pero se encontr\u00F3 un precio de cotizaci\u00F3n.\n\nEsto podr\u00EDa indicar que se est\u00E1 utilizando un calendario burs\u00E1til incorrecto. diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_fr.properties b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_fr.properties index 208f68cc42..a03c8fd721 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_fr.properties +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_fr.properties @@ -210,6 +210,8 @@ ClientEditorLabelReturnsVolatility = Rendement / Volatilit\u00E9 ClientEditorPerformanceCalculation = Calculs +CollapseAll = R\u00E9duire tout + ColumnAbsolutePerformance = Perf. abs. ColumnAbsolutePerformancePercent = Perf.abs. % @@ -810,6 +812,10 @@ EventWizardLabelMessage = \u00C9v\u00E9nement EventWizardTitle = Ajouter un \u00E9v\u00E9nement +ExpandAll = D\u00E9velopper tout + +ExpandCurrentMonth = D\u00E9velopper le mois en cours + ExportWizardAccountTransactions = Op\u00E9rations du compte ExportWizardAllTransactionsAktienfreundeNet = aktienfreunde.net (toutes op\u00E9rations et dividendes) @@ -1696,6 +1702,8 @@ LabelTransferTo = transfert vers LabelTransferals = Transferts +LabelTreeExpansionConfig = Prolonger les d\u00E9tails mensuels + LabelUnexpectedQuotes = Prix des titres inattendus\u00A0: LabelUnexpectedQuotes_Description = \u00C0 ces dates, il ne devrait pas y avoir de cours de titre selon le calendrier boursier configur\u00E9, mais un cours de titre a \u00E9t\u00E9 trouv\u00E9.\n\nCela pourrait indiquer qu'un mauvais calendrier boursier est utilis\u00E9. diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_it.properties b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_it.properties index 8e6b1714bd..16476db3e1 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_it.properties +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_it.properties @@ -209,6 +209,8 @@ ClientEditorLabelReturnsVolatility = Rendimenti / Volatilit\u00E0 ClientEditorPerformanceCalculation = Calcolo +CollapseAll = Chiudi tutti + ColumnAbsolutePerformance = Perf.Ass. ColumnAbsolutePerformancePercent = % Perf.Ass. @@ -809,6 +811,10 @@ EventWizardLabelMessage = Evento EventWizardTitle = Aggiungi evento +ExpandAll = Espandi tutto + +ExpandCurrentMonth = Espandi il mese corrente + ExportWizardAccountTransactions = Operazioni del Conto ExportWizardAllTransactionsAktienfreundeNet = aktienfreunde.net (tutte le operazioni e dividendi) @@ -1695,6 +1701,8 @@ LabelTransferTo = Trasferisci a LabelTransferals = Trasferimenti +LabelTreeExpansionConfig = Estendere i dettagli mensili + LabelUnexpectedQuotes = Quotazioni impreviste: LabelUnexpectedQuotes_Description = In queste date, non dovrebbe esserci un prezzo del titolo in base al calendario di negoziazione configurato, ma \u00E8 stato trovato un prezzo del titolo.\n\nCi\u00F2 potrebbe indicare che viene utilizzato un calendario commerciale errato. diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_nl.properties b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_nl.properties index afcd57f5cc..8114aac7b1 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_nl.properties +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_nl.properties @@ -209,6 +209,8 @@ ClientEditorLabelReturnsVolatility = Rendement/Volatiliteit ClientEditorPerformanceCalculation = Opstelling +CollapseAll = Alles samenvouwen + ColumnAbsolutePerformance = Abs.Res. ColumnAbsolutePerformancePercent = Abs.Res. % @@ -809,6 +811,10 @@ EventWizardLabelMessage = Gebeurtenis EventWizardTitle = Gebeurtenis toevoegen +ExpandAll = Alles uitbreiden + +ExpandCurrentMonth = Huidige maand uitbreiden + ExportWizardAccountTransactions = Rekeningtransacties ExportWizardAllTransactionsAktienfreundeNet = aktienfreunde.net (alle transacties en dividenden) @@ -1695,6 +1701,8 @@ LabelTransferTo = Overboeken naar LabelTransferals = Overschrijvingen +LabelTreeExpansionConfig = Maandelijkse gegevens uitbreiden + LabelUnexpectedQuotes = Onverwachte koersen: LabelUnexpectedQuotes_Description = Op deze data zou er volgens de geconfigureerde handelskalender geen koers moeten zijn, maar er is er wel een koers aangetroffen.\n\nDit kan erop duiden dat een verkeerde handelskalender wordt gebruikt. diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_pl.properties b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_pl.properties index fec32bddf8..8602a87cf9 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_pl.properties +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_pl.properties @@ -209,6 +209,8 @@ ClientEditorLabelReturnsVolatility = Zwrot / Zmienno\u015B\u0107 ClientEditorPerformanceCalculation = Wyliczenia +CollapseAll = Zwi\u0144 wszystko + ColumnAbsolutePerformance = Wyn.Bezw. ColumnAbsolutePerformancePercent = Wyn.Bezw. % @@ -809,6 +811,10 @@ EventWizardLabelMessage = Zdarzenie EventWizardTitle = Dodaj zdarzenie +ExpandAll = Rozwi\u0144 wszystko + +ExpandCurrentMonth = Rozwi\u0144 Bie\u017C\u0105cy miesi\u0105c + ExportWizardAccountTransactions = Transakcje na koncie ExportWizardAllTransactionsAktienfreundeNet = aktienfreunde.net (wszystkie transakcje i dywidendy) @@ -1693,6 +1699,8 @@ LabelTransferTo = przenie\u015B do LabelTransferals = Transfery +LabelTreeExpansionConfig = Rozszerz miesi\u0119czne szczeg\u00F3\u0142y + LabelUnexpectedQuotes = Nieoczekiwane notowania: LabelUnexpectedQuotes_Description = W tych terminach nie powinna istnie\u0107 cena waloru zgodnie z ustawionym kalendarzem handlowym, ale cena ta istnieje.\n\nMo\u017Ce to oznacza\u0107, \u017Ce u\u017Cyto z\u0142ego kalendarza handlowego. diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_pt.properties b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_pt.properties index 2c1085e7ea..3237580880 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_pt.properties +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_pt.properties @@ -209,6 +209,8 @@ ClientEditorLabelReturnsVolatility = Retorno / Volatilidade ClientEditorPerformanceCalculation = C\u00E1lculo +CollapseAll = Recolher tudo + ColumnAbsolutePerformance = Perf.Abs. ColumnAbsolutePerformancePercent = Perf.Abs. % @@ -809,6 +811,10 @@ EventWizardLabelMessage = Evento EventWizardTitle = Adicionar evento +ExpandAll = Expandir tudo + +ExpandCurrentMonth = Expandir o m\u00EAs atual + ExportWizardAccountTransactions = Transa\u00E7\u00F5es da Conta ExportWizardAllTransactionsAktienfreundeNet = aktienfreunde.net (todas as transa\u00E7\u00F5es e dividendos) @@ -1693,6 +1699,8 @@ LabelTransferTo = transferir para LabelTransferals = Transfer\u00EAncias +LabelTreeExpansionConfig = Prolongar os dados mensais + LabelUnexpectedQuotes = Pre\u00E7os de seguran\u00E7a inesperados: LabelUnexpectedQuotes_Description = Nessas datas, n\u00E3o deveria haver um pre\u00E7o de t\u00EDtulo de acordo com o calend\u00E1rio de negocia\u00E7\u00E3o configurado, mas um pre\u00E7o de t\u00EDtulo foi encontrado.\n\nIsso pode indicar que um calend\u00E1rio comercial errado \u00E9 usado. diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_pt_BR.properties b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_pt_BR.properties index dc2fc9d96c..6cb92edd28 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_pt_BR.properties +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_pt_BR.properties @@ -209,6 +209,8 @@ ClientEditorLabelReturnsVolatility = Retorno / Volatilidade ClientEditorPerformanceCalculation = C\u00E1lculo +CollapseAll = Recolher tudo + ColumnAbsolutePerformance = Perf.Abs. ColumnAbsolutePerformancePercent = Perf.Abs. % @@ -809,6 +811,10 @@ EventWizardLabelMessage = Evento EventWizardTitle = Adicionar evento +ExpandAll = Expandir tudo + +ExpandCurrentMonth = Expandir o m\u00EAs atual + ExportWizardAccountTransactions = Transa\u00E7\u00F5es da Conta ExportWizardAllTransactionsAktienfreundeNet = aktienfreunde.net (todas as transa\u00E7\u00F5es e dividendos) @@ -1693,6 +1699,8 @@ LabelTransferTo = transferir para LabelTransferals = Transfer\u00EAncias +LabelTreeExpansionConfig = Estender detalhes mensais + LabelUnexpectedQuotes = Cota\u00E7\u00F5es inesperadas: LabelUnexpectedQuotes_Description = Nessas datas, n\u00E3o deveria haver um pre\u00E7o de ativo de acordo com o calend\u00E1rio de negocia\u00E7\u00E3o configurado, mas um pre\u00E7o de ativo foi encontrado.\n\nIsso pode indicar que um calend\u00E1rio comercial errado foi usado. diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_ru.properties b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_ru.properties index 52803f9892..e213055f7d 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_ru.properties +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_ru.properties @@ -209,6 +209,8 @@ ClientEditorLabelReturnsVolatility = \u0414\u043E\u0445\u043E\u0434\u043D\u043E\ ClientEditorPerformanceCalculation = \u0420\u0430\u0441\u0447\u0435\u0442 +CollapseAll = \u0421\u0432\u0435\u0440\u043D\u0443\u0442\u044C \u0432\u0441\u0435 + ColumnAbsolutePerformance = \u0410\u0431\u0441.\u044D\u0444\u0444. ColumnAbsolutePerformancePercent = \u0410\u0431\u0441.\u044D\u0444\u0444. % @@ -809,6 +811,10 @@ EventWizardLabelMessage = \u0421\u043E\u0431\u044B\u0442\u0438\u0435 EventWizardTitle = \u0414\u043E\u0431\u0430\u0432\u0438\u0442\u044C \u0441\u043E\u0431\u044B\u0442\u0438\u0435 +ExpandAll = \u0420\u0430\u0437\u0432\u0435\u0440\u043D\u0443\u0442\u044C \u0432\u0441\u0435 + +ExpandCurrentMonth = \u0420\u0430\u0437\u0432\u0435\u0440\u043D\u0443\u0442\u044C \u0442\u0435\u043A\u0443\u0449\u0438\u0439 \u043C\u0435\u0441\u044F\u0446 + ExportWizardAccountTransactions = \u041E\u043F\u0435\u0440\u0430\u0446\u0438\u0438 \u043F\u043E \u0441\u0447\u0435\u0442\u0443 ExportWizardAllTransactionsAktienfreundeNet = aktienfreunde.net (\u0432\u0441\u0435 \u0442\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u0438 \u0438 \u0434\u0438\u0432\u0438\u0434\u0435\u043D\u0434\u044B) @@ -1693,6 +1699,8 @@ LabelTransferTo = \u043F\u0435\u0440\u0435\u0432\u0435\u0441\u0442\u0438 \u043D\ LabelTransferals = \u041F\u0435\u0440\u0435\u0432\u043E\u0434\u044B +LabelTreeExpansionConfig = \u041F\u0440\u043E\u0434\u043B\u0435\u043D\u0438\u0435 \u0435\u0436\u0435\u043C\u0435\u0441\u044F\u0447\u043D\u044B\u0445 \u0434\u0435\u0442\u0430\u043B\u0435\u0439 + LabelUnexpectedQuotes = \u041D\u0435\u043E\u0436\u0438\u0434\u0430\u043D\u043D\u044B\u0435 \u043A\u043E\u0442\u0438\u0440\u043E\u0432\u043A\u0438: LabelUnexpectedQuotes_Description = \u0412 \u044D\u0442\u0438 \u0434\u0430\u0442\u044B \u043D\u0435 \u0434\u043E\u043B\u0436\u043D\u0430 \u0431\u044B\u0442\u044C \u0446\u0435\u043D\u0430 \u0446\u0435\u043D\u043D\u043E\u0439 \u0431\u0443\u043C\u0430\u0433\u0438 \u0432 \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u043D\u0430\u0441\u0442\u0440\u043E\u0435\u043D\u043D\u044B\u043C \u0442\u043E\u0440\u0433\u043E\u0432\u044B\u043C \u043A\u0430\u043B\u0435\u043D\u0434\u0430\u0440\u0435\u043C, \u043D\u043E \u0446\u0435\u043D\u0430 \u0446\u0435\u043D\u043D\u043E\u0439 \u0431\u0443\u043C\u0430\u0433\u0438 \u0431\u044B\u043B\u0430 \u043D\u0430\u0439\u0434\u0435\u043D\u0430.\n\n\u042D\u0442\u043E \u043C\u043E\u0436\u0435\u0442 \u0443\u043A\u0430\u0437\u044B\u0432\u0430\u0442\u044C \u043D\u0430 \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435 \u043D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u043E\u0433\u043E \u0442\u043E\u0440\u0433\u043E\u0432\u043E\u0433\u043E \u043A\u0430\u043B\u0435\u043D\u0434\u0430\u0440\u044F. diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_sk.properties b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_sk.properties index 2400ca6591..27bb5d5216 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_sk.properties +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_sk.properties @@ -209,6 +209,8 @@ ClientEditorLabelReturnsVolatility = N\u00E1vratnos\u0165 / volatilita ClientEditorPerformanceCalculation = Kalkul\u00E1cie +CollapseAll = Zbali\u0165 v\u0161etko + ColumnAbsolutePerformance = Abs.v\u00FDk. ColumnAbsolutePerformancePercent = Abs.v\u00FDk. % @@ -809,6 +811,10 @@ EventWizardLabelMessage = Udalos\u0165 EventWizardTitle = Prida\u0165 udalos\u0165 +ExpandAll = Rozbali\u0165 v\u0161etko + +ExpandCurrentMonth = Roz\u0161\u00EDri\u0165 aktu\u00E1lny mesiac + ExportWizardAccountTransactions = Transakcie na \u00FA\u010Dte ExportWizardAllTransactionsAktienfreundeNet = aktienfreunde.net (v\u0161etky transakcie a dividendy) @@ -1695,6 +1701,8 @@ LabelTransferTo = prevod na LabelTransferals = Prevody +LabelTreeExpansionConfig = Roz\u0161\u00EDrenie mesa\u010Dn\u00FDch \u00FAdajov + LabelUnexpectedQuotes = Neo\u010Dak\u00E1van\u00E9 kurzy: LabelUnexpectedQuotes_Description = V t\u00FDchto d\u00E1tumoch by sa pod\u013Ea nastaven\u00E9ho obchodn\u00E9ho kalend\u00E1ra nemala vyskytova\u0165 cena cenn\u00E9ho papiera, ale cena cenn\u00E9ho papiera sa na\u0161la.\n\nTo m\u00F4\u017Ee znamena\u0165, \u017Ee sa pou\u017E\u00EDva nespr\u00E1vny obchodn\u00FD kalend\u00E1r. diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_zh.properties b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_zh.properties index 8c80c97747..2189c08d6e 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_zh.properties +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/messages_zh.properties @@ -209,6 +209,8 @@ ClientEditorLabelReturnsVolatility = \u6536\u76CA / \u6CE2\u52A8 ClientEditorPerformanceCalculation = \u8BA1\u7B97 +CollapseAll = \u5168\u90E8\u6298\u53E0 + ColumnAbsolutePerformance = \u603B\u6536\u76CA ColumnAbsolutePerformancePercent = \u603B\u6536\u76CA % @@ -809,6 +811,10 @@ EventWizardLabelMessage = \u4E8B\u4EF6 EventWizardTitle = \u6DFB\u52A0\u4E8B\u4EF6 +ExpandAll = \u5168\u90E8\u5C55\u5F00 + +ExpandCurrentMonth = \u5C55\u5F00\u5F53\u524D\u6708\u4EFD + ExportWizardAccountTransactions = \u8F6C\u8D26\u8BB0\u5F55 ExportWizardAllTransactionsAktienfreundeNet = aktienfreunde.net (\u6240\u6709\u8D26\u76EE\u4E0E\u5206\u7EA2) @@ -1695,6 +1701,8 @@ LabelTransferTo = \u8F6C\u8D26\u81F3 LabelTransferals = \u8F6C\u8D26 +LabelTreeExpansionConfig = \u6269\u5C55\u6BCF\u6708\u8BE6\u60C5 + LabelUnexpectedQuotes = \u5F02\u5E38\u62A5\u4EF7\uFF1A LabelUnexpectedQuotes_Description = \u6839\u636E\u4EA4\u6613\u65E5\u5386\uFF0C\u8FD9\u4E9B\u65E5\u671F\u4E3A\u975E\u4EA4\u6613\u65E5\uFF0C\u4F46\u5374\u5B58\u5728\u76F8\u5E94\u7684\u8BC1\u5238\u62A5\u4EF7\u3002\n\n\u6240\u4EE5\uFF0C\u4F60\u53EF\u80FD\u9009\u62E9\u4E86\u9519\u8BEF\u7684\u4EA4\u6613\u65E5\u5386\u3002 diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/views/dashboard/DashboardView.java b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/views/dashboard/DashboardView.java index 48fe5de738..43d1169f68 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/views/dashboard/DashboardView.java +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/views/dashboard/DashboardView.java @@ -847,6 +847,7 @@ private void addNewWidget(Composite columnControl, WidgetFactory widgetType) Dashboard.Widget widget = new Dashboard.Widget(); widget.setLabel(widgetType.getLabel()); widget.setType(widgetType.name()); + widget.setNewWidget(true); column.getWidgets().add(widget); WidgetDelegate delegate = buildDelegateAndMoveAboveFiller(columnControl, widgetType, widget).getLeft(); diff --git a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/views/dashboard/earnings/EarningsListWidget.java b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/views/dashboard/earnings/EarningsListWidget.java index 5eebe0afb6..7d570088ab 100644 --- a/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/views/dashboard/earnings/EarningsListWidget.java +++ b/name.abuchen.portfolio.ui/src/name/abuchen/portfolio/ui/views/dashboard/earnings/EarningsListWidget.java @@ -3,6 +3,7 @@ import java.text.DateFormatSymbols; import java.time.LocalDate; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import java.util.function.Supplier; @@ -11,11 +12,14 @@ import org.eclipse.jface.layout.GridDataFactory; import org.eclipse.jface.layout.GridLayoutFactory; import org.eclipse.swt.SWT; +import org.eclipse.swt.events.MouseEvent; +import org.eclipse.swt.events.MouseListener; import org.eclipse.swt.layout.FormAttachment; import org.eclipse.swt.layout.FormLayout; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Label; +import org.eclipse.ui.forms.HyperlinkSettings; import org.eclipse.ui.forms.events.HyperlinkAdapter; import org.eclipse.ui.forms.events.HyperlinkEvent; import org.eclipse.ui.forms.widgets.ImageHyperlink; @@ -34,6 +38,7 @@ import name.abuchen.portfolio.snapshot.ReportingPeriod; import name.abuchen.portfolio.snapshot.filter.ClientFilter; import name.abuchen.portfolio.ui.Images; +import name.abuchen.portfolio.ui.Messages; import name.abuchen.portfolio.ui.UIConstants; import name.abuchen.portfolio.ui.editor.AbstractFinanceView; import name.abuchen.portfolio.ui.util.FormDataFactory; @@ -43,6 +48,7 @@ import name.abuchen.portfolio.ui.views.dashboard.DashboardData; import name.abuchen.portfolio.ui.views.dashboard.DashboardResources; import name.abuchen.portfolio.ui.views.dashboard.DashboardView; +import name.abuchen.portfolio.ui.views.dashboard.EnumBasedConfig; import name.abuchen.portfolio.ui.views.dashboard.WidgetDelegate; import name.abuchen.portfolio.ui.views.dashboard.earnings.EarningsListWidget.Model; import name.abuchen.portfolio.util.Interval; @@ -50,6 +56,37 @@ public class EarningsListWidget extends WidgetDelegate { + + public enum ExpansionSetting + { + EXPAND_ALL(Messages.ExpandAll), // + EXPAND_CURRENT_MONTH(Messages.ExpandCurrentMonth), // + COLLAPSE_ALL(Messages.CollapseAll), // + ; + + private ExpansionSetting(String label) + { + this.label = label; + } + + private String label; + + @Override + public String toString() + { + return label; + } + } + + static class ExpansionSettingConfig extends EnumBasedConfig + { + public ExpansionSettingConfig(WidgetDelegate delegate) + { + super(delegate, Messages.LabelTreeExpansionConfig, ExpansionSetting.class, Dashboard.Config.LAYOUT, + Policy.EXACTLY_ONE); + } + } + public static class Model { private final GrossNetType grossNetType; @@ -101,6 +138,8 @@ public MonthData(int monthOfYear, Money sum) private Label labelYear; private Label labelSum; private Composite list; + private boolean[] collapsed; + private ExpansionSetting previousExpansion; public EarningsListWidget(Widget widget, DashboardData data) { @@ -109,6 +148,11 @@ public EarningsListWidget(Widget widget, DashboardData data) addConfig(new ClientFilterConfig(this)); addConfig(new EarningTypeConfig(this)); addConfig(new GrossNetTypeConfig(this)); + if (widget.isNewWidget()) + { + widget.getConfiguration().put(Dashboard.Config.LAYOUT.name(), ExpansionSetting.EXPAND_CURRENT_MONTH.name()); + } + addConfig(new ExpansionSettingConfig(this)); String year = widget.getConfiguration().get(Dashboard.Config.START_YEAR.name()); if (year != null) @@ -247,6 +291,12 @@ public void update(Model model) this.labelTitle.setText(getWidget().getLabel()); this.labelYear.setText(String.valueOf(model.getYear())); this.labelSum.setText(Values.Money.format(model.sum, getClient().getBaseCurrency())); + ExpansionSetting expansion = get(ExpansionSettingConfig.class).getValue(); + if (collapsed == null || previousExpansion != expansion) + { + createCollapsedArray(); + } + previousExpansion = expansion; Control[] children = list.getChildren(); for (Control child : children) @@ -261,6 +311,10 @@ public void update(Model model) Label separator = new Label(list, SWT.SEPARATOR | SWT.HORIZONTAL); GridDataFactory.fillDefaults().grab(true, false).applyTo(separator); + if (collapsed[month.monthOfYear - 1]) + { + continue; // + } for (TransactionPair tx : month.transactions) { Composite item = createItem(list, tx, model.grossNetType); @@ -275,6 +329,25 @@ public void update(Model model) ((DashboardView) this.view).updateScrolledCompositeMinSize(); } + private void createCollapsedArray() + { + ExpansionSetting expansion = get(ExpansionSettingConfig.class).getValue(); + collapsed = new boolean[12]; + + if (expansion.equals(ExpansionSetting.EXPAND_ALL)) + { + return; // + } + Arrays.fill(collapsed, true); + if (expansion.equals(ExpansionSetting.COLLAPSE_ALL)) + { + return; // + } + LocalDate now = LocalDate.now(); + + collapsed[now.getMonthValue() - 1] = false; + } + protected Composite createMonthHeader(Composite parent, MonthData month) { Composite composite = new Composite(parent, SWT.NONE); @@ -282,7 +355,31 @@ protected Composite createMonthHeader(Composite parent, MonthData month) Label label = new Label(composite, SWT.NONE); label.setData(UIConstants.CSS.CLASS_NAME, UIConstants.CSS.HEADING2); - label.setText(monthLabels[month.monthOfYear - 1]); + int mVal = month.monthOfYear - 1; + label.setText(monthLabels[mVal]); + label.setCursor(new HyperlinkSettings(parent.getDisplay()).getHyperlinkCursor()); + label.addMouseListener(new MouseListener() + { + + @Override + public void mouseUp(MouseEvent e) + { + collapsed[mVal] = !collapsed[mVal]; + update(); + } + + @Override + public void mouseDown(MouseEvent e) + { + // empty, we're waiting for mouse-up + } + + @Override + public void mouseDoubleClick(MouseEvent e) + { + // maybe another time with another function behind it + } + }); Label sum = new Label(composite, SWT.RIGHT); sum.setData(UIConstants.CSS.CLASS_NAME, UIConstants.CSS.HEADING2); @@ -308,7 +405,7 @@ protected Composite createItem(Composite parent, TransactionPair view.setInformationPaneInput(pair.getTransaction().getSecurity())); Label earning = new Label(composite, SWT.RIGHT); diff --git a/name.abuchen.portfolio/src/name/abuchen/portfolio/model/Dashboard.java b/name.abuchen.portfolio/src/name/abuchen/portfolio/model/Dashboard.java index 221a6ab39b..cde8710934 100644 --- a/name.abuchen.portfolio/src/name/abuchen/portfolio/model/Dashboard.java +++ b/name.abuchen.portfolio/src/name/abuchen/portfolio/model/Dashboard.java @@ -60,6 +60,7 @@ public static final class Widget private String type; private String label; private Map configuration; + private transient boolean newWidget; public String getType() { @@ -81,6 +82,16 @@ public void setLabel(String label) this.label = label; } + public boolean isNewWidget() + { + return newWidget; + } + + public void setNewWidget(boolean val) + { + this.newWidget = val; + } + public Map getConfiguration() { if (configuration == null)