Skip to content

Commit

Permalink
Change "Earnings & Expense" to "Income & Expenses" by implementing op…
Browse files Browse the repository at this point in the history
…tionally trades

Issue: https://forum.portfolio-performance.info/t/skalierung-der-y-achse-im-diagramm-vermoegensaufstellung/1892
Issue: https://forum.portfolio-performance.info/t/skala-bei-ertraege-akkumuliert-veraendern/8382
Issue: https://forum.portfolio-performance.info/t/gewinne-verluste-aus-trades-unter-ertraege-und-ausgaben/6922
Issue: #2084
Signed-off-by: ragas13 <marco.forum@t-online.de>
[squashed commits; toolbar entry for trades]
Signed-off-by: Andreas Buchen <andreas.buchen@gmail.com>
  • Loading branch information
Morpheus1w3 authored and buchen committed Feb 28, 2021
1 parent 5d1c92f commit 3cb9ee1
Show file tree
Hide file tree
Showing 18 changed files with 316 additions and 63 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -549,6 +549,10 @@ public class Messages extends NLS
public static String LabelEarningsPerYear;
public static String LabelEarningsSelectStartYear;
public static String LabelEarningsExpenses;
public static String LabelEarningsUseConsolidateRetired;
public static String LabelEarningsConsolidateRetired;
public static String LabelEarningsUseTradeProfitLoss;
public static String LabelEarningsTradeProfitLoss;
public static String LabelExpenses;
public static String LabelError;
public static String LabelEurostatRegion;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1102,7 +1102,9 @@ LabelEarningsByQuarterAndVehicle = Quarter / Instrument

LabelEarningsByYearAndVehicle = Year / Instrument

LabelEarningsExpenses = Earnings & Expenses
LabelEarningsConsolidateRetired = \u2211 Retired securities

LabelEarningsExpenses = Income & Expenses

LabelEarningsPerMonth = Month

Expand All @@ -1112,6 +1114,12 @@ LabelEarningsPerYear = Year

LabelEarningsSelectStartYear = Earnings starting with year:

LabelEarningsTradeProfitLoss = Closed trades

LabelEarningsUseConsoidateRetired = Consolidation of inactive securities

LabelEarningsUseTradeProfitLoss = Take into account profits of trades

LabelError = Error

LabelEurostatRegion = Region
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1091,7 +1091,9 @@ LabelEarningsByQuarterAndVehicle = Quartal / Anlage

LabelEarningsByYearAndVehicle = Jahr / Anlage

LabelEarningsExpenses = Ertr\u00E4ge & Ausgaben
LabelEarningsConsolidateRetired = \u2211 Inaktive Wertpapiere

LabelEarningsExpenses = Einnahmen & Ausgaben

LabelEarningsPerMonth = Monat

Expand All @@ -1101,6 +1103,12 @@ LabelEarningsPerYear = Jahr

LabelEarningsSelectStartYear = Ertr\u00E4ge ab Jahr:

LabelEarningsTradeProfitLoss = Geschlossene Trades

LabelEarningsUseConsolidateRetired = Konsolidierung inaktive Wertpapiere

LabelEarningsUseTradeProfitLoss = Ber\u00FCcksichtigung Gewinne von Trades

LabelError = Fehler

LabelExcessReturnBaselineDataSeries = \u00DCberrendite (Basiswert)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1021,7 +1021,9 @@ LabelEarningsByQuarterAndVehicle = Trimestre / Veh\u00EDculo

LabelEarningsByYearAndVehicle = A\u00F1o / Veh\u00EDculo

LabelEarningsExpenses = Ganancias & Gastos
LabelEarningsConsolidateRetired = \u2211 Valores retirados

LabelEarningsExpenses = Ingresos & Gastos

LabelEarningsPerMonth = Mes

Expand All @@ -1031,6 +1033,12 @@ LabelEarningsPerYear = A\u00F1o

LabelEarningsSelectStartYear = Ganancias a partir del a\u00F1o:

LabelEarningsTradeProfitLoss = Operaciones cerradas

LabelEarningsUseConsolidateRetired = Consolidaci\u00F3n de valores inactivos

LabelEarningsUseTradeProfitLoss = Tenga en cuenta las ganancias de las operaciones

LabelError = Error

LabelEurostatRegion = Regi\u00F3n
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1060,7 +1060,9 @@ LabelEarningsByQuarterAndVehicle = Trimestre / Instrument

LabelEarningsByYearAndVehicle = Ann\u00E9e / Instrument

LabelEarningsExpenses = B\u00E9n\u00E9fices & D\u00E9penses
LabelEarningsConsolidateRetired = \u2211 Titres retir\u00E9s

LabelEarningsExpenses = Recettes & D\u00E9penses

LabelEarningsPerMonth = Mois

Expand All @@ -1070,6 +1072,12 @@ LabelEarningsPerYear = Ann\u00E9e

LabelEarningsSelectStartYear = B\u00E9n\u00E9fices \u00E0 partir de l'ann\u00E9e :

LabelEarningsTradeProfitLoss = M\u00E9tiers ferm\u00E9s

