Merge the settings, changing BeRTOS version
authorduplo <duplo@38d2e660-2303-0410-9eaa-f027e97ec537>
Mon, 31 Aug 2009 16:07:49 +0000 (16:07 +0000)
committerduplo <duplo@38d2e660-2303-0410-9eaa-f027e97ec537>
Mon, 31 Aug 2009 16:07:49 +0000 (16:07 +0000)
git-svn-id: https://src.develer.com/svnoss/bertos/trunk@2832 38d2e660-2303-0410-9eaa-f027e97ec537

wizard/BEditingDialog.py
wizard/bertos_utils.py

index 1534146e21460ffc0eb57e5f1592634f60d52cd0..eacfbfe29b9a34c392c886d4229a4faeee76ae10 100644 (file)
@@ -134,10 +134,10 @@ class BEditingDialog(QDialog):
                 ) == QMessageBox.Ok:
                     version_page.setProjectInfo("SOURCES_PATH", version)
                     version_page.setProjectInfo("OLD_SOURCES_PATH", current_version)
-                    project = version_page.project()
-                    modules, lists, configurations, files = project.info("MODULES"), project.info("LISTS"), project.info("CONFIGURATIONS"), project.info("FILES")
+                    enabled_modules = bertos_utils.enabledModules(version_page.project())
                     bertos_utils.loadSourceTree(version_page.project())
                     bertos_utils.loadModuleData(version_page.project(), True)
+                    bertos_utils.setEnabledModules(version_page.project(), enabled_modules)
                     self.module_page.fillModuleTree()
 
     def apply(self):
index 2b7d6767e2a8235e9b58850f7ef74eb2878b6e23..2520b109cff531be35b6e70308f9a6dc338f65f1 100644 (file)
@@ -82,11 +82,21 @@ def loadBertosProject(project_file):
             tag_dict[tag] = False
     project_info.setInfo("ALL_CPU_TAGS", tag_dict)
     loadModuleData(project_info, True)
+    setEnabledModules(project_info, project_data["ENABLED_MODULES"])
+    return project_info
+
+def setEnabledModules(project_info, enabled_modules):
     modules = project_info.info("MODULES")
     for module, information in modules.items():
-        information["enabled"] = module in project_data["ENABLED_MODULES"]
+        information["enabled"] = module in enabled_modules
     project_info.setInfo("MODULES", modules)
-    return project_info
+
+def enabledModules(project_info):
+    enabled_modules = []
+    for name, module in project_info.info("MODULES").items():
+        if module["enabled"]:
+            enabled_modules.append(name)
+    return enabled_modules
 
 def mergeSources(srcdir, new_sources, old_sources):
     # The current mergeSources function provide only a raw copy of the sources in the