2 * CSVResourceReportElement.h - ResourceJuggler
4 * Copyright (c) 2001, 2002, 2003, 2004 by Chris Schlaeger <cs@kde.org>
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.
13 #include "CSVResourceReportElement.h"
14 #include "TableLineInfo.h"
15 #include "ExpressionTree.h"
16 #include "Operation.h"
20 CSVResourceReportElement::CSVResourceReportElement(Report* r,
23 CSVReportElement(r, df, dl)
25 uint sc = r->getProject()->getMaxScenarios();
26 columns.append(new TableColumnInfo(sc, "no"));
27 columns.append(new TableColumnInfo(sc, "name"));
28 columns.append(new TableColumnInfo(sc, "start"));
29 columns.append(new TableColumnInfo(sc, "end"));
32 setHideResource(new ExpressionTree(new Operation(0)));
34 setHideTask(new ExpressionTree(new Operation(1)));
36 taskSortCriteria[0] = CoreAttributesList::TreeMode;
37 taskSortCriteria[1] = CoreAttributesList::StartUp;
38 taskSortCriteria[2] = CoreAttributesList::EndUp;
39 resourceSortCriteria[0] = CoreAttributesList::TreeMode;
43 CSVResourceReportElement::generate()
47 generateTableHeader();
49 ResourceList filteredResourceList;
50 if (!filterResourceList(filteredResourceList, 0, hideResource,
53 sortResourceList(filteredResourceList);
54 maxDepthResourceList = filteredResourceList.maxDepth();
59 for (ResourceListIterator rli(filteredResourceList); *rli != 0;
63 tli1.ca1 = tli1.resource = *rli;
64 for (int sc = 0; sc < scenarios.count(); ++sc)
67 tli1.sc = scenarios[sc];
69 generateLine(&tli1, sc == 0 ? 4 : 5);