Added icons to time controllers
[chessclock] / classes / timecontrol / fischertimecontrol.cpp
1  /**************************************************************************;
2
3     Chess Clock
4
5     Copyright (c) Arto Hyvättinen 2010
6
7     This file is part of Chess Clock software.
8
9     Chess Clock is free software: you can redistribute it and/or modify
10     it under the terms of the GNU General Public License as published by
11     the Free Software Foundation, either version 3 of the License, or
12     (at your option) any later version.
13
14     Chess Clock is distributed in the hope that it will be useful,
15     but WITHOUT ANY WARRANTY; without even the implied warranty of
16     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17     GNU General Public License for more details.
18
19
20 **************************************************************************/
21
22 #include "fischertimecontrol.h"
23 #include "fischerclock.h"
24 #include "../clockswidget.h"
25 #include "basicdialog.h"
26
27 #include <QApplication>
28
29
30 FischerTimeControl::FischerTimeControl()
31 {
32 }
33
34 QString FischerTimeControl::getDescription()
35 {
36     return qApp->translate("Fischer","Specified time increment is added to clock before turn.");
37 }
38
39 QIcon FischerTimeControl::getIcon()
40 {
41     return QIcon(":/rc/pic/addbefore.png");
42 }
43
44 ClocksWidget* FischerTimeControl::initGame(bool useLastSettings)
45 {
46     BasicDialog dialog(getName());
47     dialog.init();
48
49     if( useLastSettings || dialog.exec() == QDialog::Accepted)
50     {
51         dialog.store();
52         FischerClock* white = new FischerClock( true, dialog.getWhiteAddition(), dialog.getWhitePerTurns());
53         white->setTimeAvailable(dialog.getWhiteInitial());
54
55         FischerClock* black = new FischerClock( false, dialog.getBlackAddition(), dialog.getBlackPerTurns());
56         black->setTimeAvailable( dialog.getBlackInitial());
57
58         return( new ClocksWidget(white,black));
59
60     }
61     else
62         return 0;
63 }