1 /**************************************************************************
5 Copyright (c) Arto Hyvättinen 2010
7 This file is part of Chess Clock software.
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.
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.
20 **************************************************************************/
22 #ifndef CLOCKSWIDGET_H
23 #define CLOCKSWIDGET_H
31 class TurnInformation;
33 class ScreenLitKeeper;
37 /*! Widget with two clocks
39 @author Arto Hyvättinen
42 Central widget of Chess Clock.
43 Needed to create new ClocksWidget to
47 class ClocksWidget : public QWidget
51 ClocksWidget(ChessClock* white, ChessClock* black, QWidget *parent = 0);
53 bool isPlayStarted() { return (status_!=Welcome); }
56 //In Harmattan (PageStackWindow) no mouseReleaseEvents are received. Changed to use mousePressEvent instead
57 void mousePressEvent(QMouseEvent *event);
58 bool eventFilter(QObject *obj, QEvent *event); //same with eventFilter
62 void TurnFinished(TurnInformation* turnInfo);
63 void ClickedWhenStopped();
70 /*! Not to keep screen lit */
78 QLabel* welcomeLabel_;
79 QToolButton* pauseButton_;
80 ScreenLitKeeper* keeper_;
83 Stopped /*! Not running */,
92 QTime delayTimer_; /*! To avoid double clicks */
97 static int const CLICKDELAY = 1500 ; /*! Click delay in msecs */
103 #endif // CLOCKSWIDGET_H