Make a new component CameraPositionSource to get rid of QtMobility dependency
authorMohammed Sameer <msameer@foolab.org>
Sat, 27 Jul 2013 22:27:55 +0000 (01:27 +0300)
committerMohammed Sameer <msameer@foolab.org>
Sat, 27 Jul 2013 22:27:55 +0000 (01:27 +0300)
qml/harmattan/CameraPositionSource.qml [new file with mode: 0644]
qml/harmattan/harmattan.qrc
qml/main.qml

diff --git a/qml/harmattan/CameraPositionSource.qml b/qml/harmattan/CameraPositionSource.qml
new file mode 100644 (file)
index 0000000..d08bd78
--- /dev/null
@@ -0,0 +1,42 @@
+// -*- 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
+import com.nokia.meego 1.1
+import CameraPlus 1.0
+import QtMobility.location 1.2
+
+PositionSource {
+    // NOTE: The source will not reset the position when we lose the signal.
+    // This shouldn't be a big problem as we are course enough.
+    // If we ever need street level updates then this will be an issue.
+    id: positionSource
+
+    property alias longitude: position.coordinate.longitude
+    property alias latitude: position.coordinate.latitude
+    property alias altitude: position.coordinate.altitude
+    property alias longitudeValid: position.longitudeValid
+    property alias latitudeValid: position.latitudeValid
+    property alias altitudeValid: position.altitudeValid
+    property alias horizontalAccuracy: position.horizontalAccuracy
+    property alias horizontalAccuracyValid: position.horizontalAccuracyValid
+}
index 0c58291..1113a3b 100644 (file)
@@ -15,5 +15,6 @@
        <file>CameraMenu.qml</file>
        <file>CameraMenuAction.qml</file>
        <file>FullScreenThumbnail.qml</file>
        <file>CameraMenu.qml</file>
        <file>CameraMenuAction.qml</file>
        <file>FullScreenThumbnail.qml</file>
+       <file>CameraPositionSource.qml</file>
     </qresource>
 </RCC>
     </qresource>
 </RCC>
index 748ff83..9e89af6 100644 (file)
@@ -23,7 +23,6 @@
 import QtQuick 2.0
 import QtCamera 1.0
 import CameraPlus 1.0
 import QtQuick 2.0
 import QtCamera 1.0
 import CameraPlus 1.0
-import QtMobility.location 1.2
 
 // TODO: flash not ready (battery low or flash not ready message)
 
 
 // TODO: flash not ready (battery low or flash not ready message)
 
@@ -97,11 +96,7 @@ CameraWindow {
     }
 
     property alias dimmer: camDimmer
     }
 
     property alias dimmer: camDimmer
-
-    PositionSource {
-        // NOTE: The source will not reset the position when we lose the signal.
-        // This shouldn't be a big problem as we are course enough.
-        // If we ever need street level updates then this will be an issue.
+    CameraPositionSource {
         id: positionSource
         active: settings.useGps
         // TODO: we cannot bind to cam.running because camera will stop
         id: positionSource
         active: settings.useGps
         // TODO: we cannot bind to cam.running because camera will stop
@@ -118,18 +113,18 @@ CameraWindow {
         country: geocode.country
         city: geocode.city
         suburb: geocode.suburb
         country: geocode.country
         city: geocode.city
         suburb: geocode.suburb
-        longitude: positionSource.position.coordinate.longitude
-        longitudeValid: positionSource.position.longitudeValid && settings.useGps
-        latitude: positionSource.position.coordinate.latitude
-        latitudeValid: positionSource.position.latitudeValid && settings.useGps
-        elevation: positionSource.position.coordinate.altitude
-        elevationValid: positionSource.position.altitudeValid && settings.useGps
+        longitude: positionSource.longitude
+        longitudeValid: positionSource.longitudeValid && settings.useGps
+        latitude: positionSource.latitude
+        latitudeValid: positionSource.latitudeValid && settings.useGps
+        elevation: positionSource.altitude
+        elevationValid: positionSource.altitudeValid && settings.useGps
         orientation: orientation.orientation
         artist: settings.creatorName
         captureDirection: compass.direction
         captureDirectionValid: compass.directionValid
         orientation: orientation.orientation
         artist: settings.creatorName
         captureDirection: compass.direction
         captureDirectionValid: compass.directionValid
-        horizontalError: positionSource.position.horizontalAccuracy
-        horizontalErrorValid: positionSource.position.horizontalAccuracyValid && settings.useGps
+        horizontalError: positionSource.horizontalAccuracy
+        horizontalErrorValid: positionSource.horizontalAccuracyValid && settings.useGps
         dateTimeEnabled: true
     }
 
         dateTimeEnabled: true
     }