summaryrefslogtreecommitdiffstats
path: root/examples/declarative
diff options
context:
space:
mode:
Diffstat (limited to 'examples/declarative')
-rw-r--r--examples/declarative/clock/Clock.qml78
-rw-r--r--examples/declarative/clock/background.pngbin0 -> 46895 bytes
-rw-r--r--examples/declarative/clock/display.qml5
-rw-r--r--examples/declarative/clock/hour.pngbin0 -> 391 bytes
-rw-r--r--examples/declarative/clock/minute.pngbin0 -> 445 bytes
-rw-r--r--examples/declarative/clock/second.pngbin0 -> 345 bytes
-rw-r--r--examples/declarative/loader/Browser.qml42
7 files changed, 119 insertions, 6 deletions
diff --git a/examples/declarative/clock/Clock.qml b/examples/declarative/clock/Clock.qml
new file mode 100644
index 0000000..4779bd5
--- /dev/null
+++ b/examples/declarative/clock/Clock.qml
@@ -0,0 +1,78 @@
+Item {
+ id: Clock
+ width: 200; height: 200
+ property var time
+ property var hours
+ property var minutes
+ property var seconds
+ onTimeChanged: {
+ var date = new Date;
+ hours = date.getHours();
+ minutes = date.getMinutes();
+ seconds = date.getSeconds();
+ }
+ Timer {
+ interval: 500; running: true; repeat: true; triggeredOnStart: true
+ onTriggered: Clock.time = new Date()
+ }
+
+ Image { source: "background.png" }
+ Image {
+ x: 95
+ y: 54
+ source: "hour.png"
+ smooth: true
+ transform: Rotation {
+ id: HourRotation
+ originX: 4; originY: 45
+ angle: 0
+ angle: Follow {
+ spring: 2
+ damping: .2
+ source: Clock.hours * 50 * 3 + Clock.minutes / 2
+ }
+ }
+ }
+ Image {
+ x: 95
+ y: 30
+ source: "minute.png"
+ smooth: true
+ transform: Rotation {
+ id: MinuteRotation
+ originX: 4; originY: 70
+ angle: 0
+ angle: Follow {
+ spring: 2
+ damping: .2
+ source: Clock.minutes * 6
+ }
+ }
+ }
+ Image {
+ x: 96
+ y: 40
+ source: "second.png"
+ smooth: true
+ transform: Rotation {
+ id: SecondRotation
+ originX: 2; originY: 60
+ angle: 0
+ angle: Follow {
+ spring: 5
+ damping: .25
+ modulus: 360
+ source: Clock.seconds * 6
+ }
+ }
+ }
+
+ Rect {
+ x: 93
+ y: 94
+ width: 11
+ height: 11
+ radius: 5
+ color: "black"
+ }
+}
diff --git a/examples/declarative/clock/background.png b/examples/declarative/clock/background.png
new file mode 100644
index 0000000..a885950
--- /dev/null
+++ b/examples/declarative/clock/background.png
Binary files differ
diff --git a/examples/declarative/clock/display.qml b/examples/declarative/clock/display.qml
new file mode 100644
index 0000000..0187a7e
--- /dev/null
+++ b/examples/declarative/clock/display.qml
@@ -0,0 +1,5 @@
+Rect {
+ width: contents.width
+ height: contents.height
+ Clock { id: Clock }
+}
diff --git a/examples/declarative/clock/hour.png b/examples/declarative/clock/hour.png
new file mode 100644
index 0000000..603466b
--- /dev/null
+++ b/examples/declarative/clock/hour.png
Binary files differ
diff --git a/examples/declarative/clock/minute.png b/examples/declarative/clock/minute.png
new file mode 100644
index 0000000..0207405
--- /dev/null
+++ b/examples/declarative/clock/minute.png
Binary files differ
diff --git a/examples/declarative/clock/second.png b/examples/declarative/clock/second.png
new file mode 100644
index 0000000..bfcef68
--- /dev/null
+++ b/examples/declarative/clock/second.png
Binary files differ
diff --git a/examples/declarative/loader/Browser.qml b/examples/declarative/loader/Browser.qml
index 640ea0c..280273b 100644
--- a/examples/declarative/loader/Browser.qml
+++ b/examples/declarative/loader/Browser.qml
@@ -5,17 +5,23 @@ Rect {
FolderListModel {
id: folders
nameFilters: [ "*.qml" ]
+// folder: "E:"
}
Component {
id: FolderDelegate
- Text {
+ Rect {
id: Wrapper
width: Root.width
- text: fileName
- font.bold: true
- font.size: 14
+ height: NameText.height
+ Text {
+ id: NameText
+ text: fileName
+ font.bold: true
+ font.size: 12
+ }
MouseRegion {
+ id: Mouse
anchors.fill: parent
onClicked: {
if (folders.isFolder(index)) {
@@ -25,17 +31,41 @@ Rect {
}
}
}
+ states: [
+ State {
+ name: "pressed"
+ when: Mouse.pressed
+ SetProperties { target: Wrapper; color: "#bbbbbb" }
+ }
+ ]
}
}
- Text { id: DirText; text: folders.folder }
+ Script {
+ function up(path) {
+ var pos = path.toString().lastIndexOf("/");
+ return path.toString().substring(0, pos);
+ }
+ }
+
+ Rect {
+ id: UpButton
+ width: 30
+ height: UpText.height
+ color: "grey"
+ MouseRegion { anchors.fill: parent; onClicked: folders.folder = up(folders.folder) }
+ Text { id: UpText; text: "Up" }
+ }
+
+ Text { anchors.left: UpButton.right; text: folders.folder }
ListView {
- anchors.top: DirText.bottom
+ anchors.top: UpButton.bottom
anchors.left: parent.left
anchors.right: parent.right
anchors.bottom: parent.bottom
model: folders
delegate: FolderDelegate
+ clip: true
}
}