00001 /************************************************************************** 00002 00003 Chess Clock 00004 00005 Copyright (c) Arto Hyvättinen 2010 00006 00007 This file is part of Chess Clock software. 00008 00009 Chess Clock is free software: you can redistribute it and/or modify 00010 it under the terms of the GNU General Public License as published by 00011 the Free Software Foundation, either version 3 of the License, or 00012 (at your option) any later version. 00013 00014 Chess Clock is distributed in the hope that it will be useful, 00015 but WITHOUT ANY WARRANTY; without even the implied warranty of 00016 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00017 GNU General Public License for more details. 00018 00019 00020 **************************************************************************/ 00021 00022 #ifndef CHESSCLOCKWINDOW_H 00023 #define CHESSCLOCKWINDOW_H 00024 00025 #include <QtGui/QMainWindow> 00026 00027 class ClocksWidget; 00028 class StartWidget; 00029 class TimeControl; 00030 class QStackedWidget; 00031 class TurnInformation; 00032 00033 class ChessClockWindow : public QMainWindow 00034 { 00035 Q_OBJECT 00036 00037 public: 00038 ChessClockWindow(QWidget *parent = 0); 00039 ~ChessClockWindow(); 00040 00041 public slots: 00042 void startGame( TimeControl* timecontrol); 00043 void pause(); 00044 void newGame(); 00046 void visitWeb(); 00047 void about(); 00048 void aboutQt(); 00053 void dontEatMemory(TurnInformation* turnInformation); 00054 00055 00056 protected: 00057 void initTimeControls(); 00059 bool eventFilter(QObject *obj, QEvent *event); 00060 00061 protected: 00062 ClocksWidget* clocks_; 00063 StartWidget* start_; 00064 QStackedWidget* stack_; 00065 }; 00066 00067 #endif // CHESSCLOCKWINDOW_H