Add the toolchain selection page stub
[bertos.git] / wizard / BToolchainPage.py
1 #!/usr/bin/env python
2 # encoding: utf-8
3 #
4 # Copyright 2008 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 from BWizardPage import *
13
14 class BToolchainPage(BWizardPage):
15     
16     def __init__(self):
17         BWizardPage.__init__(self, "toolchain_select.ui")
18         self.setTitle(self.tr("Select toolchain"))
19         self._setupUi()
20         self._connectSignals()
21     
22     def _setupUi(self):
23         path = self._settingsRetrieve("path_search").toBool()
24         if not path is None:
25             self.pageContent.pathBox.setChecked(path)
26         else:
27             self.pageContent.pathBox.setChecked(False)
28         customPath = self._settingsRetrieve("custom_dir").toBool()
29         if not customPath is None:
30             self.pageContent.customDirBox.setChecked(customPath)
31         else:
32             self.pageContent.customDirBox.setChecked(False)
33         self._updateUi()
34     
35     def _updateUi(self):
36         if self.pageContent.customDirBox.isChecked():
37             self._enableCustomDir()
38         else:
39             self._disableCustomDir()
40         if self.pageContent.pathBox.isChecked() or (self.pageContent.customDirBox.isChecked() and self.pageContent.customDirList.count() != 0):
41             self.pageContent.doSearchButton.setEnabled(True)
42         else:
43             self.pageContent.doSearchButton.setEnabled(False)
44         
45     def _disableCustomDir(self):
46         self.pageContent.customDirList.setEnabled(False)
47         self.pageContent.addDirButton.setEnabled(False)
48         self.pageContent.removeDirButton.setEnabled(False)
49     
50     def _enableCustomDir(self):
51         self.pageContent.customDirList.setEnabled(True)
52         self.pageContent.addDirButton.setEnabled(True)
53         self.pageContent.removeDirButton.setEnabled(True)
54     
55     def _toSearchSubpage(self):
56         self.pageContent.pageSelector.setCurrentIndex(1)
57     
58     def _toSelectionSubpage(self):
59         self.pageContent.pageSelector.setCurrentIndex(0)
60     
61     def _connectSignals(self):
62         self.connect(self.pageContent.pathBox, SIGNAL("clicked()"), self._updateUi)
63         self.connect(self.pageContent.customDirBox, SIGNAL("clicked()"), self._updateUi)
64         self.connect(self.pageContent.searchButton, SIGNAL("clicked()"), self._toSearchSubpage)
65         self.connect(self.pageContent.cancelButton, SIGNAL("clicked()"), self._toSelectionSubpage)