|
1 # -*- coding: utf-8 -*- |
|
2 |
|
3 # Copyright (c) 2006 - 2022 Detlev Offenbach <detlev@die-offenbachs.de> |
|
4 # |
|
5 |
|
6 """ |
|
7 Module implementing the Project configuration page. |
|
8 """ |
|
9 |
|
10 from .ConfigurationPageBase import ConfigurationPageBase |
|
11 from .Ui_ProjectPage import Ui_ProjectPage |
|
12 |
|
13 import Preferences |
|
14 |
|
15 |
|
16 class ProjectPage(ConfigurationPageBase, Ui_ProjectPage): |
|
17 """ |
|
18 Class implementing the Project configuration page. |
|
19 """ |
|
20 def __init__(self): |
|
21 """ |
|
22 Constructor |
|
23 """ |
|
24 super().__init__() |
|
25 self.setupUi(self) |
|
26 self.setObjectName("ProjectPage") |
|
27 |
|
28 # set initial values |
|
29 self.projectSearchNewFilesRecursiveCheckBox.setChecked( |
|
30 Preferences.getProject("SearchNewFilesRecursively")) |
|
31 self.projectSearchNewFilesCheckBox.setChecked( |
|
32 Preferences.getProject("SearchNewFiles")) |
|
33 self.projectAutoIncludeNewFilesCheckBox.setChecked( |
|
34 Preferences.getProject("AutoIncludeNewFiles")) |
|
35 self.projectLoadSessionCheckBox.setChecked( |
|
36 Preferences.getProject("AutoLoadSession")) |
|
37 self.projectSaveSessionCheckBox.setChecked( |
|
38 Preferences.getProject("AutoSaveSession")) |
|
39 self.projectSessionAllBpCheckBox.setChecked( |
|
40 Preferences.getProject("SessionAllBreakpoints")) |
|
41 self.projectLoadDebugPropertiesCheckBox.setChecked( |
|
42 Preferences.getProject("AutoLoadDbgProperties")) |
|
43 self.projectSaveDebugPropertiesCheckBox.setChecked( |
|
44 Preferences.getProject("AutoSaveDbgProperties")) |
|
45 self.projectAutoCompileFormsCheckBox.setChecked( |
|
46 Preferences.getProject("AutoCompileForms")) |
|
47 self.projectAutoCompileResourcesCheckBox.setChecked( |
|
48 Preferences.getProject("AutoCompileResources")) |
|
49 self.projectAutoMakeCheckBox.setChecked( |
|
50 Preferences.getProject("AutoExecuteMake")) |
|
51 self.projectTimestampCheckBox.setChecked( |
|
52 Preferences.getProject("TimestampFile")) |
|
53 self.projectRecentSpinBox.setValue( |
|
54 Preferences.getProject("RecentNumber")) |
|
55 self.pythonVariantCheckBox.setChecked( |
|
56 Preferences.getProject("DeterminePyFromProject")) |
|
57 self.autosaveTasksCheckBox.setChecked( |
|
58 Preferences.getProject("TasksProjectAutoSave")) |
|
59 self.rescanTasksCheckBox.setChecked( |
|
60 Preferences.getProject("TasksProjectRescanOnOpen")) |
|
61 self.restartShellCheckBox.setChecked( |
|
62 Preferences.getProject("RestartShellForProject")) |
|
63 |
|
64 def save(self): |
|
65 """ |
|
66 Public slot to save the Project configuration. |
|
67 """ |
|
68 Preferences.setProject( |
|
69 "SearchNewFilesRecursively", |
|
70 self.projectSearchNewFilesRecursiveCheckBox.isChecked()) |
|
71 Preferences.setProject( |
|
72 "SearchNewFiles", |
|
73 self.projectSearchNewFilesCheckBox.isChecked()) |
|
74 Preferences.setProject( |
|
75 "AutoIncludeNewFiles", |
|
76 self.projectAutoIncludeNewFilesCheckBox.isChecked()) |
|
77 Preferences.setProject( |
|
78 "AutoLoadSession", |
|
79 self.projectLoadSessionCheckBox.isChecked()) |
|
80 Preferences.setProject( |
|
81 "AutoSaveSession", |
|
82 self.projectSaveSessionCheckBox.isChecked()) |
|
83 Preferences.setProject( |
|
84 "SessionAllBreakpoints", |
|
85 self.projectSessionAllBpCheckBox.isChecked()) |
|
86 Preferences.setProject( |
|
87 "AutoLoadDbgProperties", |
|
88 self.projectLoadDebugPropertiesCheckBox.isChecked()) |
|
89 Preferences.setProject( |
|
90 "AutoSaveDbgProperties", |
|
91 self.projectSaveDebugPropertiesCheckBox.isChecked()) |
|
92 Preferences.setProject( |
|
93 "AutoCompileForms", |
|
94 self.projectAutoCompileFormsCheckBox.isChecked()) |
|
95 Preferences.setProject( |
|
96 "AutoCompileResources", |
|
97 self.projectAutoCompileResourcesCheckBox.isChecked()) |
|
98 Preferences.setProject( |
|
99 "AutoExecuteMake", |
|
100 self.projectAutoMakeCheckBox.isChecked()) |
|
101 Preferences.setProject( |
|
102 "TimestampFile", |
|
103 self.projectTimestampCheckBox.isChecked()) |
|
104 Preferences.setProject( |
|
105 "RecentNumber", |
|
106 self.projectRecentSpinBox.value()) |
|
107 Preferences.setProject( |
|
108 "DeterminePyFromProject", |
|
109 self.pythonVariantCheckBox.isChecked()) |
|
110 Preferences.setProject( |
|
111 "TasksProjectAutoSave", |
|
112 self.autosaveTasksCheckBox.isChecked()) |
|
113 Preferences.setProject( |
|
114 "TasksProjectRescanOnOpen", |
|
115 self.rescanTasksCheckBox.isChecked()) |
|
116 Preferences.setProject( |
|
117 "RestartShellForProject", |
|
118 self.restartShellCheckBox.isChecked()) |
|
119 |
|
120 |
|
121 def create(dlg): |
|
122 """ |
|
123 Module function to create the configuration page. |
|
124 |
|
125 @param dlg reference to the configuration dialog |
|
126 @return reference to the instantiated page (ConfigurationPageBase) |
|
127 """ |
|
128 page = ProjectPage() |
|
129 return page |