X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;ds=sidebyside;f=wizard%2FBFinalPage.py;h=aad5fec0344d8cb547586ec4c6530434861b213b;hb=82f680048d359567d43f9f9d118dbd6190c7ccdd;hp=04b1f50782904e5de076f1da8929f599e9df3e3f;hpb=d7bc79d9a4075745a39715af462e2b9a8dfbcc8e;p=bertos.git diff --git a/wizard/BFinalPage.py b/wizard/BFinalPage.py index 04b1f507..aad5fec0 100644 --- a/wizard/BFinalPage.py +++ b/wizard/BFinalPage.py @@ -4,7 +4,7 @@ # Copyright 2009 Develer S.r.l. (http://www.develer.com/) # All rights reserved. # -# $Id:$ +# $Id$ # # Author: Lorenzo Berni # @@ -19,12 +19,64 @@ import bertos_utils from const import * class BFinalPage(BWizardPage): + """ + Last page of the wizard. It creates the project and show a success message. + """ def __init__(self): BWizardPage.__init__(self, UI_LOCATION + "/final_page.ui") self.setTitle(self.tr("Project created successfully")) + + ## Overloaded BWizardPage methods ## def reloadData(self): + """ + Overload of the BWizardPage reloadData method. + """ QApplication.instance().setOverrideCursor(Qt.WaitCursor) - bertos_utils.createBertosProject(self.wizard().project()) - QApplication.instance().restoreOverrideCursor() \ No newline at end of file + bertos_utils.createBertosProject(self.project()) + QApplication.instance().restoreOverrideCursor() + if os.name == "nt": + output = self.projectInfo("OUTPUT") + import winreg_importer + command_lines = winreg_importer.getCommandLines() + self.setProjectInfo("COMMAND_LINES", command_lines) + layout = QVBoxLayout() + self._plugin_dict = {} + for plugin in output: + if plugin in command_lines: + module = bertos_utils.loadPlugin(plugin) + check = QCheckBox(self.tr("Open project in %s" %module.PLUGIN_NAME)) + if len(output) == 1: + check.setCheckState(Qt.Checked) + else: + check.setCheckState(Qt.Unchecked) + layout.addWidget(check) + self._plugin_dict[check] = plugin + widget = QWidget() + widget.setLayout(layout) + if len(self._plugin_dict) > 0: + self.pageContent.scrollArea.setVisible(True) + self.pageContent.scrollArea.setWidget(widget) + for plugin in self._plugin_dict: + self.connect(plugin, SIGNAL("stateChanged(int)"), self.modeChecked) + self.modeChecked() + + def setupUi(self): + """ + Overload of the BWizardPage setupUi method. + """ + self.pageContent.scrollArea.setVisible(False) + + #### + + ## Slots ## + + def modeChecked(self): + to_be_opened = [] + for check, plugin in self._plugin_dict.items(): + if check.checkState() == Qt.Checked: + to_be_opened.append(plugin) + self.setProjectInfo("TO_BE_OPENED", to_be_opened) + + #### \ No newline at end of file