~schunka/financisto/cz-locales

« back to all changes in this revision

Viewing changes to src/ru/orangesoftware/financisto/activity/BlotterTotalsDetailsActivity.java

  • Committer: Denis Solonenko
  • Date: 2012-04-15 14:38:26 UTC
  • Revision ID: denis.solonenko@gmail.com-20120415143826-ws7txou5y764cedk
Add extended total to blotter

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Copyright (c) 2012 Denis Solonenko.
 
3
 * All rights reserved. This program and the accompanying materials
 
4
 * are made available under the terms of the GNU Public License v2.0
 
5
 * which accompanies this distribution, and is available at
 
6
 * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
 
7
 */
 
8
 
 
9
package ru.orangesoftware.financisto.activity;
 
10
 
 
11
import android.content.Intent;
 
12
import ru.orangesoftware.financisto.R;
 
13
import ru.orangesoftware.financisto.blotter.AccountTotalCalculationTask;
 
14
import ru.orangesoftware.financisto.blotter.BlotterTotalCalculationTask;
 
15
import ru.orangesoftware.financisto.blotter.TotalCalculationTask;
 
16
import ru.orangesoftware.financisto.blotter.WhereFilter;
 
17
import ru.orangesoftware.financisto.model.Total;
 
18
 
 
19
/**
 
20
 * Created by IntelliJ IDEA.
 
21
 * User: denis.solonenko
 
22
 * Date: 3/15/12 16:40 PM
 
23
 */
 
24
public class BlotterTotalsDetailsActivity extends AbstractTotalsDetailsActivity  {
 
25
 
 
26
    private volatile TotalCalculationTask totalCalculationTask;
 
27
 
 
28
    public BlotterTotalsDetailsActivity() {
 
29
        super(R.string.blotter_total_in_currency);
 
30
    }
 
31
 
 
32
    @Override
 
33
    protected void internalOnCreate() {
 
34
        Intent intent = getIntent();
 
35
        if (intent != null) {
 
36
            WhereFilter blotterFilter = WhereFilter.fromIntent(intent);
 
37
            totalCalculationTask = createTotalCalculationTask(blotterFilter);
 
38
        }
 
39
    }
 
40
 
 
41
    private TotalCalculationTask createTotalCalculationTask(WhereFilter blotterFilter) {
 
42
        WhereFilter filter = WhereFilter.copyOf(blotterFilter);
 
43
        if (filter.getAccountId() > 0) {
 
44
            shouldShowHomeCurrencyTotal = false;
 
45
            return new AccountTotalCalculationTask(this, db, filter, null);
 
46
        } else {
 
47
            return new BlotterTotalCalculationTask(this, db, filter, null);
 
48
        }
 
49
    }
 
50
 
 
51
    protected Total getTotalInHomeCurrency() {
 
52
        return totalCalculationTask.getTotalInHomeCurrency();
 
53
    }
 
54
 
 
55
    protected Total[] getTotals() {
 
56
        return totalCalculationTask.getTotals();
 
57
    }
 
58
 
 
59
}