X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=wizard%2FBEditingDialog.py;h=eacfbfe29b9a34c392c886d4229a4faeee76ae10;hb=05897c4dfac58f2619600924bfaf356b4b1b7406;hp=6ed7e621c3fab625c664c3666fb58e2709a3aae7;hpb=59673238355d540ea4343bca37d4adab95b571fd;p=bertos.git diff --git a/wizard/BEditingDialog.py b/wizard/BEditingDialog.py index 6ed7e621..eacfbfe2 100644 --- a/wizard/BEditingDialog.py +++ b/wizard/BEditingDialog.py @@ -44,6 +44,7 @@ from BToolchainPage import BToolchainPage from BVersionPage import BVersionPage import qvariant_converter import BModulePage +import bertos_utils class BEditingDialog(QDialog): @@ -101,7 +102,9 @@ class BEditingDialog(QDialog): layout.addLayout(button_layout) dialog.setLayout(layout) dialog.connect(ok_button, SIGNAL("clicked()"), dialog.accept) - dialog.exec_() + if dialog.exec_(): + toolchain = qvariant_converter.getStringDict(toolchain_page.currentItem().data(Qt.UserRole)) + toolchain_page.setProjectInfo("TOOLCHAIN", toolchain) def changeBertosVersion(self): dialog = QDialog() @@ -119,7 +122,23 @@ class BEditingDialog(QDialog): layout.addLayout(button_layout) dialog.setLayout(layout) dialog.connect(ok_button, SIGNAL("clicked()"), dialog.accept) - dialog.exec_() + current_version = version_page.projectInfo("SOURCES_PATH") + if dialog.exec_(): + version = qvariant_converter.getString(version_page.currentItem().data(Qt.UserRole)) + if version != current_version: + if QMessageBox.question( + version_page, + self.tr("BeRTOS version update"), + self.tr("Changing the BeRTOS version will destroy all the modification done on the BeRTOS sources"), + QMessageBox.Ok | QMessageBox.Cancel + ) == QMessageBox.Ok: + version_page.setProjectInfo("SOURCES_PATH", version) + version_page.setProjectInfo("OLD_SOURCES_PATH", current_version) + 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): createBertosProject(self.module_page.project(), edit=True)