You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by lo...@apache.org on 2012/05/08 17:07:00 UTC

[2/2] qt commit: minor fixes to contacts and compass

minor fixes to contacts and compass


Project: http://git-wip-us.apache.org/repos/asf/incubator-cordova-qt/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cordova-qt/commit/882712df
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cordova-qt/tree/882712df
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cordova-qt/diff/882712df

Branch: refs/heads/master
Commit: 882712dfaee8df49526bbe616821a26d4d5940ff
Parents: 4552ef4
Author: Longwei Su <ls...@ics.com>
Authored: Mon May 7 18:06:00 2012 -0400
Committer: Longwei Su <ls...@ics.com>
Committed: Mon May 7 18:06:00 2012 -0400

----------------------------------------------------------------------
 qml/main_qt4.qml        |    2 +-
 src/plugins/compass.cpp |    6 ++-
 src/plugins/compass.h   |    1 +
 www/cordova-1.7.0.js    |   19 ++++++++
 www/index.html          |  105 ++++++++++++++----------------------------
 www/js/compass.js       |   58 ++++++++++++-----------
 www/js/contacts.js      |    2 +-
 7 files changed, 92 insertions(+), 101 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cordova-qt/blob/882712df/qml/main_qt4.qml
----------------------------------------------------------------------
diff --git a/qml/main_qt4.qml b/qml/main_qt4.qml
index 8df5518..cb3fba6 100644
--- a/qml/main_qt4.qml
+++ b/qml/main_qt4.qml
@@ -49,7 +49,7 @@ PageStackWindow {
                             myConfirm.open();
                         }
                     }]
-                onUrlChanged: { console.log("find you")}
+                onUrlChanged: { console.log("url changing..")}
 
 
 

