Added ControlsActivationData to define the state of various ui controls.
authorMohammed Sameer <msameer@foolab.org>
Sun, 26 May 2013 15:58:42 +0000 (18:58 +0300)
committerMohammed Sameer <msameer@foolab.org>
Sun, 26 May 2013 15:58:42 +0000 (18:58 +0300)
This is not fully integrated yet

qml/CameraPage.qml
qml/ControlsActivationData.qml [new file with mode: 0644]
qml/RecordingPage.qml
qml/qml.qrc

index 17fde0a..53f1493 100644 (file)
@@ -32,10 +32,8 @@ Page {
 
         property Camera cam: null
         property Item dimmer: null
-
+        property ControlsActivationData activationData: ControlsActivationData {}
         property bool controlsVisible: cam.running && !standby.visible
-        property bool zoomVisible: true
-        property bool modesVisible: true
         property bool standbyVisible: true
         property bool focusReticleVisible: true
         property bool enableViewfinder: true
@@ -74,7 +72,7 @@ Page {
                 anchors.right: parent.right
                 anchors.rightMargin: 20
                 anchors.bottomMargin: 20
-                visible: controlsVisible && modesVisible
+                visible: controlsVisible && activationData.modeSelectorVisible
         }
 
         PreviewImage {
@@ -87,7 +85,7 @@ Page {
                 anchors.top: parent.top
                 anchors.topMargin: 0
                 anchors.horizontalCenter: parent.horizontalCenter
-                visible: controlsVisible && zoomVisible
+                visible: controlsVisible && activationData.zoomBarVisible
         }
 
         function checkDiskSpace() {
diff --git a/qml/ControlsActivationData.qml b/qml/ControlsActivationData.qml
new file mode 100644 (file)
index 0000000..68bd397
--- /dev/null
@@ -0,0 +1,35 @@
+// -*- qml -*-
+
+/*!
+ * This file is part of CameraPlus.
+ *
+ * Copyright (C) 2012-2013 Mohammed Sameer <msameer@foolab.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+import QtQuick 1.1
+
+QtObject {
+        property bool zoomBarVisible: true
+        property bool modeSelectorVisible: true
+/*
+// TODO:
+        property bool standbyVisible: true
+        property bool focusReticleVisible: true
+        property bool captureButtonVisible: true
+        property bool viewfinderEnabled: true
+*/
+}
index 89f27ed..89a76d4 100644 (file)
@@ -30,7 +30,7 @@ import "data.js" as Data
 
 CameraPage {
         id: page
-        modesVisible: false
+        activationData: ControlsActivationData {modeSelectorVisible: false}
         property bool error: false
 
         policyMode: CameraResources.Recording
index 73b838e..df70b39 100644 (file)
@@ -5,6 +5,7 @@
        <file>PipelineManager.qml</file>
        <file>FocusReticle.qml</file>
        <file>CameraPage.qml</file>
+       <file>ControlsActivationData.qml</file>
        <file>Standby.qml</file>
        <file>CameraSettings.qml</file>
        <file>VideoPage.qml</file>