eric7/Preferences/ConfigurationPages/MultiProjectPage.py

branch
eric7
changeset 8312
800c432b34c8
parent 8218
7c09585bd960
child 8327
666c2b81cbb7
equal deleted inserted replaced
8311:4e8b98454baa 8312:800c432b34c8
1 # -*- coding: utf-8 -*-
2
3 # Copyright (c) 2008 - 2021 Detlev Offenbach <detlev@die-offenbachs.de>
4 #
5
6 """
7 Module implementing the Multi Project configuration page.
8 """
9
10 from .ConfigurationPageBase import ConfigurationPageBase
11 from .Ui_MultiProjectPage import Ui_MultiProjectPage
12
13 from E5Gui.E5PathPicker import E5PathPickerModes
14
15 import Preferences
16 import Utilities
17
18
19 class MultiProjectPage(ConfigurationPageBase, Ui_MultiProjectPage):
20 """
21 Class implementing the Multi Project configuration page.
22 """
23 def __init__(self):
24 """
25 Constructor
26 """
27 super().__init__()
28 self.setupUi(self)
29 self.setObjectName("MultiProjectPage")
30
31 self.workspacePicker.setMode(E5PathPickerModes.DirectoryMode)
32
33 # set initial values
34 self.openMasterAutomaticallyCheckBox.setChecked(
35 Preferences.getMultiProject("OpenMasterAutomatically"))
36 self.multiProjectTimestampCheckBox.setChecked(
37 Preferences.getMultiProject("TimestampFile"))
38 self.multiProjectRecentSpinBox.setValue(
39 Preferences.getMultiProject("RecentNumber"))
40 self.workspacePicker.setText(
41 Utilities.toNativeSeparators(
42 Preferences.getMultiProject("Workspace") or
43 Utilities.getHomeDir()))
44
45 def save(self):
46 """
47 Public slot to save the Project configuration.
48 """
49 Preferences.setMultiProject(
50 "OpenMasterAutomatically",
51 self.openMasterAutomaticallyCheckBox.isChecked())
52 Preferences.setMultiProject(
53 "TimestampFile",
54 self.multiProjectTimestampCheckBox.isChecked())
55 Preferences.setMultiProject(
56 "RecentNumber",
57 self.multiProjectRecentSpinBox.value())
58 Preferences.setMultiProject(
59 "Workspace",
60 self.workspacePicker.text())
61
62
63 def create(dlg):
64 """
65 Module function to create the configuration page.
66
67 @param dlg reference to the configuration dialog
68 @return reference to the instantiated page (ConfigurationPageBase)
69 """
70 page = MultiProjectPage()
71 return page

eric ide

mercurial