diff options
author | aavit <eirik.aavitsland@digia.com> | 2013-10-08 16:55:15 +0200 |
---|---|---|
committer | Eirik Aavitsland <eirik.aavitsland@digia.com> | 2013-10-09 11:33:52 +0300 |
commit | bcc6a8fe80f2f31605afaae63e1b05051c0deb5f (patch) | |
tree | 408bb294cb2fb813f2b86fcf0ae90e0f9d1c3d88 /basicsuite/Camera/RecordingTime.qml | |
parent | ecd752748fd0385d6b22712663c0e1d1c87921af (diff) |
Moved Media Player and Camera from experimental to basicsuite
Change-Id: I8fd2335614062e1ca09f385ad6c0ae0dd19d694c
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@digia.com>
Diffstat (limited to 'basicsuite/Camera/RecordingTime.qml')
-rw-r--r-- | basicsuite/Camera/RecordingTime.qml | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/basicsuite/Camera/RecordingTime.qml b/basicsuite/Camera/RecordingTime.qml new file mode 100644 index 0000000..504d232 --- /dev/null +++ b/basicsuite/Camera/RecordingTime.qml @@ -0,0 +1,70 @@ +import QtQuick 2.0 + +Rectangle { + id: recRoot + width: row.width + 14 * root.contentScale + height: circle.height + 14 * root.contentScale + color: "#77333333" + radius: 5 * root.contentScale + rotation: root.contentRotation + Behavior on rotation { NumberAnimation { } } + + Row { + id: row + anchors.centerIn: parent + spacing: 10 * root.contentScale + + Item { + anchors.verticalCenter: timeText.verticalCenter + width: 18 * root.contentScale + height: width + + Rectangle { + id: circle + width: parent.width + height: parent.height + radius: width / 2 + color: "#fa334f" + + SequentialAnimation { + loops: Animation.Infinite + running: recRoot.visible + PropertyAction { target: circle; property: "visible"; value: true } + PauseAnimation { duration: 1000 } + PropertyAction { target: circle; property: "visible"; value: false } + PauseAnimation { duration: 1000 } + } + } + } + + Text { + id: timeText + color: "white" + font.pixelSize: 24 * root.contentScale + text: formatTime(camera.videoRecorder.duration) + } + } + + function formatTime(time) { + time = time / 1000 + var hours = Math.floor(time / 3600); + time = time - hours * 3600; + var minutes = Math.floor(time / 60); + var seconds = Math.floor(time - minutes * 60); + + if (hours > 0) + return formatTimeBlock(hours) + ":" + formatTimeBlock(minutes) + ":" + formatTimeBlock(seconds); + else + return formatTimeBlock(minutes) + ":" + formatTimeBlock(seconds); + + } + + function formatTimeBlock(time) { + if (time === 0) + return "00" + if (time < 10) + return "0" + time; + else + return time.toString(); + } +} |