62fdc4751ab63290ba95d64e8444bc5eb367f392
[aspt.git] / loadtab.cc
1 /*******************************************************************
2 Jan Cermak | johniez | aspt.johniez.com
3 Creative Commons 2.5 Attribution-NonCommercial-NoDerivs 2.5 license
4 http://creativecommons.org/licenses/by-nc-nd/2.5/legalcode
5 *******************************************************************/
6
7 #include "loadtab.h"
8
9 LoadTab::LoadTab(QWidget * parent) : QWidget(parent) {
10         init();
11 }
12
13 LoadTab::~LoadTab() {
14         delete label;
15         delete older;
16         delete mainLayout;
17 }
18
19 void LoadTab::init() {
20         QSettings settings("config/global.ini", QSettings::IniFormat);
21         QString num = settings.value("nextXmlId", "0").toString();
22         
23         QDate initDay(2004, 7, 5);
24         
25         older = new QComboBox();
26         
27         int j = 0;
28         for(int i=num.toInt()-1; i>=0; i--) {
29                 quickparse("data/data_"+QString().setNum(i)+".xml");
30                 if(globSlot) {
31                         dataParsed[j][0] = globSlot;
32                         dataParsed[j][1] = curSlot;
33                         dataParsed[j][2] = curSeason;
34                         dataParsed[j][3] = i;
35                 }
36                 QDate cDate = initDay.addDays((dataParsed[j][0]-1)/5);
37                 QString time;
38                 switch((dataParsed[j][0]-1)%5) {
39                         case 0: time = " 4:00-10:00"; break;
40                         case 1: time = " 10:00-14:00"; break;
41                         case 2: time = " 14:00-18:00"; break;
42                         case 3: time = " 18:00-22:00"; break;
43                         case 4: time = " 22:00-4:00"; break;
44                 }
45                 older->addItem("S:" + QString().setNum(dataParsed[j][2]) + " - " + cDate.toString("d.M.yyyy") + time, "");
46                 j++;
47                 if(j>=20) break;
48         }
49         
50         mainLayout = new QVBoxLayout;
51         QString text;
52         
53         label = new QLabel(text);
54         mainLayout->addWidget(older);
55         mainLayout->addWidget(label);
56         setLayout(mainLayout);
57         connect(older, SIGNAL(currentIndexChanged(int)), this, SLOT(indexChanged(int)));
58 }
59
60 void LoadTab::dataChanged() {
61         rebuildUI();
62 }
63
64 void LoadTab::indexChanged(int i) {
65         int fileNum = dataParsed[i][3];
66         parse("data/data_" + QString().setNum(fileNum) + ".xml");
67         emit loaded();
68         label->clear();
69         label->setText(tr("Loaded file: ") + "data_" + QString().setNum(fileNum) + ".xml");
70 }
71
72 void LoadTab::rebuildUI() {
73         delete older;
74         delete label;
75         delete mainLayout;
76         init();
77 }