summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnselmo Lacerda S. de Melo <anselmo.melo@openbossa.org>2011-03-03 17:08:53 -0300
committerAnselmo Lacerda S. de Melo <anselmo.melo@openbossa.org>2011-03-03 19:21:03 -0300
commit3d1495cc84ce8a274cbda6023d56e75de671eed9 (patch)
tree1ba120321ad648b78f63b398f05fb8eca0a99c36
parent8943d0694a0375b23756cd47c32d70eacd8298e5 (diff)
CoffeeTweed
Signed-off-by: Anselmo Lacerda S. de Melo <anselmo.melo@openbossa.org>
-rw-r--r--CoffeeTweed/Add.qml38
-rw-r--r--CoffeeTweed/CoffeeTweed.qml82
-rw-r--r--CoffeeTweed/CoffeeTweed.qmlproject16
-rw-r--r--CoffeeTweed/Counter_cupsDown.qml58
-rw-r--r--CoffeeTweed/Counter_toGo.qml58
-rw-r--r--CoffeeTweed/Cup.qml112
-rw-r--r--CoffeeTweed/LICENSE.BSD32
-rw-r--r--CoffeeTweed/Remove.qml39
-rw-r--r--CoffeeTweed/Taskbar.qml6
-rw-r--r--CoffeeTweed/Tray.qml64
-rw-r--r--CoffeeTweed/Tray_model.qml20
-rw-r--r--CoffeeTweed/build/build.pro27
-rw-r--r--CoffeeTweed/build/coffeetweed.desktop8
-rw-r--r--CoffeeTweed/build/debian/changelog5
-rw-r--r--CoffeeTweed/build/debian/compat1
-rw-r--r--CoffeeTweed/build/debian/control13
-rwxr-xr-xCoffeeTweed/build/debian/rules19
-rw-r--r--CoffeeTweed/build/icon-coffeetweed.pngbin0 -> 5784 bytes
-rw-r--r--CoffeeTweed/build/main.cpp36
-rw-r--r--CoffeeTweed/build/resource.qrc51
-rw-r--r--CoffeeTweed/coffeetweed.pro2
-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.png (renamed from CoffeeTweed/images/bg.png)bin92671 -> 92671 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/bt_add_off.png (renamed from CoffeeTweed/images/bt_add_off.png)bin48598 -> 48598 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/bt_add_on.png (renamed from CoffeeTweed/images/bt_add_on.png)bin53703 -> 53703 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/bt_remove_off.png (renamed from CoffeeTweed/images/bt_remove_off.png)bin49733 -> 49733 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/bt_remove_on.png (renamed from CoffeeTweed/images/bt_remove_on.png)bin54801 -> 54801 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/close.pngbin0 -> 2485 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/coffee_plate.png (renamed from CoffeeTweed/images/coffee_plate.png)bin18309 -> 18309 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/cup_back.png (renamed from CoffeeTweed/images/cup_back.png)bin5327 -> 5327 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/cup_blur.png (renamed from CoffeeTweed/images/cup_blur.png)bin28242 -> 28242 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/cup_content.png (renamed from CoffeeTweed/images/cup_content.png)bin1568 -> 1568 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/cup_empty.png (renamed from CoffeeTweed/images/cup_empty.png)bin21819 -> 21819 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/cup_front.png (renamed from CoffeeTweed/images/cup_front.png)bin21612 -> 21612 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/cup_full.png (renamed from CoffeeTweed/images/cup_full.png)bin22368 -> 22368 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/cup_smoke.png (renamed from CoffeeTweed/images/cup_smoke.png)bin11413 -> 11413 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/empty_row1.png (renamed from CoffeeTweed/images/empty_row1.png)bin6030 -> 6030 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/empty_row2.png (renamed from CoffeeTweed/images/empty_row2.png)bin5906 -> 5906 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/empty_row3.png (renamed from CoffeeTweed/images/empty_row3.png)bin5379 -> 5379 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/taskbar_bg.png (renamed from CoffeeTweed/images/taskbar_bg.png)bin22414 -> 22414 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/taskbar_close_bt.png (renamed from CoffeeTweed/images/taskbar_close_bt.png)bin2243 -> 2243 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/taskbar_division.png (renamed from CoffeeTweed/images/taskbar_division.png)bin249 -> 249 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/taskbar_home_bt.png (renamed from CoffeeTweed/images/taskbar_home_bt.png)bin992 -> 992 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/taskbar_options_bt.png (renamed from CoffeeTweed/images/taskbar_options_bt.png)bin301 -> 301 bytes
-rwxr-xr-xCoffeeTweed/content/images/n900/taskbar_placeholder.png (renamed from CoffeeTweed/images/taskbar_placeholder.png)bin37381 -> 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
-rw-r--r--CoffeeTweed/debian/changelog5
-rw-r--r--CoffeeTweed/debian/compat1
-rw-r--r--CoffeeTweed/debian/control13
-rw-r--r--CoffeeTweed/debian/copyright44
-rwxr-xr-xCoffeeTweed/debian/rules43
-rwxr-xr-xCoffeeTweed/icons/coffeetweed.pngbin0 -> 4290 bytes
-rwxr-xr-xCoffeeTweed/icons/coffeetweed.svg117
-rwxr-xr-xCoffeeTweed/images/.DS_Storebin6148 -> 0 bytes
-rwxr-xr-xCoffeeTweed/main_n900.qml51
-rwxr-xr-xCoffeeTweed/main_s60.qml50
76 files changed, 1091 insertions, 493 deletions
diff --git a/CoffeeTweed/Add.qml b/CoffeeTweed/Add.qml
deleted file mode 100644
index 5a16af9..0000000
--- a/CoffeeTweed/Add.qml
+++ /dev/null
@@ -1,38 +0,0 @@
-import Qt 4.7
-
-Item {
- id: bt_add
- width: 188; height: 188
-
- signal addClicked
-
- Image {
- id: bt_add_off;
- source: "images/bt_add_off.png";
- }
-
- Image {
- id: bt_add_on;
- source: "images/bt_add_on.png";
- opacity: 0;
- Behavior on opacity { NumberAnimation { duration: 150; } }
- }
-
- MouseArea {
- anchors.fill: parent
- onPressed: { bt_add.state = "pressed" }
- onReleased: { bt_add.state = "released"; bt_add.addClicked() }
-
- }
-
- states: [
- State {
- name: "pressed"
- PropertyChanges{ target: bt_add_on; opacity: 1; }
- },
- State {
- name: "released"
- PropertyChanges{ target: bt_add_on; opacity: 0; }
- }
- ]
-}
diff --git a/CoffeeTweed/CoffeeTweed.qml b/CoffeeTweed/CoffeeTweed.qml
deleted file mode 100644
index ed2fdae..0000000
--- a/CoffeeTweed/CoffeeTweed.qml
+++ /dev/null
@@ -1,82 +0,0 @@
-import Qt 4.6
-
-Rectangle {
- id: root
- width: 800; height: 480
-
- property int coffee_count: 0
- property int coffee_total: 12
-
- function add_one() {
- if (coffee_count < coffee_total) {
- root.coffee_count += 1,
- counter_toGo.state = "add_count",
- counter_cupsDown.state = "add_count",
- cup.state = "less_one",
- tray.add_cup(coffee_count)
- }
- }
- function remove_one() {
- if (coffee_count > 0) {
- root.coffee_count -= 1,
- counter_toGo.state = "remove_count",
- counter_cupsDown.state = "remove_count",
- tray.remove_cup(coffee_count)
- }
- }
-
- Image {
- source: "images/bg.png"
- }
-
- Taskbar {
- anchors.top: root.top
- }
-
- Counter_toGo {
- id: counter_toGo
- x: 130; y: 120;
- }
-
- Counter_cupsDown {
- id: counter_cupsDown
- x: 260; y: 86;
- }
-
- Text {
- id: toGo;
- y: 120; x: 345;
- text: "to go"; font.pixelSize: 100; font.letterSpacing: 90; color: "#FFF"
- }
- Text {
- id: cupsDown
- y: 86; x: 390;
- text: "cups down"; font.pixelSize: 50; font.letterSpacing: 90; color: "#999"
- }
-
- Tray {
- id: tray
- x: 335; y: 280;
- }
-
- Tray_model{
- id: traymodel
- }
-
- Cup {
- id: cup
- x: 175; y: 0;
- }
-
- Add {
- id: add_btn
- x: -7; y: 200
- onAddClicked: add_one()
- }
-
- Remove {
- id: remove_btn
- x: 619; y: 200
- onRemoveClicked: remove_one()
- }
-}
diff --git a/CoffeeTweed/CoffeeTweed.qmlproject b/CoffeeTweed/CoffeeTweed.qmlproject
deleted file mode 100644
index 86a5669..0000000
--- a/CoffeeTweed/CoffeeTweed.qmlproject
+++ /dev/null
@@ -1,16 +0,0 @@
-// File generated by QtCreator
-
-import QmlProject 1.0
-
-Project {
- // Scan current directory for .qml, .js, and image files
- QmlFiles {
- directory: "."
- }
- JavaScriptFiles {
- directory: "."
- }
- ImageFiles {
- directory: "."
- }
-}
diff --git a/CoffeeTweed/Counter_cupsDown.qml b/CoffeeTweed/Counter_cupsDown.qml
deleted file mode 100644
index 9507390..0000000
--- a/CoffeeTweed/Counter_cupsDown.qml
+++ /dev/null
@@ -1,58 +0,0 @@
-import Qt 4.7
-
-Item {
- width: 100; height: 90;
- state: "default"
-
- Text {
- id: cupsDown_counter
- x: 20; y: 0
- width: parent.width
-
- text: "0"
- color: "#999"; font.bold: true; font.pixelSize: 50; smooth: true; horizontalAlignment: "AlignRight"
-
- Behavior on opacity {
- NumberAnimation { duration: 300;}
- }
- }
-
- function reset_counter_state() {
- counter_cupsDown.state = "default"
- }
-
- states: [
- State {
- name: "default"
- },
- State {
- name: "add_count"
- },
- State {
- name: "remove_count"
- }
- ]
-
- transitions: [
- Transition {
- from: "default"; to: "add_count"
- SequentialAnimation {
- PropertyAnimation { target: cupsDown_counter; property: "opacity"; to: 0; }
- PropertyAction{ target: cupsDown_counter; property: "text"; value: coffee_count }
- PauseAnimation { duration: 1500; }
- PropertyAnimation { target: cupsDown_counter; property: "opacity"; to: 1; }
- ScriptAction { script: reset_counter_state() }
- }
- },
- Transition {
- from: "default"; to: "remove_count"
- SequentialAnimation {
- PropertyAnimation { target: cupsDown_counter; property: "opacity"; to: 0; }
- PropertyAction{ target: cupsDown_counter; property: "text"; value: coffee_count }
- PauseAnimation { duration: 300; }
- PropertyAnimation { target: cupsDown_counter; property: "opacity"; to: 1; }
- ScriptAction { script: reset_counter_state() }
- }
- }
- ]
-}
diff --git a/CoffeeTweed/Counter_toGo.qml b/CoffeeTweed/Counter_toGo.qml
deleted file mode 100644
index 2bf8d88..0000000
--- a/CoffeeTweed/Counter_toGo.qml
+++ /dev/null
@@ -1,58 +0,0 @@
-import Qt 4.7
-
-Item {
- width: 170; height: 90;
- state: "default"
-
- Text {
- id: toGo_counter
- x: 20; y: 0
- width: parent.width
-
- text: coffee_total
- color: "#FFF"; font.bold: true; font.pixelSize: 100; smooth: true; horizontalAlignment: "AlignRight"
-
- Behavior on opacity {
- NumberAnimation { duration: 300;}
- }
- }
-
- function reset_counter_state() {
- counter_toGo.state = "default"
- }
-
- states: [
- State {
- name: "default"
- },
- State {
- name: "add_count"
- },
- State {
- name: "remove_count"
- }
- ]
-
- transitions: [
- Transition {
- from: "default"; to: "add_count"
- SequentialAnimation {
- PropertyAnimation { target: toGo_counter; property: "opacity"; to: 0; }
- PropertyAction{ target: toGo_counter; property: "text"; value: coffee_total - coffee_count }
- PauseAnimation { duration: 1500; }
- PropertyAnimation { target: toGo_counter; property: "opacity"; to: 1; }
- ScriptAction { script: reset_counter_state() }
- }
- },
- Transition {
- from: "default"; to: "remove_count"
- SequentialAnimation {
- PropertyAnimation { target: toGo_counter; property: "opacity"; to: 0; }
- PropertyAction{ target: toGo_counter; property: "text"; value: coffee_total - coffee_count }
- PauseAnimation { duration: 300; }
- PropertyAnimation { target: toGo_counter; property: "opacity"; to: 1; }
- ScriptAction { script: reset_counter_state() }
- }
- }
- ]
-}
diff --git a/CoffeeTweed/Cup.qml b/CoffeeTweed/Cup.qml
deleted file mode 100644
index 93fc385..0000000
--- a/CoffeeTweed/Cup.qml
+++ /dev/null
@@ -1,112 +0,0 @@
-import Qt 4.7
-
-Item {
- id: coffee_cup
- width: 190; height: 480
-
- function return_to_ashes() {
- coffee_cup.state = "";
- }
-
- Image {
- id: cup_plate
- source: "images/coffee_plate.png"; y: 365
- }
-
- Item {
- id: cup_full
- width: 135; height: 138; x: 7; y: 280
- Image { source: "images/cup_back.png"; }
-
- Item { id: cup_content; Image { source: "images/cup_content.png"; } }
- Item { id: cup_front; Image { source: "images/cup_front.png"; } }
- }
-
- Item {
- id: cup_empty
- width: 135; height: 138; x: 7; y: 280; opacity: 0
- Image { source: "images/cup_empty.png"; }
- }
-
- Item {
- id: cup_smoke
- width: 233; height: 258; y: 45; x: -13; opacity: 1
- Image { source: "images/cup_smoke.png" }
- }
-
- Item {
- id: cup_running
- width: 135; height: 188; x: 7; y: -228; opacity: 0
- Image { source: "images/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: 25; 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: -188; }
-
- // 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: 235; duration: 300; }
- PropertyAnimation { target: cup_empty; property: "y"; to: 285; duration: 300; }
- }
-
- // Landing in the plate
- ParallelAnimation {
- PropertyAnimation { target: cup_empty; property: "y"; to: 280; 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: -228; }
-
- // 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/LICENSE.BSD b/CoffeeTweed/LICENSE.BSD
new file mode 100644
index 0000000..13f338b
--- /dev/null
+++ b/CoffeeTweed/LICENSE.BSD
@@ -0,0 +1,32 @@
+Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).*
+All rights reserved.
+Contact: Nokia Corporation (qt-info@nokia.com)
+
+"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."
diff --git a/CoffeeTweed/Remove.qml b/CoffeeTweed/Remove.qml
deleted file mode 100644
index 66c35f1..0000000
--- a/CoffeeTweed/Remove.qml
+++ /dev/null
@@ -1,39 +0,0 @@
-import Qt 4.7
-
-Item {
- id: bt_remove
- width: 188; height: 188
-
- signal removeClicked
-
- Image {
- id: bt_remove_off;
- source: "images/bt_remove_off.png";
- }
-
- Image {
- id: bt_remove_on;
- source: "images/bt_remove_on.png";
- opacity: 0;
- Behavior on opacity { NumberAnimation { duration: 150; } }
- }
-
- MouseArea {
- anchors.fill: parent
- onPressed: { bt_remove.state = "pressed" }
- onReleased: { bt_remove.state = "released"; bt_remove.removeClicked() }
-
- }
-
- states: [
- State {
- name: "pressed"
- PropertyChanges{ target: bt_remove_on; opacity: 1; }
- },
- State {
- name: "released"
- PropertyChanges{ target: bt_remove_on; opacity: 0; }
- }
- ]
-
-}
diff --git a/CoffeeTweed/Taskbar.qml b/CoffeeTweed/Taskbar.qml
deleted file mode 100644
index f64ae17..0000000
--- a/CoffeeTweed/Taskbar.qml
+++ /dev/null
@@ -1,6 +0,0 @@
-import Qt 4.7
-
-Rectangle {
- width: 800; height: 55
- Image { source: "images/taskbar_placeholder.png" }
-}
diff --git a/CoffeeTweed/Tray.qml b/CoffeeTweed/Tray.qml
deleted file mode 100644
index 608317a..0000000
--- a/CoffeeTweed/Tray.qml
+++ /dev/null
@@ -1,64 +0,0 @@
-import Qt 4.7
-
-Item {
- id:cuptray
- width: 330; height: 110;
-
- Tray_model{
- id: traymodel
- }
-
- function add_cup(indx) {
- var cupindx = indx -1;
- traymodel.set(cupindx, { cupstate: "display" });
- }
-
- function remove_cup(indx) {
- var cupindx = indx;
- traymodel.set(cupindx, { cupstate: "hide" });
- }
-
- Component {
- id: emptycup
- Item {
- id: empty_cup
- width: 69; height: 67
- x: pos_x; y: pos_y; z: pos_z
- opacity: 0
- state: cupstate
-
- Image { source: img_src }
-
- Behavior on opacity { NumberAnimation { duration: 400 } }
-
- states: [
- State {
- name: "display"
- },
- State {
- name: "hide"
- }
- ]
- transitions: [
- Transition {
- from: "*"; to: "hide"
- SequentialAnimation {
- PropertyAnimation { target: empty_cup; property: "opacity"; to: 0; }
- }
- },
- Transition {
- from: "hide"; to: "display"
- SequentialAnimation {
- PropertyAnimation { target: empty_cup; property: "opacity"; to: 1; }
- }
- }
- ]
- }
- }
-
- Repeater {
- model: traymodel
- delegate: emptycup
- }
-
-}
diff --git a/CoffeeTweed/Tray_model.qml b/CoffeeTweed/Tray_model.qml
deleted file mode 100644
index bbbcb38..0000000
--- a/CoffeeTweed/Tray_model.qml
+++ /dev/null
@@ -1,20 +0,0 @@
-import Qt 4.7
-
-ListModel {
- id: tray_model
-
- ListElement { cupstate: "hide"; img_src: "images/empty_row1.png"; pos_x: 64; pos_y: 40; pos_z: 3 }
- ListElement { cupstate: "hide"; img_src: "images/empty_row1.png"; pos_x: 124; pos_y: 40; pos_z: 3 }
- ListElement { cupstate: "hide"; img_src: "images/empty_row1.png"; pos_x: 184; pos_y: 40; pos_z: 3 }
- ListElement { cupstate: "hide"; img_src: "images/empty_row1.png"; pos_x: 244; pos_y: 40; pos_z: 3 }
-
- ListElement { cupstate: "hide"; img_src: "images/empty_row2.png"; pos_x: 32; pos_y: 20; pos_z: 2 }
- ListElement { cupstate: "hide"; img_src: "images/empty_row2.png"; pos_x: 92; pos_y: 20; pos_z: 2 }
- ListElement { cupstate: "hide"; img_src: "images/empty_row2.png"; pos_x: 152; pos_y: 20; pos_z: 2 }
- ListElement { cupstate: "hide"; img_src: "images/empty_row2.png"; pos_x: 212; pos_y: 20; pos_z: 2 }
-
- ListElement { cupstate: "hide"; img_src: "images/empty_row3.png"; pos_x: 0; pos_y: 0; pos_z: 1 }
- ListElement { cupstate: "hide"; img_src: "images/empty_row3.png"; pos_x: 60; pos_y: 0; pos_z: 1 }
- ListElement { cupstate: "hide"; img_src: "images/empty_row3.png"; pos_x: 120; pos_y: 0; pos_z: 1 }
- ListElement { cupstate: "hide"; img_src: "images/empty_row3.png"; pos_x: 180; pos_y: 0; pos_z: 1 }
-}
diff --git a/CoffeeTweed/build/build.pro b/CoffeeTweed/build/build.pro
new file mode 100644
index 0000000..36b2a4f
--- /dev/null
+++ b/CoffeeTweed/build/build.pro
@@ -0,0 +1,27 @@
+TEMPLATE = app
+TARGET = coffeetweed
+
+QT += declarative
+
+symbian {
+ LIBS += -lesock -lconnmon -lcone -lavkon
+
+ TARGET.UID3 = 0xe4431593
+ TARGET.EPOCHEAPSIZE = 0x20000 0x2000000
+
+ DEPLOYMENT.installer_header = 0xA000D7CE
+}
+
+linux-g++-maemo5 {
+ INSTALLS += desktop
+ desktop.path = /usr/share/applications/hildon
+ desktop.files = coffeetweed.desktop
+
+ INSTALLS += icon64
+ icon64.path = /usr/share/icons/hicolor/64x64/apps
+ icon64.files = icon-coffeetweed.png
+}
+
+SOURCES += main.cpp
+
+RESOURCES += resource.qrc
diff --git a/CoffeeTweed/build/coffeetweed.desktop b/CoffeeTweed/build/coffeetweed.desktop
new file mode 100644
index 0000000..dffb1d9
--- /dev/null
+++ b/CoffeeTweed/build/coffeetweed.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Type=Application
+Name=Coffee Tweed
+Categories=Applications
+Exec=/usr/bin/coffeetweed
+Icon=coffeetweed
+X-Icon-path=/usr/share/pixmaps/
+X-Osso-Type=application/x-executable
diff --git a/CoffeeTweed/build/debian/changelog b/CoffeeTweed/build/debian/changelog
new file mode 100644
index 0000000..b477a1c
--- /dev/null
+++ b/CoffeeTweed/build/debian/changelog
@@ -0,0 +1,5 @@
+coffeetweed (0.1-1) unstable; urgency=low
+
+ * Initial release
+
+ -- Adriano Rezende <adriano.rezende@openbossa.org> Thu, 25 Nov 2010 10:37:30 -0300
diff --git a/CoffeeTweed/build/debian/compat b/CoffeeTweed/build/debian/compat
new file mode 100644
index 0000000..7ed6ff8
--- /dev/null
+++ b/CoffeeTweed/build/debian/compat
@@ -0,0 +1 @@
+5
diff --git a/CoffeeTweed/build/debian/control b/CoffeeTweed/build/debian/control
new file mode 100644
index 0000000..c10dce0
--- /dev/null
+++ b/CoffeeTweed/build/debian/control
@@ -0,0 +1,13 @@
+Source: coffeetweed
+Section: user/Other
+Priority: extra
+Maintainer: Adriano Rezende <adriano.rezende@openbossa.org>
+Build-Depends: debhelper (>= 5), libqt4-experimental-dev
+Standards-Version: 3.8.4
+
+Package: coffeetweed
+Section: user/Other
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: Coffee Tweed
+ Qt Quick demo.
diff --git a/CoffeeTweed/build/debian/rules b/CoffeeTweed/build/debian/rules
new file mode 100755
index 0000000..f62b045
--- /dev/null
+++ b/CoffeeTweed/build/debian/rules
@@ -0,0 +1,19 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+# Sample debian/rules that uses debhelper.
+# This file was originally written by Joey Hess and Craig Small.
+# As a special exception, when this file is copied by dh-make into a
+# dh-make output file, you may use that output file without restriction.
+# This special exception was added by Craig Small in version 0.37 of dh-make.
+
+# Uncomment this to turn on verbose mode.
+export DH_VERBOSE=1
+
+DEB_BUILDDIR = debian/builddeb
+DEB_QMAKE_ARGS = $(CURDIR)/build.pro
+
+include /usr/share/cdbs/1/rules/debhelper.mk
+include /usr/share/cdbs/1/class/qmake.mk
+
+clear::
+ rm -fr $(DEB_BUILDDIR)
diff --git a/CoffeeTweed/build/icon-coffeetweed.png b/CoffeeTweed/build/icon-coffeetweed.png
new file mode 100644
index 0000000..288227f
--- /dev/null
+++ b/CoffeeTweed/build/icon-coffeetweed.png
Binary files differ
diff --git a/CoffeeTweed/build/main.cpp b/CoffeeTweed/build/main.cpp
new file mode 100644
index 0000000..c766754
--- /dev/null
+++ b/CoffeeTweed/build/main.cpp
@@ -0,0 +1,36 @@
+#include <QApplication>
+#include <QDeclarativeView>
+#include <QDeclarativeEngine>
+
+#ifdef Q_OS_SYMBIAN
+#include <eikenv.h>
+#include <aknappui.h>
+#endif
+
+
+int main(int argc, char **argv)
+{
+ QApplication app(argc, argv);
+
+#ifdef Q_OS_SYMBIAN
+ // lock portrait mode for symbian
+ CAknAppUi *akn = dynamic_cast<CAknAppUi*>(CEikonEnv::Static()->AppUi());
+ TRAPD(error, if (akn) akn->SetOrientationL(CAknAppUi::EAppUiOrientationLandscape); );
+#endif
+
+ QDeclarativeView view;
+#ifdef Q_OS_SYMBIAN
+ view.setSource(QUrl("qrc:main_s60.qml"));
+#else
+ view.setSource(QUrl("qrc:main_n900.qml"));
+#endif
+ QObject::connect(view.engine(), SIGNAL(quit()), qApp, SLOT(quit()));
+
+#if defined(Q_OS_SYMBIAN) || defined(Q_WS_MAEMO_5)
+ view.showFullScreen();
+#else
+ view.show();
+#endif
+
+ return app.exec();
+}
diff --git a/CoffeeTweed/build/resource.qrc b/CoffeeTweed/build/resource.qrc
new file mode 100644
index 0000000..b21a3cf
--- /dev/null
+++ b/CoffeeTweed/build/resource.qrc
@@ -0,0 +1,51 @@
+<RCC>
+<qresource prefix="/">
+ <file>../content/Cup.qml</file>
+ <file>../content/TrayModel.qml</file>
+ <file>../content/images/n900/close.png</file>
+ <file>../content/images/n900/bt_add_off.png</file>
+ <file>../content/images/n900/taskbar_division.png</file>
+ <file>../content/images/n900/bt_add_on.png</file>
+ <file>../content/images/n900/empty_row2.png</file>
+ <file>../content/images/n900/taskbar_bg.png</file>
+ <file>../content/images/n900/cup_smoke.png</file>
+ <file>../content/images/n900/coffee_plate.png</file>
+ <file>../content/images/n900/empty_row1.png</file>
+ <file>../content/images/n900/cup_back.png</file>
+ <file>../content/images/n900/cup_empty.png</file>
+ <file>../content/images/n900/empty_row3.png</file>
+ <file>../content/images/n900/taskbar_placeholder.png</file>
+ <file>../content/images/n900/bt_remove_off.png</file>
+ <file>../content/images/n900/taskbar_home_bt.png</file>
+ <file>../content/images/n900/taskbar_close_bt.png</file>
+ <file>../content/images/n900/taskbar_options_bt.png</file>
+ <file>../content/images/n900/cup_full.png</file>
+ <file>../content/images/n900/cup_front.png</file>
+ <file>../content/images/n900/cup_blur.png</file>
+ <file>../content/images/n900/bt_remove_on.png</file>
+ <file>../content/images/n900/bg.png</file>
+ <file>../content/images/n900/cup_content.png</file>
+ <file>../content/images/s60/bt_add_off.png</file>
+ <file>../content/images/s60/bt_add_on.png</file>
+ <file>../content/images/s60/empty_row2.png</file>
+ <file>../content/images/s60/cup_smoke.png</file>
+ <file>../content/images/s60/coffee_plate.png</file>
+ <file>../content/images/s60/empty_row1.png</file>
+ <file>../content/images/s60/cup_back.png</file>
+ <file>../content/images/s60/cup_empty.png</file>
+ <file>../content/images/s60/empty_row3.png</file>
+ <file>../content/images/s60/bt_remove_off.png</file>
+ <file>../content/images/s60/cup_full.png</file>
+ <file>../content/images/s60/cup_front.png</file>
+ <file>../content/images/s60/cup_blur.png</file>
+ <file>../content/images/s60/bt_remove_on.png</file>
+ <file>../content/images/s60/bg.png</file>
+ <file>../content/images/s60/close.png</file>
+ <file>../content/images/s60/cup_content.png</file>
+ <file>../content/Tray.qml</file>
+ <file>../content/Button.qml</file>
+ <file>../content/CoffeeTweed.qml</file>
+ <file>../main_s60.qml</file>
+ <file>../main_n900.qml</file>
+</qresource>
+</RCC>
diff --git a/CoffeeTweed/coffeetweed.pro b/CoffeeTweed/coffeetweed.pro
new file mode 100644
index 0000000..5d88636
--- /dev/null
+++ b/CoffeeTweed/coffeetweed.pro
@@ -0,0 +1,2 @@
+TEMPLATE = subdirs
+SUBDIRS = build
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/images/bg.png b/CoffeeTweed/content/images/n900/bg.png
index ef08d0e..ef08d0e 100755
--- a/CoffeeTweed/images/bg.png
+++ b/CoffeeTweed/content/images/n900/bg.png
Binary files differ
diff --git a/CoffeeTweed/images/bt_add_off.png b/CoffeeTweed/content/images/n900/bt_add_off.png
index b317af6..b317af6 100755
--- a/CoffeeTweed/images/bt_add_off.png
+++ b/CoffeeTweed/content/images/n900/bt_add_off.png
Binary files differ
diff --git a/CoffeeTweed/images/bt_add_on.png b/CoffeeTweed/content/images/n900/bt_add_on.png
index 593cf2e..593cf2e 100755
--- a/CoffeeTweed/images/bt_add_on.png
+++ b/CoffeeTweed/content/images/n900/bt_add_on.png
Binary files differ
diff --git a/CoffeeTweed/images/bt_remove_off.png b/CoffeeTweed/content/images/n900/bt_remove_off.png
index c5bd438..c5bd438 100755
--- a/CoffeeTweed/images/bt_remove_off.png
+++ b/CoffeeTweed/content/images/n900/bt_remove_off.png
Binary files differ
diff --git a/CoffeeTweed/images/bt_remove_on.png b/CoffeeTweed/content/images/n900/bt_remove_on.png
index 2b6c9e2..2b6c9e2 100755
--- a/CoffeeTweed/images/bt_remove_on.png
+++ 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/images/coffee_plate.png b/CoffeeTweed/content/images/n900/coffee_plate.png
index 4abbfb9..4abbfb9 100755
--- a/CoffeeTweed/images/coffee_plate.png
+++ b/CoffeeTweed/content/images/n900/coffee_plate.png
Binary files differ
diff --git a/CoffeeTweed/images/cup_back.png b/CoffeeTweed/content/images/n900/cup_back.png
index c553027..c553027 100755
--- a/CoffeeTweed/images/cup_back.png
+++ b/CoffeeTweed/content/images/n900/cup_back.png
Binary files differ
diff --git a/CoffeeTweed/images/cup_blur.png b/CoffeeTweed/content/images/n900/cup_blur.png
index 2add637..2add637 100755
--- a/CoffeeTweed/images/cup_blur.png
+++ b/CoffeeTweed/content/images/n900/cup_blur.png
Binary files differ
diff --git a/CoffeeTweed/images/cup_content.png b/CoffeeTweed/content/images/n900/cup_content.png
index 848a691..848a691 100755
--- a/CoffeeTweed/images/cup_content.png
+++ b/CoffeeTweed/content/images/n900/cup_content.png
Binary files differ
diff --git a/CoffeeTweed/images/cup_empty.png b/CoffeeTweed/content/images/n900/cup_empty.png
index 6201666..6201666 100755
--- a/CoffeeTweed/images/cup_empty.png
+++ b/CoffeeTweed/content/images/n900/cup_empty.png
Binary files differ
diff --git a/CoffeeTweed/images/cup_front.png b/CoffeeTweed/content/images/n900/cup_front.png
index 81c5da6..81c5da6 100755
--- a/CoffeeTweed/images/cup_front.png
+++ b/CoffeeTweed/content/images/n900/cup_front.png
Binary files differ
diff --git a/CoffeeTweed/images/cup_full.png b/CoffeeTweed/content/images/n900/cup_full.png
index 7470d53..7470d53 100755
--- a/CoffeeTweed/images/cup_full.png
+++ b/CoffeeTweed/content/images/n900/cup_full.png
Binary files differ
diff --git a/CoffeeTweed/images/cup_smoke.png b/CoffeeTweed/content/images/n900/cup_smoke.png
index aa98b3b..aa98b3b 100755
--- a/CoffeeTweed/images/cup_smoke.png
+++ b/CoffeeTweed/content/images/n900/cup_smoke.png
Binary files differ
diff --git a/CoffeeTweed/images/empty_row1.png b/CoffeeTweed/content/images/n900/empty_row1.png
index 9023f93..9023f93 100755
--- a/CoffeeTweed/images/empty_row1.png
+++ b/CoffeeTweed/content/images/n900/empty_row1.png
Binary files differ
diff --git a/CoffeeTweed/images/empty_row2.png b/CoffeeTweed/content/images/n900/empty_row2.png
index 2a8fa2f..2a8fa2f 100755
--- a/CoffeeTweed/images/empty_row2.png
+++ b/CoffeeTweed/content/images/n900/empty_row2.png
Binary files differ
diff --git a/CoffeeTweed/images/empty_row3.png b/CoffeeTweed/content/images/n900/empty_row3.png
index 211a6d7..211a6d7 100755
--- a/CoffeeTweed/images/empty_row3.png
+++ b/CoffeeTweed/content/images/n900/empty_row3.png
Binary files differ
diff --git a/CoffeeTweed/images/taskbar_bg.png b/CoffeeTweed/content/images/n900/taskbar_bg.png
index 0658fbf..0658fbf 100755
--- a/CoffeeTweed/images/taskbar_bg.png
+++ b/CoffeeTweed/content/images/n900/taskbar_bg.png
Binary files differ
diff --git a/CoffeeTweed/images/taskbar_close_bt.png b/CoffeeTweed/content/images/n900/taskbar_close_bt.png
index 70a1e66..70a1e66 100755
--- a/CoffeeTweed/images/taskbar_close_bt.png
+++ b/CoffeeTweed/content/images/n900/taskbar_close_bt.png
Binary files differ
diff --git a/CoffeeTweed/images/taskbar_division.png b/CoffeeTweed/content/images/n900/taskbar_division.png
index 0e481a4..0e481a4 100755
--- a/CoffeeTweed/images/taskbar_division.png
+++ b/CoffeeTweed/content/images/n900/taskbar_division.png
Binary files differ
diff --git a/CoffeeTweed/images/taskbar_home_bt.png b/CoffeeTweed/content/images/n900/taskbar_home_bt.png
index f4c61d8..f4c61d8 100755
--- a/CoffeeTweed/images/taskbar_home_bt.png
+++ b/CoffeeTweed/content/images/n900/taskbar_home_bt.png
Binary files differ
diff --git a/CoffeeTweed/images/taskbar_options_bt.png b/CoffeeTweed/content/images/n900/taskbar_options_bt.png
index f68a4f4..f68a4f4 100755
--- a/CoffeeTweed/images/taskbar_options_bt.png
+++ b/CoffeeTweed/content/images/n900/taskbar_options_bt.png
Binary files differ
diff --git a/CoffeeTweed/images/taskbar_placeholder.png b/CoffeeTweed/content/images/n900/taskbar_placeholder.png
index 824f1b3..824f1b3 100755
--- a/CoffeeTweed/images/taskbar_placeholder.png
+++ 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
diff --git a/CoffeeTweed/debian/changelog b/CoffeeTweed/debian/changelog
new file mode 100644
index 0000000..dd2b273
--- /dev/null
+++ b/CoffeeTweed/debian/changelog
@@ -0,0 +1,5 @@
+coffeetweed (1.0-maemo1) unstable; urgency=low
+
+ * Initial release.
+
+ -- Anselmo Lacerda S. de Melo <anselmo.melo@openbossa.org> Fri, 23 Jul 2010 14:00:18 -0300
diff --git a/CoffeeTweed/debian/compat b/CoffeeTweed/debian/compat
new file mode 100644
index 0000000..7ed6ff8
--- /dev/null
+++ b/CoffeeTweed/debian/compat
@@ -0,0 +1 @@
+5
diff --git a/CoffeeTweed/debian/control b/CoffeeTweed/debian/control
new file mode 100644
index 0000000..2a8f9ab
--- /dev/null
+++ b/CoffeeTweed/debian/control
@@ -0,0 +1,13 @@
+Source: coffeetweed
+Section: user/apps
+Priority: optional
+Maintainer: Anselmo Lacerda S. de Melo <anselmo.melo@openbossa.org>
+Build-Depends: debhelper (>= 4)
+Standards-Version: 3.8.1
+
+Package: coffeetweed
+Architecture: any
+Depends: libqt4-declarative
+Maemo-Display-Name: CoffeeTweed
+Description: coffeetweed
+ Allows you to count how many coffee cups you drank on a day
diff --git a/CoffeeTweed/debian/copyright b/CoffeeTweed/debian/copyright
new file mode 100644
index 0000000..ec95987
--- /dev/null
+++ b/CoffeeTweed/debian/copyright
@@ -0,0 +1,44 @@
+This package was debianized by Anselmo Melo <anselmo.melo@openbossa.org> on
+Tue, 24 Aug 2010 11:07:23 -0300.
+
+Upstream Author: Ian Andrade <ian.andrade@openbossa.org>
+
+Copyright: 2010 Nokia Corporation and/or its subsidiary(-ies).
+ All rights reserved.
+ Contact: Nokia Corporation (qt-info@nokia.com)
+
+License:
+ 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."
+
+
+The Debian packaging is (C) 2010, Anselmo Melo <anselmo.melo@openbossa.org> and
+is licensed under the GPL, see `/usr/share/common-licenses/GPL'.
diff --git a/CoffeeTweed/debian/rules b/CoffeeTweed/debian/rules
new file mode 100755
index 0000000..dc64e65
--- /dev/null
+++ b/CoffeeTweed/debian/rules
@@ -0,0 +1,43 @@
+#!/usr/bin/make -f
+
+configure:
+ dh_testdir
+
+build: build-stamp
+ /usr/bin/qmake
+ make
+
+build-stamp: configure
+ dh_testdir
+
+clean:
+ dh_testdir
+ dh_testroot
+ dh_clean
+
+install: build
+ dh_testdir
+ dh_testroot
+ dh_clean -k
+ dh_installdirs
+
+ install -D -m 755 $(CURDIR)/build/coffeetweed $(CURDIR)/debian/coffeetweed/usr/bin/coffeetweed
+ install -D -m 644 $(CURDIR)/build/coffeetweed.desktop $(CURDIR)/debian/coffeetweed/usr/share/applications/hildon/coffeetweed.desktop
+ install -D -m 644 $(CURDIR)/icons/coffeetweed.png $(CURDIR)/debian/coffeetweed/usr/share/pixmaps/coffeetweed.png
+
+binary-indep: build install
+
+binary-arch: build install
+ dh_testdir
+ dh_testroot
+ dh_link
+ dh_compress
+ dh_fixperms
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install configure
diff --git a/CoffeeTweed/icons/coffeetweed.png b/CoffeeTweed/icons/coffeetweed.png
new file mode 100755
index 0000000..7d4af23
--- /dev/null
+++ b/CoffeeTweed/icons/coffeetweed.png
Binary files differ
diff --git a/CoffeeTweed/icons/coffeetweed.svg b/CoffeeTweed/icons/coffeetweed.svg
new file mode 100755
index 0000000..d5d2bd6
--- /dev/null
+++ b/CoffeeTweed/icons/coffeetweed.svg
@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1 Basic//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd">
+<svg version="1.1" baseProfile="basic" id="Layer_1"
+ xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="44px" height="44px"
+ viewBox="0 0 44 44" xml:space="preserve">
+<g>
+
+ <image overflow="visible" width="80" height="80" xlink:href="data:image/jpeg;base64,/9j/4AAQSkZJRgABAgEAgwCDAAD/7AARRHVja3kAAQAEAAAAHgAA/+4AIUFkb2JlAGTAAAAAAQMA
+EAMCAwYAAAGwAAAB2wAAAjr/2wCEABALCwsMCxAMDBAXDw0PFxsUEBAUGx8XFxcXFx8eFxoaGhoX
+Hh4jJSclIx4vLzMzLy9AQEBAQEBAQEBAQEBAQEABEQ8PERMRFRISFRQRFBEUGhQWFhQaJhoaHBoa
+JjAjHh4eHiMwKy4nJycuKzU1MDA1NUBAP0BAQEBAQEBAQEBAQP/CABEIAFAAUAMBIgACEQEDEQH/
+xACCAAEAAgIDAAAAAAAAAAAAAAAAAQQCBgMFBwEBAQAAAAAAAAAAAAAAAAAAAAEQAAAEBAcAAAAA
+AAAAAAAAAAEDBAVAERMGABAgMGACFhEAAgEDAwMFAAAAAAAAAAAAAQIRABIDITGRoQQUIDBgUUIS
+AQAAAAAAAAAAAAAAAAAAAED/2gAMAwEAAhEDEQAAAPQAAAAAAAAAAAAAAAACCVOodupXCQAMMxpN
+P0IukbnyAE//2gAIAQIAAQUAif/aAAgBAwABBQCGngRy/9oACAEBAAEFAOFKXZtSD6pimmeG1UOo
+0uoUts5eBnlHeaOzl49yCqJO5//aAAgBAgIGPwBP/9oACAEDAgY/AE//2gAIAQEBBj8A+FEZ+4RG
+H5nXio8kcGguDuEZjsswePW+OStwIuG4mmfE65wTOujdajxxH3IpWysuAA6kGW6UmK4vYoW47mPd
+/9k=" transform="matrix(0.55 0 0 0.55 0 0)">
+ </image>
+
+ <image overflow="visible" width="44" height="44" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAsCAYAAAAehFoBAAAACXBIWXMAAAsSAAALEgHS3X78AAAA
+GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAATRJREFUeNrslU1LAzEQhufNRsGe
+9CKIl+JZ8P//jHry1JN6EPQginbzMU3WsjRtWYIFM8I8EJZNDvvk3cmESFEURVEUQeDQZOg/GAAB
+ZpxjjmkwBe/odHaBVsJ2d8J/v7PJoiidsjyIiU3XNGGz/bL6fGWYfdktaxrWG2In68Wejebsv1hC
+DRdxcUy/PMZcsIXsKM+bdSnCIQaKefBhKZzMkNcFJZyF42SKLTvEnrB3jrzv07NPB/BNRM1OHjrn
+VjlnYhuLHiz64nh5fOCus4OwSS3s/HIOsQn/lEVPIYS0EwzC/+Jqfl7e83BJbC6Qq/ktRAtnnpaL
+4tBd39yJkK7+57sbEJfwlGTLtHFMsi3EcWw5/LV0VQ1LOXDVCUvqHr/6mNSWVyUupd0piqIoiqLU
+sBZgAGp4gNDNit0LAAAAAElFTkSuQmCC">
+ </image>
+
+ <image overflow="visible" width="44" height="44" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAsCAYAAAAehFoBAAAACXBIWXMAAAsSAAALEgHS3X78AAAA
+GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAhBJREFUeNrslztrFVEQgGfO3r0X
+iZ0PCCiS4qIpEpCgBgxE0E6FEP+AFv4HsbPSxl9gIQh2Wgha22hag0LQKGhhDGJycx/7Po9xZqMh
+MRcs7xHPtyzLLlt8Z3bOzCxAIBAIBAIBj8BhD7Ped0JEkIP4qMoc8rQPRZHBoLsBU7OXcVTCjT8f
+JJ01MroCchacc2D5anUJuiqBrAGi0UZ4n7BhOaM1lFUBWTKopY2pQBYhyEK8Ed5a/0TOGSjyFLTR
+0J6e2/n0b149p5TTwnGUR4nafUPEKWAtRHEME5Pn9uTp6bkreOjwUVCI/ghb/vxKRdBsxENfnpy5
+hAfGDvpTJX58fU8SQcc768ixU+hjWduXEiKrlPK2Du9NCWN4U1kxh821D+S98PjENNY1+Nd959sq
+eS0sOE4LI02Cr0QE3gsfb8+g5sZhja2FfUuNobvLcHPIsrQWlnP981vyWliahooUJIPeTlp8WVki
+b4WFEyfPoFSLJOnX84RzBKvLL0cu/dfm8PHdax7SNDSiqB6MZJ5Iepswf/UmehXh37SnzqNMaL1u
+h4eivJ7WJMwvHt8nL4W3Z4iLKHNxzgO85uZCTlwJnj26S14KC2cvLGIct6Df3aoriCxgW9yzHB7G
+04f3KOfNGDdjaLVasHD9NnoX4d1cu3EL42aTK0gKZVH8W3+xTx7cIQgEAoFAIPC/8lOAAQAs9RTG
+J26onAAAAABJRU5ErkJggg==">
+ </image>
+
+ <image overflow="visible" width="44" height="44" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAsCAYAAAAehFoBAAAACXBIWXMAAAsSAAALEgHS3X78AAAA
+GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABd1JREFUeNrsWEtvHEUQru6ZdWze
+kJCgKBISIuBIWIB52WCEFSReEpwQEie48yOQ+BX8Ae4cEBc4RDyEZCQuESIWRAScgCUOiZ+7OzPd
+RX1V3bu2QWTX3g2X7dXsTPfsdn/91ddV1U00KZMyKbe0uFF2dumHC7yzvUnbcjV1RSFEoshEnmh6
+eoZuv+NuKloFPbH4hrvlgH9bXeFup0vbm9dpc+MGrf/5B/21fpV2d7ap02lT09TEMRIz6yit8hjN
+zNxGraljdOLUKbr/5Gk6+cBpaZsmV5R0bv68GwvgXy5+zevX1mjl2wt07eqvBPrQiS/k7nKH9s24
+2J4imOao9SgTifKMtqI1RcfvPU5PLyzRmQcformF1/4TUzks4LUrl+mrLz+jqSkZ6L4Two4TeF4x
+ei/PDnVnzHIGzYRPqGsKYF2k0sSgwCGbra0b9MXnn9Izzy/ddPyhAZ+dnaNzc09RS5gBO17M6Z2w
+68sE2BvDjo1lgAWjuEKQehC5NBRFMnXTpaqq9FnbQj16wNCbcwX5siUASyrkct4L8ELBOtVFEoaA
+jQCs7UGbOTqTiXx5YbkoGnmWPmQy6G/0gPHxBszjDrAKyO7ytf+3FFPFaoTfyW8iVJTaHNkzD7Ci
+hgaMwYpSGAGjAOtxd0kWvs9ukoVnrzJg6BptIg0vC86rhBrVv/Xj9RejZ1gAsqxudJ/BugR2nxyM
+NwURVdf4D6dF6JN8zCKYFPqqRSKjB+xMr9l+alKYU6G4np/kzJa6OjAfEuuUWFVnKHhFHjY3KnRi
+N7Hw0BFDzElJb05Mrl6Aue90+V/MyqZhY98nN817JGCImcegYR0jgq3SBnAGNHNs9f0Rifd89Zjn
+vBAPdj5qhhPJsnaUWWWJDwDp11I1WWEPMJURIl9iNnuKkTMcdfFEGwzBwGfQPSjiHIzmdEsvWIMH
+pfwickxyCtYX8wD8HgYwQiqXOlCIhTp8gjsDGJf9qfuHhQ1cVPNoHqFRT4CHmN4ns41ewxhEwqi4
+ocILMy6oACyQ4LXrm1ZDW5JLCtG4ZKaa+AQJxbCYtqv1xgDYcgMZLDbkgzl8YzfFNJclkb3wnpwC
+E00TlgRC+hFrNUkSwngMYwgc6r1IZCBgqWRlyO3RaZatS3p3eQkKqJBMjvYmsWwuhXXhPfrkshuD
+JGRgIchNFZq8eGEGUU43FszJP3tlG9KInBkOxqjmwYld6SigM0r6HiQ1GBbvmYfnHXgNlaSENVLE
+SncXoCjE0E8lowHEFeR9DAYQ91BbigmwWWJxgLB8OIalBOgOOmgkEZLFF3ph21FQv9qotkMSR8wT
+4TwhaLcy8ACaXd64AGPHgPSQZVCYv5SKl2RefbC3QIBJmSRMq5oEpV1GVXcVaC0sa3gPBwPLGDah
+P1/8hktJEcspS+ILJPRwYz6lkczJvaUkHubHRKVey4666gpouTMZu489+6obG8O29lhlAccPh+YR
+SGRJFNEra2ZiZ741ci9wGOPGdPbRg7J7JMDQXwM4XNiCkkFbpeS0mm72faBGM/AaTBJYaNiM2gJs
+NNBECgOP6w8LeHZ+2WEDidVeiZaDXDXOIiR6ARA8SBOwuaw0OMRY6eEKJqcablIQwaZU2sfOsHmL
+prcINFBAo63S4hv3Q022AIAjQirDbO6v3d6lF155142dYZTHF193WEBgqIvTHmGu7uxSXWWW5R38
+dTAWq7pDdVfuMlF4CMhFQ/sQ5UgMZy1nmmtXU6uQLsX8so/SDXTdBGUlaMBoLNlJ/9na3KDlN98f
+ylP5owKef/EtB2l0q46w3KG2XGC47nbUdeGQBO+g26rqCuNwZXZkhUPDYcuRGUZpZLU3VUNFq9Ht
+flGU+7Y8+VAwpPCL36yu/kjvffDh0HHAjwLw4svvuLZo9/Kln2jjxnU9wWzv7ijDXVzCKu61SAJa
+/37lOzr7yOz/fz6M8snHH/Ha71fsKAof8c1BF1mthN951z20sPQSPXf+7ZGPPSmTMimTQvS3AAMA
+ixIxD4ffIU8AAAAASUVORK5CYII=">
+ </image>
+
+ <image overflow="visible" width="44" height="44" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAsCAYAAAAehFoBAAAACXBIWXMAAAsSAAALEgHS3X78AAAA
+GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAMhJREFUeNrsldEOgyAMRdsC8f//
+dnFA16phezESRfdyT2JETeyhXpAIAPAofPUFWrOSqo2qX3RW9bKBOCR+TFhrMdGySer5fklaJsAs
+fIuwGqTZGprHfmuJZhNNnHmscJnXzt6CmPM0WDi/9HwE/iHs2a3zTb6JWCKPz7AL9+4I3evPF+A0
+PsNN2mNR39t2dkU02CHL+Uj22ra2SP9Qyyrv9u2Rfss0F9nG0u71iA77cexO4DABzAQAAAAAAAAA
+AAAAAAB7fAQYAPUPSwv9pCKjAAAAAElFTkSuQmCC">
+ </image>
+
+ <image overflow="visible" width="44" height="44" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAsCAYAAAAehFoBAAAACXBIWXMAAAsSAAALEgHS3X78AAAA
+GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAATlJREFUeNrs1T1Lw1AUxvHn3DTW
+JkQKFaSoQwtOUlxF/AB+b2cnRwsFIxYrKYnNa/NymlTHWm1JOp3fcpdw+OcmuQGEEAdFdQ4rlgGT
+UluvYS6gdJMOHmy/PLHVPYV10oPStL1mxFEAZ/aGKPRxNbqnRoLHz49sWD30Lwa1PuqpPYHz8YrR
+7cPWptaug/Ujs/bYSv9ysN7x2nc4jVxu6e1GPqgsy6AfW1ub1K5D3fmssRPg833y5zU7B6dJjHSZ
+1B67TCIEvtvMKeFMx9w2THQ61vcJwftFMjPChYcw8OB/zTG8vqNGgisLx16/y1UwKQ2aapUrgYg2
+jq3uiYu8jATyNFnvaBKHSMr1fHjz747afhxp7DGR+gnesJtlbJEXZXCOPMthdM8IQgghhBBCCCGE
+EEII8ZuVAAMAh3ZwzFDBdbgAAAAASUVORK5CYII=">
+ </image>
+
+ <image overflow="visible" width="44" height="44" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAsCAYAAAAehFoBAAAACXBIWXMAAAsSAAALEgHS3X78AAAA
+GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAVtJREFUeNrslDtOxDAQhv/xIxF7
+DuqtEQUlcAAKLsBl4AZQIUFBj0SxEpRbIkoOsojEsQd7nF0h8RAC7dLMl1h2UkRffs8YUBRF+Q76
+6wee5ndMYPimgXNehrEWRJSHAZiROCHFiGEISCkhhB6h72Fdg+nOAW1E+OH2kidbEzRtK4KNb+G8
+zxIO1liRJVM/XySLcIyDzCGEPDr0fYfutcNi8YLDo5MfuZjfyF5fnHGKKeear5wgyi1zXVf482gk
++eULkp8y1uDq/JTXJlzkYk6t+K1kRR+rmT+4joLjupYMyRtrjKzXJlx0SsLFeKlXnRn8ReVRDXdM
+mMR/KV0SNobW33Tz2Q03TQuba9jn2UsNe3mmnJopTUd1B1Y1nHemNF9pulLDfddhd/+YNnZKvOf5
+8Z6dCLux6epWczklUhYeoqy3p3ukB7SiKIqiKIqiKIqiKIqiKMq/8ibAABg4mKbQIBjmAAAAAElF
+TkSuQmCC">
+ </image>
+
+ <image overflow="visible" width="44" height="44" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAsCAYAAAAehFoBAAAACXBIWXMAAAsSAAALEgHS3X78AAAA
+GXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAVlJREFUeNrslDtOxDAQhv+x8xB7
+DmpKCgokGkQPBRfgMnADqJCgoGY7JGiQKLfmIItIHHvwjLMrJB5CoF2a+RLLToroy+8ZA4ZhGN9B
+f/3A7PGWvfeomwZVVetw+ZmI8nAAMxInpBgxDAEpJYTQI/S9ztt7h7QW4YfpJU82JmjaVgWbukVV
+1/BVBe+8ypIrnxdJEY5x0DmEkEeHvu/QvXaYz19wcHTyIxf3G9nrizNOMYHlyglCbp3LusCfR6PJ
+L16Q/pTzDlfnp7wyYZGLOTXxW8qqPpYzf3AdBcd1KRnSN945Xa9MWHQkYTFe6BVnBn9ReVTCHRMm
+9V9IS8LO0eqb7unuhpumRWm6FrXWcK3PlFNz0nRUdmBZw3lnpPmk6aSG+67Dzv4xre2UeM/z7J4r
+Fa7GpitbzXJKpCw8RF1vbu2SHdCGYRiGYRiGYRiGYRiGYRj/ypsAAwBznZqm8Mvx1AAAAABJRU5E
+rkJggg==">
+ </image>
+</g>
+</svg>
diff --git a/CoffeeTweed/images/.DS_Store b/CoffeeTweed/images/.DS_Store
deleted file mode 100755
index 5008ddf..0000000
--- a/CoffeeTweed/images/.DS_Store
+++ /dev/null
Binary files differ
diff --git a/CoffeeTweed/main_n900.qml b/CoffeeTweed/main_n900.qml
new file mode 100755
index 0000000..0b8693d
--- /dev/null
+++ b/CoffeeTweed/main_n900.qml
@@ -0,0 +1,51 @@
+/****************************************************************************
+**
+** 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
+import "content"
+
+CoffeeTweed {
+ property string folder: "images/n900/"
+
+ width: 800
+ height: 480
+}
+
diff --git a/CoffeeTweed/main_s60.qml b/CoffeeTweed/main_s60.qml
new file mode 100755
index 0000000..1a9bf18
--- /dev/null
+++ b/CoffeeTweed/main_s60.qml
@@ -0,0 +1,50 @@
+/****************************************************************************
+**
+** 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
+import "content"
+
+CoffeeTweed {
+ property string folder: "images/s60/"
+
+ width: 640
+ height: 360
+}