* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
-import QtQuick 1.1
-import com.nokia.meego 1.1
+import QtQuick 2.0
import QtCamera 1.0
-Slider {
- id: slider
- property Camera camera: null
+CameraSlider {
+ id: slider
+ property Camera camera: null
- platformStyle: SliderStyle {
- handleBackground: ""
- handleBackgroundPressed: ""
- }
+ handleBackground: ""
+ handleBackgroundPressed: ""
- Binding {
- target: camera.zoom
- property: "value"
- value: slider.value
- }
+ Binding {
+ target: camera ? camera.zoom : null
+ property: "value"
+ value: slider.value
+ when: camera != null
+ }
- Connections {
- target: camera
- onModeChanged: slider.value = camera.zoom.minimum;
- }
+ Connections {
+ target: camera
+ onModeChanged: slider.value = camera.zoom.minimum;
+ }
- Connections {
- target: keys
+ Connections {
+ target: keys
- onVolumeUpPressed: {
- slider.value = Math.min(slider.value + slider.stepSize, slider.maximumValue);
- hackTimer.running = true;
- }
+ onVolumeUpPressed: {
+ if (settings.zoomAsShutter) {
+ return;
+ }
- onVolumeDownPressed: {
- slider.value = Math.max(slider.value - slider.stepSize, slider.minimumValue);
- hackTimer.running = true;
- }
+ slider.value = Math.min(slider.value + slider.stepSize, slider.maximumValue)
+ hackTimer.running = true
}
- orientation: Qt.Horizontal
- width: 500
- height: 50
- stepSize:0.1
- value: camera.zoom.value
- minimumValue: camera.zoom.minimum
- maximumValue: camera.zoom.maximum
+ onVolumeDownPressed: {
+ if (settings.zoomAsShutter) {
+ return;
+ }
+
+ slider.value = Math.max(slider.value - slider.stepSize, slider.minimumValue)
+ hackTimer.running = true
+ }
+ }
- state: "hidden"
- states: [
+ orientation: Qt.Horizontal
+ width: 500
+ height: 50
+ stepSize:0.1
+ value: camera ? camera.zoom.value : 0
+ minimumValue: camera ? camera.zoom.minimum : 0
+ maximumValue: camera ? camera.zoom.maximum : 0
+
+ state: "hidden"
+ states: [
State {
- name: "visible"
- when: slider.pressed || hackTimer.running
- PropertyChanges { target: slider; opacity: 1.0 }
+ name: "visible"
+ when: slider.pressed || hackTimer.running
+ PropertyChanges { target: slider; opacity: 1.0 }
},
State {
- name: "hidden"
- when: !slider.pressed
- PropertyChanges { target: slider; opacity: 0.2 }
- }]
-
- transitions: Transition {
- to: "hidden"
- SequentialAnimation {
- PauseAnimation { duration: 2000 }
- NumberAnimation { target: slider; property: "opacity"; duration: 250 }
- }
+ name: "hidden"
+ when: !slider.pressed
+ PropertyChanges { target: slider; opacity: 0.2 }
}
+ ]
- Timer {
- id: hackTimer
- interval: 1
- }
+ transitions: Transition {
+ to: "hidden"
+ SequentialAnimation {
+ PauseAnimation { duration: 2000 }
+ NumberAnimation { target: slider; property: "opacity"; duration: 250 }
+ }
+ }
+
+ Timer {
+ id: hackTimer
+ interval: 1
+ }
}