summaryrefslogtreecommitdiffstats
path: root/demos/declarative/samegame/samegame.qml
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-02-05 00:47:53 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-02-05 00:47:53 (GMT)
commit757733f4a5698ec87072031996e6025a51ce1648 (patch)
treeb12e7a6c508a3d7e372556286097e41d4f0307ea /demos/declarative/samegame/samegame.qml
parent7474ad656269aec1352d166bb5a4435086d48482 (diff)
parent8aabb79ccde7502eb82aae5ce614b37c6789bc1f (diff)
downloadQt-757733f4a5698ec87072031996e6025a51ce1648.zip
Qt-757733f4a5698ec87072031996e6025a51ce1648.tar.gz
Qt-757733f4a5698ec87072031996e6025a51ce1648.tar.bz2
Merge branch 'master' of scm.dev.nokia.troll.no:qt/qt-qml into master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-qml: (3309 commits) Add some painting benchmarks. Make sure cookies are saved. Fix headers::licenseCheck autotest failure Re-add accidentally deleted file Test SizeItemToLoader to SizeLoaderToItem resizeMode change. Document QmlContext ownership. Add bug note. Fix elision and multilength strings when resizing a Text element. Document calling C++ methods from QML. Document margins property Augment documentation doc: There is no easeNone, it is called easeLinear doc: Converted the basic types page to use \qmlbasictype Focus focusScope from focusing for focusOnPress Really run image reader in its own thread. Don't create one QNetworkAccessManager per XMLHttpRequest We use JavaScript, not ECMAScript. XMLHttpRequest redirection update Image.paintedWidth and Image.paintedHeight when the source changes Remove debug. ...
Diffstat (limited to 'demos/declarative/samegame/samegame.qml')
-rw-r--r--demos/declarative/samegame/samegame.qml85
1 files changed, 85 insertions, 0 deletions
diff --git a/demos/declarative/samegame/samegame.qml b/demos/declarative/samegame/samegame.qml
new file mode 100644
index 0000000..626c76b
--- /dev/null
+++ b/demos/declarative/samegame/samegame.qml
@@ -0,0 +1,85 @@
+import Qt 4.6
+import "content"
+
+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: "content/pics/background.png"
+ fillMode: Image.PreserveAspectCrop
+ smooth: true
+ }
+
+ Item {
+ id: gameCanvas
+ property int score: 0
+ property int tileSize: 40
+
+ Script { source: "content/samegame.js" }
+
+ z: 20; anchors.centerIn: parent
+ width: parent.width - (parent.width % getTileSize());
+ height: parent.height - (parent.height % getTileSize());
+
+ MouseRegion {
+ id: gameMR
+ anchors.fill: parent; onClicked: handleClick(mouse.x,mouse.y);
+ }
+ }
+ }
+
+ Dialog { id: dialog; anchors.centerIn: parent; z: 21 }
+ Dialog {
+ id: scoreName; anchors.centerIn: parent; z: 22;
+ Text {
+ id: spacer
+ opacity: 0
+ text: " You won! Please enter your name:"
+ }
+ TextInput {
+ id: editor
+ onAccepted: {
+ if(scoreName.opacity==1&&editor.text!="")
+ saveHighScore(editor.text);
+ scoreName.forceClose();
+ }
+ anchors.verticalCenter: parent.verticalCenter
+ width: 72; 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: {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.text
+ }
+ }
+}