LabelEarningsUseConsolidateRetired = Consolidation de titres inactifs

LabelEarningsUseTradeProfitLoss = Prendre en compte les b\u00E9n\u00E9fices des trades

LabelError = Erreur

LabelEurostatRegion = R\u00E9gion
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1105,6 +1105,8 @@ LabelEarningsPerYear = Anno
LabelEarningsSelectStartYear = Profitti a partire dall'anno:

LabelEarningsTradeProfitLoss = Operazioni chiuse

LabelError = Errore

LabelEurostatRegion = Regione
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1079,7 +1079,9 @@ LabelEarningsByQuarterAndVehicle = Kwartaal / Instrument

LabelEarningsByYearAndVehicle = Jaar / Instrument

LabelEarningsExpenses = Inkomsten & Uitgaven
LabelEarningsConsolidateRetired = \u2211 Gepensioneerde effecten

LabelEarningsExpenses = Inkomen & Uitgaven

LabelEarningsPerMonth = Maand

Expand All @@ -1089,6 +1091,12 @@ LabelEarningsPerYear = Jaar

LabelEarningsSelectStartYear = Inkomsten beginnend met jaar:

LabelEarningsTradeProfitLoss = Gesloten transacties

LabelEarningsUseConsolidateRetired = Consolidatie van inactieve effecten

LabelEarningsUseTradeProfitLoss = Houd rekening met de winst van transacties

LabelError = Fout

LabelEurostatRegion = Regio
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1095,7 +1095,9 @@ LabelEarningsByQuarterAndVehicle = Trimestre / Instrumento

LabelEarningsByYearAndVehicle = Ano / Instrumento

LabelEarningsExpenses = Ganhos & Despesas
LabelEarningsConsolidateRetired = \u2211 T\u00EDtulos aposentados

LabelEarningsExpenses = Receitas & Despesas

LabelEarningsPerMonth = M\u00EAs

Expand All @@ -1105,6 +1107,12 @@ LabelEarningsPerYear = Ano

LabelEarningsSelectStartYear = Ganhos a partir do ano:

LabelEarningsTradeProfitLoss = Negocia\u00E7\u00F5es fechadas

LabelEarningsUseConsolidateRetired = Consolida\u00E7\u00E3o de t\u00EDtulos inativos

LabelEarningsUseTradeProfitLoss = Leve em considera\u00E7\u00E3o os lucros das negocia\u00E7\u00F5es

LabelError = Erro

LabelEurostatRegion = Regi\u00E3o
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -78,8 +78,21 @@ protected void createComposite(Composite parent)
}
});

Label l = new Label(container, SWT.NONE);
l.setText(Messages.ColumnSum);
if (model.usesConsolidateRetired())
{
Label lSumRetired = new Label(container, SWT.NONE);
lSumRetired.setText(Messages.LabelEarningsConsolidateRetired);

for (int m = month; m < totalNoOfMonths; m += 12)
{
ColoredLabel cl = new ColoredLabel(container, SWT.RIGHT);
cl.setText(Values.Amount.format(model.getSumRetired().getValue(m)));
GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).applyTo(cl);
}
}

Label lSum = new Label(container, SWT.NONE);
lSum.setText(Messages.ColumnSum);

for (int m = month; m < totalNoOfMonths; m += 12)
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -198,14 +198,17 @@ public Image getImage(Object element)
public String getText(Object element)
{
InvestmentVehicle vehicle = ((EarningsViewModel.Line) element).getVehicle();
return vehicle != null ? vehicle.getName() : Messages.ColumnSum;
return vehicle != null ? vehicle.getName()
: (((EarningsViewModel.Line) element).getConsolidatedRetired()
? Messages.LabelEarningsConsolidateRetired
: Messages.ColumnSum);
}

@Override
public Font getFont(Object element)
{
InvestmentVehicle vehicle = ((EarningsViewModel.Line) element).getVehicle();
return vehicle != null ? null : boldFont;
return vehicle != null || ((EarningsViewModel.Line) element).getConsolidatedRetired() ? null : boldFont;
}
});

Expand Down Expand Up @@ -257,7 +260,7 @@ public String getToolTipText(Object element)
public Font getFont(Object element)
{
InvestmentVehicle vehicle = ((EarningsViewModel.Line) element).getVehicle();
return vehicle != null ? null : boldFont;
return vehicle != null || ((EarningsViewModel.Line) element).getConsolidatedRetired() ? null : boldFont;
}
});

Expand Down Expand Up @@ -300,7 +303,7 @@ public String getText(Object element)
@Override
public Font getFont(Object element)
{
return boldFont;
return ((EarningsViewModel.Line) element).getConsolidatedRetired() ? null : boldFont;
}
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -84,8 +84,25 @@ protected void createComposite(Composite parent)
}
});

