[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [gcompris/devel2] src/activities/imageid: imageid, add a dialog box to let the user confirm the down
From:       Bruno Coudoin <bruno.coudoin () gcompris ! net>
Date:       2014-12-31 18:34:14
Message-ID: E1Y6O62-0001M6-5g () scm ! kde ! org
[Download RAW message or body]

Git commit 2e2e012c8685a9b413061e38d61f400f694ad4de by Bruno Coudoin.
Committed on 15/12/2014 at 07:59.
Pushed by bcoudoin into branch 'devel2'.

imageid, add a dialog box to let the user confirm the download

M  +32   -3    src/activities/imageid/Imageid.qml
M  +10   -3    src/activities/imageid/imageid.js

http://commits.kde.org/gcompris/2e2e012c8685a9b413061e38d61f400f694ad4de

diff --git a/src/activities/imageid/Imageid.qml b/src/activities/imageid/Imageid.qml
index 9130751..dd11119 100644
--- a/src/activities/imageid/Imageid.qml
+++ b/src/activities/imageid/Imageid.qml
@@ -23,9 +23,11 @@
 import QtQuick 2.1
 import GCompris 1.0
 import QtGraphicalEffects 1.0
+import QtQuick.Dialogs 1.1
 
 import "../../core"
 import "imageid.js" as Activity
+import "qrc:/gcompris/src/core/core.js" as Core
 
 ActivityBase {
     id: activity
@@ -39,14 +41,24 @@ ActivityBase {
         fillMode: Image.PreserveAspectCrop
         sourceSize.width: parent.width
 
+        property Item dialog
+
         signal start
         signal stop
         
+        Connections {
+            target: DownloadManager
+
+            onDownloadFinished: Activity.start(items)
+            onError: {
+                // Fixme display an error message
+                Core.destroyDialog(dialog)
+            }
+        }
+
         Component.onCompleted: {
             activity.start.connect(start)
             activity.stop.connect(stop)
-
-            DownloadManager.updateResource("data/words/words.rcc")
         }
 
         QtObject {
@@ -62,7 +74,24 @@ ActivityBase {
             property GCAudio audioVoices: activity.audioVoices
         }
 
-        onStart: { Activity.start(items) }
+        onStart: {
+            Activity.init(items)
+
+            if(!DownloadManager.haveLocalResource("data/words/words.rcc")) {
+                var buttonHandler = new Array();
+                buttonHandler[StandardButton.No] = function() {};
+                buttonHandler[StandardButton.Yes] = function() { \
DownloadManager.updateResource("data/words/words.rcc") }; +                dialog = \
Core.showMessageDialog(parent, qsTr("Download?"), +                                   \
qsTr("Are you ok to download the images for this activity"), +                        \
"", +                                                StandardIcon.Question,
+                                                buttonHandler);
+            } else {
+                // Will register the resource file and call start() on callback
+                DownloadManager.updateResource("data/words/words.rcc")
+            }
+        }
+
         onStop: { Activity.stop() }
         
         JsonParser {
diff --git a/src/activities/imageid/imageid.js b/src/activities/imageid/imageid.js
index ee050eb..c415374 100755
--- a/src/activities/imageid/imageid.js
+++ b/src/activities/imageid/imageid.js
@@ -29,16 +29,23 @@
 var currentLevel = 0;
 var currentSubLevel = 0;
 var level = null;
-var maxLevel = 2;
-var maxSubLevel = 0;
+var maxLevel;
+var maxSubLevel;
 var items;
 var baseUrl = "qrc:/gcompris/src/activities/imageid/resource/";
 var dataset = null;
 var lessons
 var goodWord
 
-function start(items_) {
+function init(items_) {
     items = items_;
+    maxLevel = 0
+    maxSubLevel = 0
+    currentLevel = 0
+    currentSubLevel = 0
+}
+
+function start() {
     currentLevel = 0;
     currentSubLevel = 0;
 


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic