Fix error message.
[bertos.git] / wizard / BBoardPage.py
index 35fc9bc467050a892ecc1c8b77805c23e055dc38..9e70a68a276e017a28fc4186f32dd0a994da3a31 100644 (file)
@@ -66,9 +66,14 @@ class BBoardPage(BWizardPage):
         Overload of the QWizardPage isComplete method.
         """
         if self.selected:
-            _type = qvariant_converter.getDict(self.selected.data(0, Qt.UserRole))["type"]
+            _info_dict = qvariant_converter.getDict(self.selected.data(0, Qt.UserRole))
+            _type = _info_dict["type"]
             type = qvariant_converter.getString(_type)
-            return type == "project"
+            if type == "project":
+                self.setProjectInfo("PROJECT_PRESET", qvariant_converter.getString(_info_dict["path"]))
+                return True
+            else:
+                return False
         else:
             return False
 
@@ -124,11 +129,14 @@ class BBoardPage(BWizardPage):
             self._createPresetNode(self.pageContent.boardTree, obj)
 
     def _createPresetNode(self, parent, obj):
+        selected_item_name = self.projectInfo("PROJECT_PRESET")
         item_name = obj["info"].get("name", obj["info"]["filename"])
         item = QTreeWidgetItem(parent, [item_name]) 
         item.setIcon(0, QIcon(self._getNodeIcon(obj)))
         children_dict = obj["children"]
         item.setData(0, Qt.UserRole, qvariant_converter.convertDict(obj["info"]))
+        if obj["info"]["path"] == selected_item_name:
+            self.pageContent.boardTree.setCurrentItem(item)
         for child in children_dict:
             self._createPresetNode(item, child)