summaryrefslogtreecommitdiffstats
path: root/CoffeeTweed/content
diff options
context:
space:
mode:
Diffstat (limited to 'CoffeeTweed/content')
-rwxr-xr-xCoffeeTweed/content/Button.qml72
-rwxr-xr-xCoffeeTweed/content/CoffeeTweed.qml177
-rwxr-xr-xCoffeeTweed/content/Cup.qml159
-rwxr-xr-xCoffeeTweed/content/Tray.qml109
-rwxr-xr-xCoffeeTweed/content/TrayModel.qml56
-rwxr-xr-xCoffeeTweed/content/images/n900/bg.pngbin0 -> 92671 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/bt_add_off.pngbin0 -> 48598 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/bt_add_on.pngbin0 -> 53703 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/bt_remove_off.pngbin0 -> 49733 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/bt_remove_on.pngbin0 -> 54801 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/close.pngbin0 -> 2485 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/coffee_plate.pngbin0 -> 18309 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/cup_back.pngbin0 -> 5327 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/cup_blur.pngbin0 -> 28242 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/cup_content.pngbin0 -> 1568 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/cup_empty.pngbin0 -> 21819 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/cup_front.pngbin0 -> 21612 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/cup_full.pngbin0 -> 22368 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/cup_smoke.pngbin0 -> 11413 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/empty_row1.pngbin0 -> 6030 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/empty_row2.pngbin0 -> 5906 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/empty_row3.pngbin0 -> 5379 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/taskbar_bg.pngbin0 -> 22414 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/taskbar_close_bt.pngbin0 -> 2243 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/taskbar_division.pngbin0 -> 249 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/taskbar_home_bt.pngbin0 -> 992 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/taskbar_options_bt.pngbin0 -> 301 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/taskbar_placeholder.pngbin0 -> 37381 bytes
-rwxr-xr-xCoffeeTweed/content/images/s60/bg.pngbin0 -> 132596 bytes
-rwxr-xr-xCoffeeTweed/content/images/s60/bt_add_off.pngbin0 -> 38179 bytes
-rwxr-xr-xCoffeeTweed/content/images/s60/bt_add_on.pngbin0 -> 42570 bytes
-rwxr-xr-xCoffeeTweed/content/images/s60/bt_remove_off.pngbin0 -> 38978 bytes
-rwxr-xr-xCoffeeTweed/content/images/s60/bt_remove_on.pngbin0 -> 43225 bytes
-rwxr-xr-xCoffeeTweed/content/images/s60/close.pngbin0 -> 2194 bytes
-rwxr-xr-xCoffeeTweed/content/images/s60/coffee_plate.pngbin0 -> 15075 bytes
-rwxr-xr-xCoffeeTweed/content/images/s60/cup_back.pngbin0 -> 6495 bytes
-rwxr-xr-xCoffeeTweed/content/images/s60/cup_blur.pngbin0 -> 22601 bytes
-rwxr-xr-xCoffeeTweed/content/images/s60/cup_content.pngbin0 -> 4215 bytes
-rwxr-xr-xCoffeeTweed/content/images/s60/cup_empty.pngbin0 -> 15949 bytes
-rwxr-xr-xCoffeeTweed/content/images/s60/cup_front.pngbin0 -> 15148 bytes
-rwxr-xr-xCoffeeTweed/content/images/s60/cup_full.pngbin0 -> 16705 bytes
-rwxr-xr-xCoffeeTweed/content/images/s60/cup_smoke.pngbin0 -> 10814 bytes
-rwxr-xr-xCoffeeTweed/content/images/s60/empty_row1.pngbin0 -> 7328 bytes
-rwxr-xr-xCoffeeTweed/content/images/s60/empty_row2.pngbin0 -> 7214 bytes
-rwxr-xr-xCoffeeTweed/content/images/s60/empty_row3.pngbin0 -> 6885 bytes
45 files changed, 573 insertions, 0 deletions
diff --git a/CoffeeTweed/content/Button.qml b/CoffeeTweed/content/Button.qml
new file mode 100755
index 0000000..675227c
--- /dev/null
+++ b/CoffeeTweed/content/Button.qml
@@ -0,0 +1,72 @@
+/****************************************************************************
+**
+** This file is part of CoffeeTweed
+**
+** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).*
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions
+** are met:
+**
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+**
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in the
+** documentation and/or other materials provided with the distribution.
+**
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+** COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+** POSSIBILITY OF SUCH DAMAGE."
+**
+****************************************************************************/
+
+import Qt 4.7
+
+Item {
+ id: button
+ width: imageOff.width
+ height: imageOff.height
+
+ property string sourceOn
+ property string sourceOff
+
+ signal clicked()
+
+ Image {
+ id: imageOff
+ source: sourceOff
+ }
+
+ Image {
+ id: imageOn
+ source: sourceOn
+ opacity: 0
+ Behavior on opacity { NumberAnimation { duration: 150; } }
+ }
+
+ MouseArea {
+ anchors.fill: parent
+ onClicked: button.clicked();
+ onPressed: imageOn.opacity = 1.0;
+ onReleased: imageOn.opacity = 0.0;
+ }
+}
diff --git a/CoffeeTweed/content/CoffeeTweed.qml b/CoffeeTweed/content/CoffeeTweed.qml
new file mode 100755
index 0000000..905d286
--- /dev/null
+++ b/CoffeeTweed/content/CoffeeTweed.qml
@@ -0,0 +1,177 @@
+/****************************************************************************
+**
+** This file is part of CoffeeTweed
+**
+** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).*
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions
+** are met:
+**
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+**
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in the
+** documentation and/or other materials provided with the distribution.
+**
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+** COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+** POSSIBILITY OF SUCH DAMAGE."
+**
+****************************************************************************/
+
+import Qt 4.7
+
+Rectangle {
+ id: root
+
+ property real scaleFactor: root.width/800.0
+
+ property int coffeeCount: 0
+ property int coffeeTotal: 12
+ property bool isAdding: false
+ property bool isAnimating: false
+ property bool animationHappening: root.isAnimating || cup.isAnimating
+
+ signal doTransition()
+
+ function addOne() {
+ if (!animationHappening && coffeeCount < coffeeTotal) {
+ isAdding = true;
+ isAnimating = true;
+ cup.state = "less_one";
+ doTransition();
+ tray.addCup(coffeeCount + 1);
+ }
+ }
+
+ function removeOne() {
+ if (!animationHappening && coffeeCount > 0) {
+ isAdding = false;
+ isAnimating = true;
+ doTransition();
+ tray.removeCup(coffeeCount - 1);
+ }
+ }
+
+ Image {
+ id: bg
+ source: folder + "bg.png"
+ anchors.bottom: root.bottom
+ }
+
+ Text {
+ id: counterUp
+ y: 65 * scaleFactor
+ text: coffeeTotal - coffeeCount
+ color: "white"
+ font.bold: true
+ font.pixelSize: 100
+ anchors.right: toGo.left
+ anchors.rightMargin: 12
+ }
+
+ Text {
+ id: counterDown
+ text: coffeeCount
+ y: 31 * scaleFactor
+ color: "#999999"
+ font.bold: true
+ font.pixelSize: 50 * scaleFactor
+ anchors.right: cupsDown.left
+ anchors.rightMargin: 12
+ }
+
+ Text {
+ id: toGo;
+ x: 345 * scaleFactor
+ y: 65 * scaleFactor
+ text: "to go"
+ font.pixelSize: 100 * scaleFactor
+ font.letterSpacing: -2
+ color: "white"
+ }
+
+ Text {
+ id: cupsDown
+ x: 390 * scaleFactor
+ y: 31 * scaleFactor
+ text: "cups down"
+ font.pixelSize: 50 * scaleFactor
+ font.letterSpacing: -2
+ color: "#999"
+ }
+
+ onDoTransition: transition.running = true;
+ SequentialAnimation { id: transition
+ running: false
+ loops: 1
+ ParallelAnimation {
+ PropertyAnimation { target: counterUp; property: "opacity"; to: 0.0; }
+ PropertyAnimation { target: counterDown; property: "opacity"; to: 0.0; }
+ }
+ PauseAnimation { duration: isAdding ? 1500 : 300; }
+ PropertyAction { target: root; property: "coffeeCount"; value: coffeeCount + (isAdding ? 1 : -1); }
+ ParallelAnimation {
+ PropertyAnimation { target: counterUp; property: "opacity"; to: 1.0; }
+ PropertyAnimation { target: counterDown; property: "opacity"; to: 1.0; }
+ }
+ PropertyAction { target: root; property: "isAnimating"; value: false; }
+ }
+
+ Tray {
+ id: tray
+ x: 335 * scaleFactor
+ y: 225 * scaleFactor
+ }
+
+ Cup {
+ id: cup
+ x: 120 * scaleFactor
+ y: 0
+ }
+
+ Button {
+ x: -7 * scaleFactor
+ y: 100 * scaleFactor
+ sourceOn: folder+"bt_add_on.png"
+ sourceOff: folder+"bt_add_off.png"
+ onClicked: addOne()
+ }
+
+ Button {
+ x: 619 * scaleFactor
+ y: 100 * scaleFactor
+ sourceOn: folder+"bt_remove_on.png"
+ sourceOff: folder+"bt_remove_off.png"
+ onClicked: removeOne()
+ }
+
+ Button {
+ id: bt_close
+ anchors.top: parent.top
+ anchors.right: parent.right
+ sourceOff: folder + "close.png"
+
+ onClicked: Qt.quit()
+ }
+}
diff --git a/CoffeeTweed/content/Cup.qml b/CoffeeTweed/content/Cup.qml
new file mode 100755
index 0000000..69d553b
--- /dev/null
+++ b/CoffeeTweed/content/Cup.qml
@@ -0,0 +1,159 @@
+/****************************************************************************
+**
+** This file is part of CoffeeTweed
+**
+** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).*
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions
+** are met:
+**
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+**
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in the
+** documentation and/or other materials provided with the distribution.
+**
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+** COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+** POSSIBILITY OF SUCH DAMAGE."
+**
+****************************************************************************/
+
+import Qt 4.7
+
+Item {
+ id: coffee_cup
+ property bool isAnimating: coffee_cup.state == "less_one"
+ width: 190 * root.scaleFactor
+ height: 480 * root.scaleFactor
+
+ function return_to_ashes() {
+ coffee_cup.state = "";
+ }
+
+ Image {
+ id: cup_plate
+ y: 315 * root.scaleFactor
+ x: 40 * root.scaleFactor
+ source: folder + "coffee_plate.png"
+ }
+
+ Image {
+ id: cup_full
+ x: 47 * root.scaleFactor
+ y: 225 * root.scaleFactor
+ source: folder + "cup_back.png"
+
+ Image { id: cup_content; source: folder + "cup_content.png"; }
+ Image { id: cup_front; source: folder + "cup_front.png"; }
+ }
+
+ Image {
+ id: cup_empty
+ x: 47 * root.scaleFactor
+ y: 225 * root.scaleFactor
+ opacity: 0
+ source: folder + "cup_empty.png"
+ }
+
+ Image {
+ id: cup_smoke
+ x: 33 * root.scaleFactor
+ y: -10 * root.scaleFactor
+ source: folder + "cup_smoke.png"
+ }
+
+ Image {
+ id: cup_running
+ x: 47 * root.scaleFactor
+ y: -283 * root.scaleFactor
+ opacity: 0
+ source: folder + "cup_blur.png"
+ }
+
+ states: [
+ State{
+ name: "less_one"
+ }
+ ]
+
+ transitions: [
+ Transition {
+ from: ""; to: "less_one"
+
+ SequentialAnimation {
+ // Empty the cup and fade the smoke
+ ParallelAnimation {
+ PropertyAnimation { target: cup_smoke; property: "opacity"; to: 0; duration: 500; }
+ PropertyAnimation { target: cup_content; property: "y"; to: 20 * root.scaleFactor; duration: 500; }
+ }
+
+ // Change the full cup composition by the empty cup
+ PropertyAction { target: cup_empty; property: "opacity"; value: 1 }
+ PropertyAction { target: cup_full; property: "opacity"; value: 0; }
+
+ // Pause for coffee
+ PauseAnimation { duration: 100; }
+
+ // Fade out the empty cup
+ PropertyAnimation { target: cup_empty; property: "opacity"; to: 0; duration: 200; }
+
+ // Send the empty cup to the top and update the number
+ PropertyAction { target: cup_empty; property: "y"; value: -243 * root.scaleFactor; }
+
+ // Turn on the blur and empty cups
+ PropertyAction { target: cup_running; property: "opacity"; value: 1; }
+ PropertyAction { target: cup_empty; property: "opacity"; value: 1; }
+
+ // Clean cup coming!
+ ParallelAnimation {
+ PropertyAnimation { target: cup_running; property: "y"; to: 180 * root.scaleFactor; duration: 300; }
+ PropertyAnimation { target: cup_empty; property: "y"; to: 230 * root.scaleFactor; duration: 300; }
+ }
+
+ // Landing in the plate
+ ParallelAnimation {
+ PropertyAnimation { target: cup_empty; property: "y"; to: 225 * root.scaleFactor; duration: 150; }
+ PropertyAnimation { target: cup_running; property: "opacity"; to: 0; duration: 200; }
+ }
+
+ // Get the blured cup to the original place
+ PropertyAction { target: cup_running; property: "y"; value: -283 * root.scaleFactor; }
+
+ // Wait for the waiter
+ PauseAnimation { duration: 500; }
+
+ // Change the empty cup by the full cup composition
+ PropertyAction { target: cup_full; property: "opacity"; value: 1; }
+ PropertyAction { target: cup_empty; property: "opacity"; value: 0; }
+
+ // Here is your coffee, sir
+ PropertyAnimation { target: cup_content; property: "y"; to: 0; duration: 400; }
+ PropertyAnimation { target: cup_smoke; property: "opacity"; to: 1; duration: 700; }
+
+ // Ready for the next turn
+ ScriptAction { script: return_to_ashes() }
+ }
+ }
+ ]
+}
diff --git a/CoffeeTweed/content/Tray.qml b/CoffeeTweed/content/Tray.qml
new file mode 100755
index 0000000..0e202a9
--- /dev/null
+++ b/CoffeeTweed/content/Tray.qml
@@ -0,0 +1,109 @@
+/****************************************************************************
+**
+** This file is part of CoffeeTweed
+**
+** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).*
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions
+** are met:
+**
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+**
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in the
+** documentation and/or other materials provided with the distribution.
+**
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+** COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+** POSSIBILITY OF SUCH DAMAGE."
+**
+****************************************************************************/
+
+import Qt 4.7
+
+Item {
+ id: cuptray
+ width: 330
+ height: 110
+
+ TrayModel{
+ id: trayModel
+ }
+
+ function addCup(index) {
+ var cupIndex = index - 1;
+ trayModel.set(cupIndex, { cupState: "display" });
+ }
+
+ function removeCup(index) {
+ var cupIndex = index;
+ trayModel.set(cupIndex, { cupState: "hidden" });
+ }
+
+ Component {
+ id: emptyCup
+
+ Item {
+ id: cupItem
+ x: xPos
+ y: yPos
+ z: zPos
+ width: 69
+ height: 67
+ state: cupState
+
+ Image {
+ id: cupImage
+ source: imageSource
+ opacity: 0
+ }
+
+ states: [
+ State {
+ name: "display"
+ PropertyChanges { target: cupImage; opacity: 1.0; }
+ },
+ State {
+ name: "hidden"
+ PropertyChanges { target: cupImage; opacity: 0.0; }
+ }
+ ]
+
+ transitions: [
+ Transition {
+ from: "*"; to: "hidden"
+ PropertyAnimation { target: cupImage; property: "opacity"; duration: 400; }
+ },
+ Transition {
+ from: "hidden"; to: "display"
+ PropertyAnimation { target: cupImage; property: "opacity"; duration: 400; }
+ }
+ ]
+ }
+ }
+
+ Repeater {
+ model: trayModel
+ delegate: emptyCup
+ }
+}
diff --git a/CoffeeTweed/content/TrayModel.qml b/CoffeeTweed/content/TrayModel.qml
new file mode 100755
index 0000000..211d47a
--- /dev/null
+++ b/CoffeeTweed/content/TrayModel.qml
@@ -0,0 +1,56 @@
+/****************************************************************************
+**
+** This file is part of CoffeeTweed
+**
+** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).*
+** All rights reserved.
+** Contact: Nokia Corporation (qt-info@nokia.com)
+**
+** You may use this file under the terms of the BSD license as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions
+** are met:
+**
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+**
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in the
+** documentation and/or other materials provided with the distribution.
+**
+** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
+** the names of its contributors may be used to endorse or promote
+** products derived from this software without specific prior written
+** permission.
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+** COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
+** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+** POSSIBILITY OF SUCH DAMAGE."
+**
+****************************************************************************/
+
+import Qt 4.7
+
+ListModel {
+ id: trayModel
+
+ Component.onCompleted:{
+ for(var z = 3; z > 0; z--){
+ for(var i = 1; i < 5; i++){
+ var y = ((z - 1)*20)*root.scaleFactor;
+ var x = ((z - 1)*32 + (i - 1)*60)*root.scaleFactor;
+ append({ xPos: x, yPos: y, zPos: z, cupState:"hidden", imageSource: root.folder + "empty_row"+ (4-z) + ".png"});
+ }
+ }
+ }
+}
diff --git a/CoffeeTweed/content/images/n900/bg.png b/CoffeeTweed/content/images/n900/bg.png
new file mode 100755
index 0000000..ef08d0e
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/bg.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/bt_add_off.png b/CoffeeTweed/content/images/n900/bt_add_off.png
new file mode 100755
index 0000000..b317af6
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/bt_add_off.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/bt_add_on.png b/CoffeeTweed/content/images/n900/bt_add_on.png
new file mode 100755
index 0000000..593cf2e
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/bt_add_on.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/bt_remove_off.png b/CoffeeTweed/content/images/n900/bt_remove_off.png
new file mode 100755
index 0000000..c5bd438
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/bt_remove_off.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/bt_remove_on.png b/CoffeeTweed/content/images/n900/bt_remove_on.png
new file mode 100755
index 0000000..2b6c9e2
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/bt_remove_on.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/close.png b/CoffeeTweed/content/images/n900/close.png
new file mode 100755
index 0000000..e86141a
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/close.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/coffee_plate.png b/CoffeeTweed/content/images/n900/coffee_plate.png
new file mode 100755
index 0000000..4abbfb9
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/coffee_plate.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/cup_back.png b/CoffeeTweed/content/images/n900/cup_back.png
new file mode 100755
index 0000000..c553027
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/cup_back.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/cup_blur.png b/CoffeeTweed/content/images/n900/cup_blur.png
new file mode 100755
index 0000000..2add637
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/cup_blur.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/cup_content.png b/CoffeeTweed/content/images/n900/cup_content.png
new file mode 100755
index 0000000..848a691
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/cup_content.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/cup_empty.png b/CoffeeTweed/content/images/n900/cup_empty.png
new file mode 100755
index 0000000..6201666
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/cup_empty.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/cup_front.png b/CoffeeTweed/content/images/n900/cup_front.png
new file mode 100755
index 0000000..81c5da6
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/cup_front.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/cup_full.png b/CoffeeTweed/content/images/n900/cup_full.png
new file mode 100755
index 0000000..7470d53
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/cup_full.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/cup_smoke.png b/CoffeeTweed/content/images/n900/cup_smoke.png
new file mode 100755
index 0000000..aa98b3b
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/cup_smoke.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/empty_row1.png b/CoffeeTweed/content/images/n900/empty_row1.png
new file mode 100755
index 0000000..9023f93
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/empty_row1.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/empty_row2.png b/CoffeeTweed/content/images/n900/empty_row2.png
new file mode 100755
index 0000000..2a8fa2f
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/empty_row2.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/empty_row3.png b/CoffeeTweed/content/images/n900/empty_row3.png
new file mode 100755
index 0000000..211a6d7
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/empty_row3.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/taskbar_bg.png b/CoffeeTweed/content/images/n900/taskbar_bg.png
new file mode 100755
index 0000000..0658fbf
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/taskbar_bg.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/taskbar_close_bt.png b/CoffeeTweed/content/images/n900/taskbar_close_bt.png
new file mode 100755
index 0000000..70a1e66
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/taskbar_close_bt.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/taskbar_division.png b/CoffeeTweed/content/images/n900/taskbar_division.png
new file mode 100755
index 0000000..0e481a4
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/taskbar_division.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/taskbar_home_bt.png b/CoffeeTweed/content/images/n900/taskbar_home_bt.png
new file mode 100755
index 0000000..f4c61d8
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/taskbar_home_bt.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/taskbar_options_bt.png b/CoffeeTweed/content/images/n900/taskbar_options_bt.png
new file mode 100755
index 0000000..f68a4f4
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/taskbar_options_bt.png
Binary files differ
diff --git a/CoffeeTweed/content/images/n900/taskbar_placeholder.png b/CoffeeTweed/content/images/n900/taskbar_placeholder.png
new file mode 100755
index 0000000..824f1b3
--- /dev/null
+++ b/CoffeeTweed/content/images/n900/taskbar_placeholder.png
Binary files differ
diff --git a/CoffeeTweed/content/images/s60/bg.png b/CoffeeTweed/content/images/s60/bg.png
new file mode 100755
index 0000000..4f0d9a5
--- /dev/null
+++ b/CoffeeTweed/content/images/s60/bg.png
Binary files differ
diff --git a/CoffeeTweed/content/images/s60/bt_add_off.png b/CoffeeTweed/content/images/s60/bt_add_off.png
new file mode 100755
index 0000000..a60ce4d
--- /dev/null
+++ b/CoffeeTweed/content/images/s60/bt_add_off.png
Binary files differ
diff --git a/CoffeeTweed/content/images/s60/bt_add_on.png b/CoffeeTweed/content/images/s60/bt_add_on.png
new file mode 100755
index 0000000..6586076
--- /dev/null
+++ b/CoffeeTweed/content/images/s60/bt_add_on.png
Binary files differ
diff --git a/CoffeeTweed/content/images/s60/bt_remove_off.png b/CoffeeTweed/content/images/s60/bt_remove_off.png
new file mode 100755
index 0000000..d418ec8
--- /dev/null
+++ b/CoffeeTweed/content/images/s60/bt_remove_off.png
Binary files differ
diff --git a/CoffeeTweed/content/images/s60/bt_remove_on.png b/CoffeeTweed/content/images/s60/bt_remove_on.png
new file mode 100755
index 0000000..e1ddc06
--- /dev/null
+++ b/CoffeeTweed/content/images/s60/bt_remove_on.png
Binary files differ
diff --git a/CoffeeTweed/content/images/s60/close.png b/CoffeeTweed/content/images/s60/close.png
new file mode 100755
index 0000000..5054c33
--- /dev/null
+++ b/CoffeeTweed/content/images/s60/close.png
Binary files differ
diff --git a/CoffeeTweed/content/images/s60/coffee_plate.png b/CoffeeTweed/content/images/s60/coffee_plate.png
new file mode 100755
index 0000000..8139041
--- /dev/null
+++ b/CoffeeTweed/content/images/s60/coffee_plate.png
Binary files differ
diff --git a/CoffeeTweed/content/images/s60/cup_back.png b/CoffeeTweed/content/images/s60/cup_back.png
new file mode 100755
index 0000000..a214a34
--- /dev/null
+++ b/CoffeeTweed/content/images/s60/cup_back.png
Binary files differ
diff --git a/CoffeeTweed/content/images/s60/cup_blur.png b/CoffeeTweed/content/images/s60/cup_blur.png
new file mode 100755
index 0000000..9f9e60a
--- /dev/null
+++ b/CoffeeTweed/content/images/s60/cup_blur.png
Binary files differ
diff --git a/CoffeeTweed/content/images/s60/cup_content.png b/CoffeeTweed/content/images/s60/cup_content.png
new file mode 100755
index 0000000..d376418
--- /dev/null
+++ b/CoffeeTweed/content/images/s60/cup_content.png
Binary files differ
diff --git a/CoffeeTweed/content/images/s60/cup_empty.png b/CoffeeTweed/content/images/s60/cup_empty.png
new file mode 100755
index 0000000..a9e11a0
--- /dev/null
+++ b/CoffeeTweed/content/images/s60/cup_empty.png
Binary files differ
diff --git a/CoffeeTweed/content/images/s60/cup_front.png b/CoffeeTweed/content/images/s60/cup_front.png
new file mode 100755
index 0000000..593a21b
--- /dev/null
+++ b/CoffeeTweed/content/images/s60/cup_front.png
Binary files differ
diff --git a/CoffeeTweed/content/images/s60/cup_full.png b/CoffeeTweed/content/images/s60/cup_full.png
new file mode 100755
index 0000000..706bb18
--- /dev/null
+++ b/CoffeeTweed/content/images/s60/cup_full.png
Binary files differ
diff --git a/CoffeeTweed/content/images/s60/cup_smoke.png b/CoffeeTweed/content/images/s60/cup_smoke.png
new file mode 100755
index 0000000..1f7c153
--- /dev/null
+++ b/CoffeeTweed/content/images/s60/cup_smoke.png
Binary files differ
diff --git a/CoffeeTweed/content/images/s60/empty_row1.png b/CoffeeTweed/content/images/s60/empty_row1.png
new file mode 100755
index 0000000..9f0edfb
--- /dev/null
+++ b/CoffeeTweed/content/images/s60/empty_row1.png
Binary files differ
diff --git a/CoffeeTweed/content/images/s60/empty_row2.png b/CoffeeTweed/content/images/s60/empty_row2.png
new file mode 100755
index 0000000..48e8c3a
--- /dev/null
+++ b/CoffeeTweed/content/images/s60/empty_row2.png
Binary files differ
diff --git a/CoffeeTweed/content/images/s60/empty_row3.png b/CoffeeTweed/content/images/s60/empty_row3.png
new file mode 100755
index 0000000..13361f2
--- /dev/null
+++ b/CoffeeTweed/content/images/s60/empty_row3.png
Binary files differ