Label l = new Label(container, SWT.NONE);
l.setText(Messages.ColumnSum);
if (model.usesConsolidateRetired())
{
Label lSumRetired = new Label(container, SWT.NONE);
lSumRetired.setText(Messages.LabelEarningsConsolidateRetired);

for (int m = quarter * 3; m < totalNoOfMonths; m += 12)
{
int mLimit = m + 3;
long value = 0;
for (int mQuarter = m; mQuarter < mLimit && mQuarter < totalNoOfMonths; mQuarter += 1)
value += model.getSumRetired().getValue(mQuarter);
ColoredLabel cl = new ColoredLabel(container, SWT.RIGHT);
cl.setText(Values.Amount.format(value));
GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).applyTo(cl);
}
}

Label lSum = new Label(container, SWT.NONE);
lSum.setText(Messages.ColumnSum);

for (int m = quarter * 3; m < totalNoOfMonths; m += 12)
{
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ public String getToolTipText(Object element)
public Font getFont(Object element)
{
InvestmentVehicle vehicle = ((EarningsViewModel.Line) element).getVehicle();
return vehicle != null ? null : boldFont;
return vehicle != null || ((EarningsViewModel.Line) element).getConsolidatedRetired() ? null : boldFont;
}
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -87,8 +87,22 @@ protected void createComposite(Composite parent)
GridDataFactory.fillDefaults().align(SWT.END, SWT.FILL).applyTo(l);
});

Label l = new Label(container, SWT.NONE);
l.setText(Messages.ColumnSum);
if (model.usesConsolidateRetired())
{
Label lSumRetired = new Label(container, SWT.NONE);
lSumRetired.setText(Messages.LabelEarningsConsolidateRetired);

long value = 0;
for (int m = year * 12; m < (year + 1) * 12 && m < totalNoOfMonths; m += 1)
value += model.getSumRetired().getValue(m);

ColoredLabel cl = new ColoredLabel(container, SWT.RIGHT);
cl.setText(Values.Amount.format(value));
GridDataFactory.fillDefaults().align(SWT.FILL, SWT.FILL).applyTo(cl);
}

Label lSum = new Label(container, SWT.NONE);
lSum.setText(Messages.ColumnSum);

long value = 0;
for (int m = year * 12; m < (year + 1) * 12 && m < totalNoOfMonths; m += 1)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ public String getToolTipText(Object element)
public Font getFont(Object element)
{
InvestmentVehicle vehicle = ((EarningsViewModel.Line) element).getVehicle();
return vehicle != null ? null : boldFont;
return vehicle != null || ((EarningsViewModel.Line) element).getConsolidatedRetired() ? null : boldFont;
}
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@ public class EarningsView extends AbstractFinanceView
private static final String KEY_YEAR = EarningsView.class.getSimpleName() + "-year"; //$NON-NLS-1$
private static final String KEY_MODE = EarningsView.class.getSimpleName() + "-mode"; //$NON-NLS-1$
private static final String KEY_USE_GROSS_VALUE = EarningsView.class.getSimpleName() + "-use-gross-value"; //$NON-NLS-1$
private static final String KEY_USE_CONSOLIDATE_RETIRED = EarningsView.class.getSimpleName()
+ "-use-consolidate-retired"; //$NON-NLS-1$

@Inject
private Client client;
Expand Down Expand Up @@ -62,6 +64,7 @@ public void setupModel()

EarningsViewModel.Mode mode = EarningsViewModel.Mode.ALL;
String prefMode = preferences.getString(KEY_MODE);

if (prefMode != null && !prefMode.isEmpty())
{
try
Expand All @@ -75,13 +78,15 @@ public void setupModel()
}

boolean useGrossValue = preferences.getBoolean(KEY_USE_GROSS_VALUE);
boolean useConsolidateRetired = preferences.getBoolean(KEY_USE_CONSOLIDATE_RETIRED);

model.configure(year, mode, useGrossValue);
model.configure(year, mode, useGrossValue, useConsolidateRetired);

model.addUpdateListener(() -> {
preferences.setValue(KEY_YEAR, model.getStartYear());
preferences.setValue(KEY_MODE, model.getMode().name());
preferences.setValue(KEY_USE_GROSS_VALUE, model.usesGrossValue());
preferences.setValue(KEY_USE_CONSOLIDATE_RETIRED, model.usesConsolidateRetired());
});
}

Expand Down Expand Up @@ -149,7 +154,7 @@ protected void addButtons(ToolBarManager toolBar)
}));

toolBar.add(new DropDown(Messages.MenuConfigureView, Images.CONFIG, SWT.NONE, manager -> {

EnumSet<Mode> supportGrossValue = EnumSet.of(Mode.DIVIDENDS, Mode.INTEREST, Mode.EARNINGS);
if (supportGrossValue.contains(model.getMode()))
{
Expand All @@ -159,6 +164,11 @@ protected void addButtons(ToolBarManager toolBar)
manager.add(action);
}

Action action = new SimpleAction(Messages.LabelEarningsUseConsolidateRetired,
a -> model.setUseConsolidateRetired(!model.usesConsolidateRetired()));
action.setChecked(model.usesConsolidateRetired());
manager.add(action);

EarningsTab tab = (EarningsTab) folder.getSelection().getData();
if (tab != null)
{
Expand Down

0 comments on commit 3cb9ee1

Please sign in to comment.