Preferences/ConfigurationPages/ProjectBrowserPage.py

changeset 945
8cd4d08fa9f6
parent 826
2e3e2055e715
child 1131
7781e396c903
equal deleted inserted replaced
944:1b59c4ba121e 945:8cd4d08fa9f6
18 ResourcesBrowserFlag, TranslationsBrowserFlag, InterfacesBrowserFlag, \ 18 ResourcesBrowserFlag, TranslationsBrowserFlag, InterfacesBrowserFlag, \
19 OthersBrowserFlag 19 OthersBrowserFlag
20 20
21 import Preferences 21 import Preferences
22 22
23
23 class ProjectBrowserPage(ConfigurationPageBase, Ui_ProjectBrowserPage): 24 class ProjectBrowserPage(ConfigurationPageBase, Ui_ProjectBrowserPage):
24 """ 25 """
25 Class implementing the Project Browser configuration page. 26 Class implementing the Project Browser configuration page.
26 """ 27 """
27 def __init__(self): 28 def __init__(self):
35 self.projectBrowserColours = {} 36 self.projectBrowserColours = {}
36 self.__currentProjectTypeIndex = 0 37 self.__currentProjectTypeIndex = 0
37 38
38 # set initial values 39 # set initial values
39 self.projectTypeCombo.addItem('', '') 40 self.projectTypeCombo.addItem('', '')
40 self.__projectBrowserFlags = {'' : 0} 41 self.__projectBrowserFlags = {'': 0}
41 try: 42 try:
42 projectTypes = e5App().getObject("Project").getProjectTypes() 43 projectTypes = e5App().getObject("Project").getProjectTypes()
43 for projectType in sorted(projectTypes.keys()): 44 for projectType in sorted(projectTypes.keys()):
44 self.projectTypeCombo.addItem(projectTypes[projectType], 45 self.projectTypeCombo.addItem(projectTypes[projectType],
45 projectType) 46 projectType)
46 self.__projectBrowserFlags[projectType] = \ 47 self.__projectBrowserFlags[projectType] = \
47 Preferences.getProjectBrowserFlags(projectType) 48 Preferences.getProjectBrowserFlags(projectType)
48 except KeyError: 49 except KeyError:
49 self.pbGroup.setEnabled(False) 50 self.pbGroup.setEnabled(False)
50 51
51 self.projectBrowserColours["Highlighted"] = \ 52 self.projectBrowserColours["Highlighted"] = \
52 self.initColour("Highlighted", self.pbHighlightedButton, 53 self.initColour("Highlighted", self.pbHighlightedButton,
53 Preferences.getProjectBrowserColour) 54 Preferences.getProjectBrowserColour)
54 55
55 self.followEditorCheckBox.setChecked( 56 self.followEditorCheckBox.setChecked(
56 Preferences.getProject("FollowEditor")) 57 Preferences.getProject("FollowEditor"))
57 self.hideGeneratedCheckBox.setChecked( 58 self.hideGeneratedCheckBox.setChecked(
62 Public slot to save the Project Browser configuration. 63 Public slot to save the Project Browser configuration.
63 """ 64 """
64 for key in list(self.projectBrowserColours.keys()): 65 for key in list(self.projectBrowserColours.keys()):
65 Preferences.setProjectBrowserColour(key, self.projectBrowserColours[key]) 66 Preferences.setProjectBrowserColour(key, self.projectBrowserColours[key])
66 67
67 Preferences.setProject("FollowEditor", 68 Preferences.setProject("FollowEditor",
68 self.followEditorCheckBox.isChecked()) 69 self.followEditorCheckBox.isChecked())
69 Preferences.setProject("HideGeneratedForms", 70 Preferences.setProject("HideGeneratedForms",
70 self.hideGeneratedCheckBox.isChecked()) 71 self.hideGeneratedCheckBox.isChecked())
71 72
72 if self.pbGroup.isEnabled(): 73 if self.pbGroup.isEnabled():
73 self.__storeProjectBrowserFlags( 74 self.__storeProjectBrowserFlags(
74 self.projectTypeCombo.itemData(self.__currentProjectTypeIndex)) 75 self.projectTypeCombo.itemData(self.__currentProjectTypeIndex))
77 Preferences.setProjectBrowserFlags(projectType, flags) 78 Preferences.setProjectBrowserFlags(projectType, flags)
78 79
79 @pyqtSlot() 80 @pyqtSlot()
80 def on_pbHighlightedButton_clicked(self): 81 def on_pbHighlightedButton_clicked(self):
81 """ 82 """
82 Private slot to set the colour for highlighted entries of the 83 Private slot to set the colour for highlighted entries of the
83 project others browser. 84 project others browser.
84 """ 85 """
85 self.projectBrowserColours["Highlighted"] = \ 86 self.projectBrowserColours["Highlighted"] = \
86 self.selectColour(self.pbHighlightedButton, 87 self.selectColour(self.pbHighlightedButton,
87 self.projectBrowserColours["Highlighted"]) 88 self.projectBrowserColours["Highlighted"])
88 89
89 def __storeProjectBrowserFlags(self, projectType): 90 def __storeProjectBrowserFlags(self, projectType):
90 """ 91 """
91 Private method to store the flags for the selected project type. 92 Private method to store the flags for the selected project type.
138 self.projectTypeCombo.itemData(self.__currentProjectTypeIndex)) 139 self.projectTypeCombo.itemData(self.__currentProjectTypeIndex))
139 self.__setProjectBrowsersCheckBoxes( 140 self.__setProjectBrowsersCheckBoxes(
140 self.projectTypeCombo.itemData(index)) 141 self.projectTypeCombo.itemData(index))
141 self.__currentProjectTypeIndex = index 142 self.__currentProjectTypeIndex = index
142 143
144
143 def create(dlg): 145 def create(dlg):
144 """ 146 """
145 Module function to create the configuration page. 147 Module function to create the configuration page.
146 148
147 @param dlg reference to the configuration dialog 149 @param dlg reference to the configuration dialog

eric ide

mercurial