blob: 94f5c244ba86b9050b357d930b73fc9870ad2817 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
import Qt 4.7
import "SamegameCore"
import "SamegameCore/samegame.js" as Logic
Rectangle {
id: screen
width: 490; height: 720
SystemPalette { id: activePalette }
Item {
width: parent.width; anchors.top: parent.top; anchors.bottom: toolBar.top
Image {
id: background
anchors.fill: parent; source: "SamegameCore/pics/background.png"
fillMode: Image.PreserveAspectCrop
smooth: true
}
Item {
id: gameCanvas
property int score: 0
property int tileSize: 40
z: 20; anchors.centerIn: parent
width: parent.width - (parent.width % tileSize);
height: parent.height - (parent.height % tileSize);
MouseArea {
id: gameMR
anchors.fill: parent; onClicked: Logic.handleClick(mouse.x,mouse.y);
}
}
}
Dialog { id: dialog; anchors.centerIn: parent; z: 21 }
Dialog {
id: scoreName; anchors.centerIn: parent; z: 22;
property int initialWidth: 0
Behavior on width {NumberAnimation{} enabled: initialWidth!=0}
Text {
id: spacer
anchors.left: scoreName.left
anchors.leftMargin: 20
anchors.verticalCenter: parent.verticalCenter
text: "You won! Please enter your name: "
}
TextInput {
id: editor
onTextChanged: {
var newWidth = editor.width + spacer.width + 40;
if((newWidth > scoreName.width && newWidth < screen.width)
|| (scoreName.width > scoreName.initialWidth))
scoreName.width = newWidth;
}
onAccepted: {
if(scoreName.opacity==1&&editor.text!="")
Logic.saveHighScore(editor.text);
scoreName.forceClose();
}
anchors.verticalCenter: parent.verticalCenter
focus: true
anchors.left: spacer.right
}
}
Rectangle {
id: toolBar
color: activePalette.window
height: 32; width: parent.width
anchors.bottom: screen.bottom
Button {
id: btnA; text: "New Game"; onClicked: Logic.initBoard();
anchors.left: parent.left; anchors.leftMargin: 3
anchors.verticalCenter: parent.verticalCenter
}
Button {
id: btnB; text: "Quit"; onClicked: Qt.quit();
anchors.left: btnA.right; anchors.leftMargin: 3
anchors.verticalCenter: parent.verticalCenter
}
Text {
id: score
text: "Score: " + gameCanvas.score; font.bold: true
anchors.right: parent.right; anchors.rightMargin: 3
anchors.verticalCenter: parent.verticalCenter
color: activePalette.windowText
}
}
}
|