Uses com.nokia.meego instead of com.meego
[chessclock] / qml / ClocksPage.qml
1 /**************************************************************************
2
3    Chess Clock
4
5    This file is part of Chess Clock software.
6
7    (This file) Copyright (c) Heli Hyvättinen 2011
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 import QtQuick 1.0
23 import com.nokia.meego 1.0
24 import QtQuick 1.1 
25 import ChessClocks 1.1
26
27
28
29 Page
30 {
31     id: clocksPage
32
33
34     property int timeControl //properties cannot be declared as enumerations in QML
35                              //...must be a valid enum from WrappedClocksWidget
36     property int whiteInitialTime
37     property int blackInitialTime
38     property int whiteAdditionalTime
39     property int blackAdditionalTime
40     property int whiteTurnsPerAddition
41     property int blackTurnsPerAddition
42
43     orientationLock: PageOrientation.LockLandscape
44
45     onStatusChanged:
46     {
47         if (status == PageStatus.Activating)
48         {
49               wrappedClocksWidget.startGame(timeControl,whiteInitialTime,whiteAdditionalTime,whiteTurnsPerAddition,blackInitialTime,blackAdditionalTime,blackTurnsPerAddition)
50               pauseButton.visible = false
51         }
52     }
53
54     property bool appActive: applicationActive
55
56     onAppActiveChanged:
57     {
58         if (appActive == false)
59         {
60             wrappedClocksWidget.pause()
61             pauseButton.visible = false
62         }
63     }
64
65     tools: ToolBarLayout
66     {
67         ToolIcon
68         {
69             iconId: "toolbar-back"
70             onClicked:
71             {
72                 wrappedClocksWidget.pause()
73                 pauseButton.visible = false
74                 confirmationDialog.open()
75             }
76         }
77
78         ToolIcon
79         {
80             id: pauseButton
81             iconId: "toolbar-mediacontrol-pause"
82             onClicked:
83                 {
84                     wrappedClocksWidget.pause()
85                     visible = false
86                 }
87         }
88
89         Item{}  //placeholder needed to put pause button in the middle
90
91
92     }
93
94
95
96
97     WrappedClocksWidget
98     {
99         id: wrappedClocksWidget
100         onUnPaused: pauseButton.visible = true
101     }
102
103
104     QueryDialog
105     {
106         id: confirmationDialog
107         titleText: "Quit?"
108         message:  "Are you sure you want to quit the game?"
109         acceptButtonText: "Quit"
110         rejectButtonText: "Continue play"
111
112         onAccepted:
113         {
114            pageStack.pop()
115         }
116
117     }
118 }