OSDN Git Service

Removing redundant error checking related to booking declaration.
[tjqt4port/tj2qt4.git] / taskjuggler / TableColumnInfo.cpp
1 /*
2  * TableColumnInfo.cpp - TaskJuggler
3  *
4  * Copyright (c) 2001, 2002, 2003, 2004 by Chris Schlaeger <cs@kde.org>
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of version 2 of the GNU General Public License as
8  * published by the Free Software Foundation.
9  *
10  * $Id$
11  */
12
13 #include "TableColumnInfo.h"
14 #include "ExpressionTree.h"
15
16 TableColumnInfo::~TableColumnInfo()
17 {
18     delete [] sum;
19     delete [] memory;
20     delete hideCellText;
21     delete hideCellURL;
22 }
23
24 void
25 TableColumnInfo::clearSum()
26 {
27     delete [] sum;
28     sum = new QMap<QString, double>[maxScenarios];
29 }
30
31 void
32 TableColumnInfo::clearMemory()
33 {
34     delete [] memory;
35     memory = new QMap<QString, double>[maxScenarios];
36 }
37
38 void
39 TableColumnInfo::addToSum(uint sc, const QString& key, double val)
40 {
41     sum[sc][key] += val;
42 }
43
44 void
45 TableColumnInfo::addSumToMemory(bool subtract)
46 {
47     QMap<QString, double>::Iterator sit;
48
49     for (uint sc = 0; sc < maxScenarios; ++sc)
50         for (sit = sum[sc].begin(); sit != sum[sc].end(); ++sit)
51         {
52             if (subtract)
53                 memory[sc][sit.key()] -= *sit;
54             else
55                 memory[sc][sit.key()] += *sit;
56         }
57 }
58
59 void
60 TableColumnInfo::negateMemory()
61 {
62     QMap<QString, double>::Iterator mit;
63
64     for (uint sc = 0; sc < maxScenarios; ++sc)
65         for (mit = memory[sc].begin(); mit != memory[sc].end(); ++mit)
66             *mit = -*mit;
67 }
68
69 void
70 TableColumnInfo::recallMemory()
71 {
72     QMap<QString, double>::ConstIterator mit;
73
74     for (uint sc = 0; sc < maxScenarios; ++sc)
75     {
76         sum[sc].clear();
77         for (mit = memory[sc].begin(); mit != memory[sc].end(); ++mit)
78             sum[sc][mit.key()] = *mit;
79     }
80 }
81