http://git-wip-us.apache.org/repos/asf/incubator-cordova-qt/blob/882712df/src/plugins/compass.cpp
----------------------------------------------------------------------
diff --git a/src/plugins/compass.cpp b/src/plugins/compass.cpp
index 8cd9142..ff7b54c 100644
--- a/src/plugins/compass.cpp
+++ b/src/plugins/compass.cpp
@@ -39,7 +39,10 @@ void Compass::getCurrentHeading(int scId, int ecId, QVariantMap p_options) {
     m_successCallbacks << scId;
     m_errorCallbacks << ecId;
 
-    QString callbackArguments = "Heading.cast( " + QString::number(m_azymuth) + " )";
+    //TODO azymuth to true north conversion
+    QString callbackArguments = "CompassHeading.cast( " +
+            QString::number(m_azymuth) + ", "+ QString::number(m_azymuth) + "," +
+            QString::number(m_accuracy) + ", " + " 0 "+" )";
 
     for( int i = 0; i < m_successCallbacks.size(); i++ ) {
         this->callback( m_successCallbacks.at( i ), callbackArguments );
@@ -53,4 +56,5 @@ void Compass::updateSensor(){
     QCompassReading *heading = m_compassSource->reading();
     m_azymuth = heading->azimuth();
     m_accuracy = heading->calibrationLevel();
+    m_timestamp = heading->timestamp();
 }

http://git-wip-us.apache.org/repos/asf/incubator-cordova-qt/blob/882712df/src/plugins/compass.h
----------------------------------------------------------------------
diff --git a/src/plugins/compass.h b/src/plugins/compass.h
index e9028cc..260afdd 100644
--- a/src/plugins/compass.h
+++ b/src/plugins/compass.h
@@ -49,6 +49,7 @@ private:
     QList<int> m_errorCallbacks;
     double m_azymuth;
     double m_accuracy;
+    qtimestamp m_timestamp;
 };
 
 #endif // COMPASS_H

http://git-wip-us.apache.org/repos/asf/incubator-cordova-qt/blob/882712df/www/cordova-1.7.0.js
----------------------------------------------------------------------
diff --git a/www/cordova-1.7.0.js b/www/cordova-1.7.0.js
index 2f4376e..f0d46d7 100644
--- a/www/cordova-1.7.0.js
+++ b/www/cordova-1.7.0.js
@@ -1,3 +1,20 @@
+var path = document.location.pathname;
+var dir = path.substring(path.indexOf('/'), path.indexOf('/',path.lastIndexOf('www')));
+//looking for javascript, start at .../www/
+//document.write('<script language="javascript" type="text/javascript" src="' + dir +'/js/cordova.js"></script>');
+//document.write('<script language="javascript" type="text/javascript" src="' + dir +'/js/cordova.qt.js"></script>');
+//document.write('<script language="javascript" type="text/javascript" src="' + dir +'/js/connection.js"></script>');
+//document.write('<script language="javascript" type="text/javascript" src="' + dir +'/js/console.js"></script>');
+//document.write('<script language="javascript" type="text/javascript" src="' + dir +'/js/device.js"></script>');
+//document.write('<script language="javascript" type="text/javascript" src="' + dir +'/js/file.js"></script>');
+//document.write('<script language="javascript" type="text/javascript" src="' + dir +'/js/geolocation.js"></script>');
+//document.write('<script language="javascript" type="text/javascript" src="' + dir +'/js/notification.js"></script>');
+//document.write('<script language="javascript" type="text/javascript" src="' + dir +'/js/compass.js"></script>');
+//document.write('<script language="javascript" type="text/javascript" src="' + dir +'/js/accelerometer.js"></script>');
+//document.write('<script language="javascript" type="text/javascript" src="' + dir +'/js/camera.js"></script>');
+//document.write('<script language="javascript" type="text/javascript" src="' + dir +'/js/contacts.js"></script>');
+//document.write('<script language="javascript" type="text/javascript" src="' + dir +'/js/media.js"></script>');
+
 //for main index
 document.write('<script language="javascript" type="text/javascript" src="js/cordova.js"></script>');
 document.write('<script language="javascript" type="text/javascript" src="js/cordova.qt.js"></script>');
@@ -43,6 +60,8 @@ document.write('<script language="javascript" type="text/javascript" src="../../
 document.write('<script language="javascript" type="text/javascript" src="../../js/contacts.js"></script>');
 document.write('<script language="javascript" type="text/javascript" src="../../js/media.js"></script>');
 
+
+
 //for debugger
 //document.write('<script src="http://192.168.2.14:8080/target/target-script-min.js#anonymous"></script>');
 

http://git-wip-us.apache.org/repos/asf/incubator-cordova-qt/blob/882712df/www/index.html
----------------------------------------------------------------------
diff --git a/www/index.html b/www/index.html
old mode 100644
new mode 100755
index 65c84a2..9c6f3cb
--- a/www/index.html
+++ b/www/index.html
@@ -1,72 +1,37 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
-"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-    <head>
-        <title>Cordova-Qt Test Page</title>
-        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-        <script language="javascript" type="text/javascript" src="js/cordova.js"></script>
-        <script language="javascript" type="text/javascript" src="js/cordova.qt.js"></script>
-        <script language="javascript" type="text/javascript" src="js/connection.js"></script>
-        <script language="javascript" type="text/javascript" src="js/console.js"></script>
-        <script language="javascript" type="text/javascript" src="js/device.js"></script>
-        <script language="javascript" type="text/javascript" src="js/file.js"></script>
-        <script language="javascript" type="text/javascript" src="js/geolocation.js"></script>
-        <script language="javascript" type="text/javascript" src="js/notification.js"></script>
-        <script language="javascript" type="text/javascript" src="js/compass.js"></script>
-        <script language="javascript" type="text/javascript" src="js/accelerometer.js"></script>
-        <script language="javascript" type="text/javascript" src="js/camera.js"></script>
-        <script language="javascript" type="text/javascript" src="js/contacts.js"></script>
-        <script language="javascript" type="text/javascript" src="js/media.js"></script>
-        <script language="javascript" type="text/javascript" src="basic.js"></script>
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta name="viewport" content="width=device-width,height=device-height,user-scalable=no,initial-scale=1.0" />
+    <meta http-equiv="Content-type" content="text/html; charset=utf-8">
+    <title>Cordova Mobile Spec</title>
+	  <link rel="stylesheet" href="master.css" type="text/css" media="screen" title="no title" charset="utf-8">
+	  <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+	  <script type="text/javascript" charset="utf-8" src="main.js"></script>
 
-        <style type="text/css">
-            input {
-                height: 60px;
-                margin-top: 15px;
-            }
-        </style>
-    </head>
-    <body>
-        <input type="button" value="Init Watchers" onclick="init();"/>
-        <br />
-        <input type="button" value="Vibrate" onclick="test_vibra();"/>
-        <br />
-        <input type="button" value="Alert/Confirm" onclick="test_alert_confirm();">
-        <br />
-        <input type="button" value="Check Connection" onclick="getCurrentConnectionType();">
-        <br />
-        <input type="button" value="Request File System" onclick="test_requestFileSystem();">
-        <br />
-        <div id="debug_output"> </div>
-        <input type="button" value="Get Current Position" onclick="getCurrentPosition();">
-        <br />
-        <div id="position_val"> Location </div>
-        <input type="button" value="Get Acceleration" onclick="getCurrentAcceleration();">
-        <br />
-        <div id="accel_val"> Acceleration </div>
-        <input type="button" value="Get Current Heading" onclick="getCurrentHeading();">
-        <br />
-        <div id="heading_val"> Heading </div>
-        <input type="button" value="Get Picture" onclick="getPicture();">
-        <br />
-        <div id="picture_val"> Picture</div>
-        <input type="button" value="Create Test Contact" onclick="createTestContact();">
-        <br />
-        <div id="create_contact_result"></div>
-        <input type="button" value="Search for Test Contact" onclick="searchForTestContact();">
-        <br />
-        <div id="search_contact_result"></div>
-        <input type="button" value="Remove Test Contact" onclick="removeTestContact();">
-        <br />
-        <div id="remove_contact_result"></div>
-        <input type="button" value="Media Open" onclick="mediaOpen();">
-        <input type="button" value="Play" onclick="mediaPlay();">
-        <input type="button" value="Pause" onclick="mediaPause();">
-        <input type="button" value="Stop" onclick="mediaStop();">
-        <input type="button" value="Start Recording" onclick="mediaStartRecording();">
-        <input type="button" value="Stop Recording" onclick="mediaStopRecording();">
-        <input type="button" value="FF 5sec" onclick="mediaFF5sec();">
-        <br />
-        <div id="media_position_duration_val"> Position/Duration</div>
-    </body>
+  </head>
+  <body onload="init();" id="stage" class="theme">
+    <h1>PhoneGap Tests</h1>
+    <div id="info">
+        <h4>Platform: <span id="platform">  </span></h4>
+        <h4>Version: <span id="version"> </span></h4>
+        <h4>UUID: <span id="uuid">  </span></h4>
+        <h4>Name: <span id="name"> </span></h4>
+        <h4>Width: <span id="width">  </span>,   Height: <span id="height"> 
+                   </span>, Color Depth: <span id="colorDepth"></span></h4>
+     </div>
+    <a href="autotest/index.html" class="btn large">Automatic Test</a>
+    <a href="accelerometer/index.html" class="btn large">Accelerometer</a>
+    <a href="audio/index.html" class="btn large">Audio Play/Record</a>
+    <a href="battery/index.html" class="btn large">Battery</a>
+    <a href="camera/index.html" class="btn large">Camera</a>
+    <a href="compass/index.html" class="btn large">Compass</a>
+    <a href="contacts/index.html" class="btn large">Contacts</a>
+    <a href="events/index.html" class="btn large">Events</a>
+    <a href="location/index.html" class="btn large">Location</a>
+    <a href="misc/index.html" class="btn large">Misc Content</a>
+    <a href="network/index.html" class="btn large">Network</a>
+    <a href="notification/index.html" class="btn large">Notification</a>
+    <a href="sql/index.html" class="btn large">Web SQL</a>
+    <a href="storage/index.html" class="btn large">Local Storage</a>
+  </body>
 </html>

http://git-wip-us.apache.org/repos/asf/incubator-cordova-qt/blob/882712df/www/js/compass.js
----------------------------------------------------------------------
diff --git a/www/js/compass.js b/www/js/compass.js
index eb6e79b..6f38d40 100644
--- a/www/js/compass.js
+++ b/www/js/compass.js
@@ -17,37 +17,44 @@
 //compass interface http://docs.phonegap.com/en/1.0.0/phonegap_compass_compass.md.html
 
 
-function Heading() {
+function CompassHeading() {
 };
 
-Heading.cast = function( p_heading, p_accuracy ) {
-    var heading = new Heading();
+
+CompassHeading.cast = function( p_heading, p_trueHeading, p_accuracy, timestamp) {
+    var heading = new CompassHeading();
     heading.magneticHeading = p_heading;
+    heading.trueHeading = p_trueHeading;
+    heading.headingAccuracy = p_accuracy;
+    heading.timestamp = timestamp;
     return heading;
 };
 
-Heading.prototype.magneticHeading = null;
-Heading.prototype.accuracy = null;
+
+CompassHeading.prototype.magneticHeading = 0;
+CompassHeading.prototype.trueHeading = 0;
+CompassHeading.prototype.headingAccuracy = 0;
+CompassHeading.prototype.timestamp = 0;
 
 
-//HeadingError
+//CompassError
 
-function HeadingError() {
+function CompassError() {
 };
 
-HeadingError.cast = function( p_code, p_message ) {
-    var headingError = new HeadingError();
-    headingError.code = p_code;
-    headingError.message = p_message;
+CompassError.cast = function( p_code, p_message ) {
+    var CompassError = new CompassError();
+    CompassError.code = p_code;
+    CompassError.message = p_message;
 
-    return headingError;
+    return CompassError;
 };
 
-HeadingError.COMPASS_INTERNAL_ERR = 1;
-HeadingError.COMPASS_NOT_SUPPORTED = 2;
+CompassError.COMPASS_INTERNAL_ERR = 0;
+CompassError.COMPASS_NOT_SUPPORTED = 20;
 
-HeadingError.prototype.code = 0;
-HeadingError.prototype.message = "";
+CompassError.prototype.code = 0;
+CompassError.prototype.message = "";
 
 /**
  * HeadingOptions interface
@@ -55,12 +62,6 @@ HeadingError.prototype.message = "";
 function HeadingOptions() {
 };
 
-//HeadingOptions.prototype.magneticHeading = 0;
-//HeadingOptions.prototype.trueHeading = 0;//
-//HeadingOptions.prototype.headingAccuracy = 0;
-//HeadingOptions.prototype.timestamp = 0;
-
-
 /**
  * Compass interface
  */
@@ -76,12 +77,12 @@ Compass.prototype.getCurrentHeading = function( successCallback, errorCallback,
     if( typeof errorCallback !== "function" ) errorCallback = function() {};
     var headingOptions = new HeadingOptions();
 
-    // Check the timestamp
-    if( this.cachedHeading !== null &&
-            (this.cachedHeading.timestamp <= (new Date()).getTime) ) {
-        successCallback( this.cachedHeading );
-        return;
-    }
+//    // Check the timestamp
+//    if( this.cachedHeading !== null &&
+//            (this.cachedHeading.timestamp <= (new Date()).getTime) ) {
+//        successCallback( this.cachedHeading );
+//        return;
+//    }
 
     // Call the native function and query for a new heading
     var me = this;
@@ -90,6 +91,7 @@ Compass.prototype.getCurrentHeading = function( successCallback, errorCallback,
                       me.cachedHeading = p_heading;
                       successCallback( p_heading );
                   }, errorCallback, "com.cordova.Compass", "getCurrentHeading", [ headingOptions ] );
+    return heading = CompassHeading.cast(me.cachedHeading);
 };
 
 Compass.prototype.watchHeading = function( successCallback, errorCallback, options ) {

http://git-wip-us.apache.org/repos/asf/incubator-cordova-qt/blob/882712df/www/js/contacts.js
----------------------------------------------------------------------
diff --git a/www/js/contacts.js b/www/js/contacts.js
index 5f0c8d0..7f483a9 100644
--- a/www/js/contacts.js
+++ b/www/js/contacts.js
@@ -136,7 +136,7 @@ ContactError.TIMEOUT_ERROR = 2
 ContactError.PENDING_OPERATION_ERROR = 3
 ContactError.IO_ERROR = 4
 ContactError.NOT_SUPPORTED_ERROR = 5
-ContactError.PERMISSION_DENIED_ERROR = 6
+ContactError.PERMISSION_DENIED_ERROR = 20
 
 ContactError.prototype.code = ContactError.UNKNOWN_ERROR