Group methods in classes in topics
[bertos.git] / wizard / BOutputPage.py
1 #!/usr/bin/env python
2 # encoding: utf-8
3 #
4 # Copyright 2009 Develer S.r.l. (http://www.develer.com/)
5 # All rights reserved.
6 #
7 # $Id:$
8 #
9 # Author: Lorenzo Berni <duplo@develer.com>
10 #
11
12 import os
13
14 from PyQt4.QtGui import *
15 from BWizardPage import *
16 import bertos_utils
17
18 from const import *
19
20 class BOutputPage(BWizardPage):
21     """
22     Page of the wizard that show a little summary of the previous decisions.
23     """
24     
25     def __init__(self):
26         BWizardPage.__init__(self, UI_LOCATION + "/output_select.ui")
27         self.setTitle(self.tr("Choose the project output"))
28         self.connectSignals()
29         self.setProjectInfo("OUTPUT", [])
30     
31     ## Overloaded BWizardPage connectSignals method. ##
32     
33     def connectSignals(self):
34         """
35         Connects the signals with the related slots.
36         """
37         self.connect(self.pageContent.eclipseCheckBox, SIGNAL("stateChanged(int)"), lambda checked: self.modeChecked(checked, "eclipse"))
38         self.connect(self.pageContent.xcodeCheckBox, SIGNAL("stateChanged(int)"), lambda checked: self.modeChecked(checked, "xcode"))
39         self.connect(self.pageContent.codeliteCheckBox, SIGNAL("stateChanged(int)"), lambda checked: self.modeChecked(checked, "codelite"))
40     
41     ####
42     
43     ## Slots ##
44     
45     def modeChecked(self, checked, value):
46         """
47         Slot called when one of the mode checkbox is checked. It stores it.
48         """
49         output_list = self.projectInfo("OUTPUT")
50         if checked == Qt.Checked:
51             output_list.append(value)
52         else:
53             output_list.remove(value)
54         self.setProjectInfo("OUTPUT", output_list)
55
56     ####