18 |
18 |
19 class MultiProjectPage(ConfigurationPageBase, Ui_MultiProjectPage): |
19 class MultiProjectPage(ConfigurationPageBase, Ui_MultiProjectPage): |
20 """ |
20 """ |
21 Class implementing the Multi Project configuration page. |
21 Class implementing the Multi Project configuration page. |
22 """ |
22 """ |
|
23 |
23 def __init__(self): |
24 def __init__(self): |
24 """ |
25 """ |
25 Constructor |
26 Constructor |
26 """ |
27 """ |
27 super().__init__() |
28 super().__init__() |
28 self.setupUi(self) |
29 self.setupUi(self) |
29 self.setObjectName("MultiProjectPage") |
30 self.setObjectName("MultiProjectPage") |
30 |
31 |
31 self.workspacePicker.setMode(EricPathPickerModes.DIRECTORY_MODE) |
32 self.workspacePicker.setMode(EricPathPickerModes.DIRECTORY_MODE) |
32 |
33 |
33 # set initial values |
34 # set initial values |
34 self.openMasterAutomaticallyCheckBox.setChecked( |
35 self.openMasterAutomaticallyCheckBox.setChecked( |
35 Preferences.getMultiProject("OpenMasterAutomatically")) |
36 Preferences.getMultiProject("OpenMasterAutomatically") |
|
37 ) |
36 self.multiProjectTimestampCheckBox.setChecked( |
38 self.multiProjectTimestampCheckBox.setChecked( |
37 Preferences.getMultiProject("TimestampFile")) |
39 Preferences.getMultiProject("TimestampFile") |
|
40 ) |
38 self.multiProjectRecentSpinBox.setValue( |
41 self.multiProjectRecentSpinBox.setValue( |
39 Preferences.getMultiProject("RecentNumber")) |
42 Preferences.getMultiProject("RecentNumber") |
|
43 ) |
40 self.workspacePicker.setText( |
44 self.workspacePicker.setText( |
41 Utilities.toNativeSeparators( |
45 Utilities.toNativeSeparators( |
42 Preferences.getMultiProject("Workspace") or |
46 Preferences.getMultiProject("Workspace") or Utilities.getHomeDir() |
43 Utilities.getHomeDir())) |
47 ) |
44 |
48 ) |
|
49 |
45 def save(self): |
50 def save(self): |
46 """ |
51 """ |
47 Public slot to save the Project configuration. |
52 Public slot to save the Project configuration. |
48 """ |
53 """ |
49 Preferences.setMultiProject( |
54 Preferences.setMultiProject( |
50 "OpenMasterAutomatically", |
55 "OpenMasterAutomatically", self.openMasterAutomaticallyCheckBox.isChecked() |
51 self.openMasterAutomaticallyCheckBox.isChecked()) |
56 ) |
52 Preferences.setMultiProject( |
57 Preferences.setMultiProject( |
53 "TimestampFile", |
58 "TimestampFile", self.multiProjectTimestampCheckBox.isChecked() |
54 self.multiProjectTimestampCheckBox.isChecked()) |
59 ) |
55 Preferences.setMultiProject( |
60 Preferences.setMultiProject( |
56 "RecentNumber", |
61 "RecentNumber", self.multiProjectRecentSpinBox.value() |
57 self.multiProjectRecentSpinBox.value()) |
62 ) |
58 Preferences.setMultiProject( |
63 Preferences.setMultiProject("Workspace", self.workspacePicker.text()) |
59 "Workspace", |
64 |
60 self.workspacePicker.text()) |
|
61 |
|
62 |
65 |
63 def create(dlg): |
66 def create(dlg): |
64 """ |
67 """ |
65 Module function to create the configuration page. |
68 Module function to create the configuration page. |
66 |
69 |
67 @param dlg reference to the configuration dialog |
70 @param dlg reference to the configuration dialog |
68 @return reference to the instantiated page (ConfigurationPageBase) |
71 @return reference to the instantiated page (ConfigurationPageBase) |
69 """ |
72 """ |
70 page = MultiProjectPage() |
73 page = MultiProjectPage() |
71 return page |
74 return page |