1 #include "newround.h"
\r
2 #include "ui_newround.h"
\r
3 #include "datahandling.h"
\r
4 #include "xmlparser.h"
\r
5 #include "basicscorecard.h"
\r
6 #include <QMessageBox>
\r
11 newround::newround(QWidget *parent) :
\r
12 QMainWindow(parent),
\r
13 ui(new Ui::newround)
\r
17 ui->comboBox_player2->setHidden(true);
\r
18 ui->comboBox_player3->setHidden(true);
\r
19 ui->comboBox_player4->setHidden(true);
\r
21 ui->hcp_player2->setHidden(true);
\r
22 ui->hcp_player3->setHidden(true);
\r
23 ui->hcp_player4->setHidden(true);
\r
25 ui->tee_player2->setHidden(true);
\r
26 ui->tee_player3->setHidden(true);
\r
27 ui->tee_player4->setHidden(true);
\r
29 datahandling *playerAndCourseData = datahandling::instance();
\r
30 xmlparser *Parser = new xmlparser();
\r
32 playerAndCourseData->clearData();
\r
33 Parser->loadPlayerXMLFile();
\r
34 Parser->loadCourseXMLFile();
\r
36 const QList<player>& players = playerAndCourseData->getPlayers();
\r
37 const QList<course>& courses = playerAndCourseData->getCourses();
\r
39 QStringList player_namelist;
\r
41 foreach(player plr,players)
\r
43 player_namelist.push_back(plr.m_name);
\r
44 hcps.push_back(plr.m_hcp);
\r
47 foreach(course crs, courses)
\r
49 courseNames.push_back(crs.m_name);
\r
50 courseFiles.push_back(crs.m_file);
\r
53 ui->comboBox_player1->addItems(player_namelist);
\r
54 ui->comboBox_player2->addItems(player_namelist);
\r
55 ui->comboBox_player3->addItems(player_namelist);
\r
56 ui->comboBox_player4->addItems(player_namelist);
\r
57 ui->comboBox_course->addItems(courseNames);
\r
62 void newround::on_checkBox_player1_toggled(bool checked)
\r
66 ui->comboBox_player1->setHidden(true);
\r
67 ui->hcp_player1->setHidden(true);
\r
68 ui->tee_player1->setHidden(true);
\r
69 ui->comboBox_player1->setHidden(false);
\r
70 ui->hcp_player1->setHidden(false);
\r
71 ui->tee_player1->setHidden(false);
\r
75 ui->comboBox_player1->setHidden(true);
\r
76 ui->hcp_player1->setHidden(true);
\r
77 ui->tee_player1->setHidden(true);
\r
78 ui->comboBox_player1->setHidden(true);
\r
79 ui->hcp_player1->setHidden(true);
\r
80 ui->tee_player1->setHidden(true);
\r
84 void newround::on_checkBox_player2_toggled(bool checked)
\r
88 ui->comboBox_player2->setEnabled(true);
\r
89 ui->hcp_player2->setEnabled(true);
\r
90 ui->tee_player2->setEnabled(true);
\r
91 ui->comboBox_player2->setHidden(false);
\r
92 ui->hcp_player2->setHidden(false);
\r
93 ui->tee_player2->setHidden(false);
\r
98 ui->comboBox_player2->setDisabled(true);
\r
99 ui->hcp_player2->setDisabled(true);
\r
100 ui->tee_player2->setDisabled(true);
\r
101 ui->comboBox_player2->setHidden(true);
\r
102 ui->hcp_player2->setHidden(true);
\r
103 ui->tee_player2->setHidden(true);
\r
108 void newround::on_checkBox_player3_toggled(bool checked)
\r
112 ui->comboBox_player3->setEnabled(true);
\r
113 ui->hcp_player3->setEnabled(true);
\r
114 ui->tee_player3->setEnabled(true);
\r
115 ui->comboBox_player3->setHidden(false);
\r
116 ui->hcp_player3->setHidden(false);
\r
117 ui->tee_player3->setHidden(false);
\r
122 ui->comboBox_player3->setDisabled(true);
\r
123 ui->hcp_player3->setDisabled(true);
\r
124 ui->tee_player3->setDisabled(true);
\r
125 ui->comboBox_player3->setHidden(true);
\r
126 ui->hcp_player3->setHidden(true);
\r
127 ui->tee_player3->setHidden(true);
\r
132 void newround::on_checkBox_player4_toggled(bool checked)
\r
136 ui->comboBox_player4->setEnabled(true);
\r
137 ui->hcp_player4->setEnabled(true);
\r
138 ui->tee_player4->setEnabled(true);
\r
139 ui->comboBox_player4->setHidden(false);
\r
140 ui->hcp_player4->setHidden(false);
\r
141 ui->tee_player4->setHidden(false);
\r
146 ui->comboBox_player4->setDisabled(true);
\r
147 ui->hcp_player4->setDisabled(true);
\r
148 ui->tee_player4->setDisabled(true);
\r
149 ui->comboBox_player4->setHidden(true);
\r
150 ui->hcp_player4->setHidden(true);
\r
151 ui->tee_player4->setHidden(true);
\r
156 void newround::on_comboBox_player1_currentIndexChanged(int index)
\r
158 for(int i = 0; i < hcps.length(); i++)
\r
161 ui->hcp_player1->setPlainText(hcps[index]);
\r
165 void newround::on_comboBox_player2_currentIndexChanged(int index)
\r
167 for(int i = 0; i < hcps.length(); i++)
\r
170 ui->hcp_player2->setPlainText(hcps[index]);
\r
174 void newround::on_comboBox_player3_currentIndexChanged(int index)
\r
176 for(int i = 0; i < hcps.length(); i++)
\r
179 ui->hcp_player3->setPlainText(hcps[index]);
\r
183 void newround::on_comboBox_player4_currentIndexChanged(int index)
\r
185 for(int i = 0; i < hcps.length(); i++)
\r
188 ui->hcp_player4->setPlainText(hcps[index]);
\r
192 void newround::on_pushButton_continue_clicked()
\r
194 datahandling *playerAndCourseData = datahandling::instance();
\r
195 xmlparser *Parser = new xmlparser();
\r
198 courseIndex = ui->comboBox_course->currentIndex();
\r
199 playerAndCourseData->selectedCourse = courseFiles[courseIndex];
\r
201 Parser->parseSelectedCourse();
\r
202 saveSelectedPlayers();
\r
203 playerAndCourseData->calculateHandicaps();
\r
205 BasicScorecard *basicscorecard = new BasicScorecard();
\r
206 QMessageBox msgBox;
\r
207 msgBox.setText("Do you want to start a round?");
\r
208 msgBox.setStandardButtons(QMessageBox::Yes | QMessageBox::No);
\r
209 int ret = msgBox.exec();
\r
212 case QMessageBox::Yes:
\r
213 basicscorecard->show();
\r
216 case QMessageBox::No:
\r
221 void newround::saveSelectedPlayers()
\r
223 datahandling *playerAndCourseData = datahandling::instance();
\r
224 const QList<player>& players = playerAndCourseData->getPlayers();
\r
225 QStringList gender;
\r
227 playerAndCourseData->selectedPlayers.clear();
\r
228 playerAndCourseData->selectedPlayersHcp.clear();
\r
229 playerAndCourseData->selectedPlayersTee.clear();
\r
230 playerAndCourseData->selectedPlayersGender.clear();
\r
232 foreach(player plr,players)
\r
234 gender.push_back(plr.m_gender);
\r
237 if(ui->checkBox_player1->isChecked())
\r
239 playerAndCourseData->selectedPlayers << ui->comboBox_player1->currentText();
\r
240 playerAndCourseData->selectedPlayersHcp << ui->hcp_player1->toPlainText();
\r
241 playerAndCourseData->selectedPlayersTee << ui->tee_player1->currentText();
\r
242 playerAndCourseData->selectedPlayersGender << gender[ui->comboBox_player1->currentIndex()];
\r
244 if(ui->checkBox_player2->isChecked())
\r
246 playerAndCourseData->selectedPlayers << ui->comboBox_player2->currentText();
\r
247 playerAndCourseData->selectedPlayersHcp << ui->hcp_player2->toPlainText();
\r
248 playerAndCourseData->selectedPlayersTee << ui->tee_player2->currentText();
\r
249 playerAndCourseData->selectedPlayersGender << gender[ui->comboBox_player2->currentIndex()];
\r
252 if(ui->checkBox_player3->isChecked())
\r
254 playerAndCourseData->selectedPlayers << ui->comboBox_player3->currentText();
\r
255 playerAndCourseData->selectedPlayersHcp << ui->hcp_player3->toPlainText();
\r
256 playerAndCourseData->selectedPlayersTee << ui->tee_player3->currentText();
\r
257 playerAndCourseData->selectedPlayersGender << gender[ui->comboBox_player3->currentIndex()];
\r
260 if(ui->checkBox_player4->isChecked())
\r
262 playerAndCourseData->selectedPlayers << ui->comboBox_player4->currentText();
\r
263 playerAndCourseData->selectedPlayersHcp << ui->hcp_player4->toPlainText();
\r
264 playerAndCourseData->selectedPlayersTee << ui->tee_player4->currentText();
\r
265 playerAndCourseData->selectedPlayersGender << gender[ui->comboBox_player4->currentIndex()];
\r