Preferences/ConfigurationPages/HelpDocumentationPage.py

changeset 4576
a258569d44db
parent 4137
54c38749f153
child 4601
0017e7cb67ae
equal deleted inserted replaced
4575:464a6b049f89 4576:a258569d44db
7 Module implementing the Help Documentation configuration page. 7 Module implementing the Help Documentation configuration page.
8 """ 8 """
9 9
10 from __future__ import unicode_literals 10 from __future__ import unicode_literals
11 11
12 from PyQt5.QtCore import pyqtSlot, QUrl 12 from E5Gui.E5PathPicker import E5PathPickerModes
13
14 from E5Gui.E5Completers import E5FileCompleter
15 from E5Gui import E5FileDialog
16 13
17 from .ConfigurationPageBase import ConfigurationPageBase 14 from .ConfigurationPageBase import ConfigurationPageBase
18 from .Ui_HelpDocumentationPage import Ui_HelpDocumentationPage 15 from .Ui_HelpDocumentationPage import Ui_HelpDocumentationPage
19 16
20 import Preferences 17 import Preferences
21 import Utilities 18 import Utilities
22 import UI.PixmapCache
23 19
24 20
25 class HelpDocumentationPage(ConfigurationPageBase, Ui_HelpDocumentationPage): 21 class HelpDocumentationPage(ConfigurationPageBase, Ui_HelpDocumentationPage):
26 """ 22 """
27 Class implementing the Help Documentation configuration page. 23 Class implementing the Help Documentation configuration page.
32 """ 28 """
33 super(HelpDocumentationPage, self).__init__() 29 super(HelpDocumentationPage, self).__init__()
34 self.setupUi(self) 30 self.setupUi(self)
35 self.setObjectName("HelpDocumentationPage") 31 self.setObjectName("HelpDocumentationPage")
36 32
37 self.python2DocDirButton.setIcon(UI.PixmapCache.getIcon("open.png")) 33 self.python2DocDirPicker.setMode(E5PathPickerModes.OpenFileMode)
38 self.pythonDocDirButton.setIcon(UI.PixmapCache.getIcon("open.png")) 34 self.python2DocDirPicker.setFilters(self.tr(
39 self.qt4DocDirButton.setIcon(UI.PixmapCache.getIcon("open.png")) 35 "HTML Files (*.html *.htm);;"
40 self.qt5DocDirButton.setIcon(UI.PixmapCache.getIcon("open.png")) 36 "Compressed Help Files (*.chm);;"
41 self.pyqt4DocDirButton.setIcon(UI.PixmapCache.getIcon("open.png")) 37 "All Files (*)"))
42 self.pyqt5DocDirButton.setIcon(UI.PixmapCache.getIcon("open.png")) 38 self.pythonDocDirPicker.setMode(E5PathPickerModes.OpenFileMode)
43 self.pysideDocDirButton.setIcon(UI.PixmapCache.getIcon("open.png")) 39 self.pythonDocDirPicker.setFilters(self.tr(
44 40 "HTML Files (*.html *.htm);;"
45 self.python2DocDirCompleter = E5FileCompleter(self.python2DocDirEdit) 41 "Compressed Help Files (*.chm);;"
46 self.pythonDocDirCompleter = E5FileCompleter(self.pythonDocDirEdit) 42 "All Files (*)"))
47 self.qt4DocDirCompleter = E5FileCompleter(self.qt4DocDirEdit) 43 self.qt4DocDirPicker.setMode(E5PathPickerModes.OpenFileMode)
48 self.qt5DocDirCompleter = E5FileCompleter(self.qt5DocDirEdit) 44 self.qt4DocDirPicker.setFilters(self.tr(
49 self.pyqt4DocDirCompleter = E5FileCompleter(self.pyqt4DocDirEdit) 45 "HTML Files (*.html *.htm);;All Files (*)"))
50 self.pyqt5DocDirCompleter = E5FileCompleter(self.pyqt5DocDirEdit) 46 self.qt5DocDirPicker.setMode(E5PathPickerModes.OpenFileMode)
51 self.pysideDocDirCompleter = E5FileCompleter(self.pysideDocDirEdit) 47 self.qt5DocDirPicker.setFilters(self.tr(
48 "HTML Files (*.html *.htm);;All Files (*)"))
49 self.pyqt4DocDirPicker.setMode(E5PathPickerModes.OpenFileMode)
50 self.pyqt4DocDirPicker.setFilters(self.tr(
51 "HTML Files (*.html *.htm);;All Files (*)"))
52 self.pyqt5DocDirPicker.setMode(E5PathPickerModes.OpenFileMode)
53 self.pyqt5DocDirPicker.setFilters(self.tr(
54 "HTML Files (*.html *.htm);;All Files (*)"))
55 self.pysideDocDirPicker.setMode(E5PathPickerModes.OpenFileMode)
56 self.pysideDocDirPicker.setFilters(self.tr(
57 "HTML Files (*.html *.htm);;All Files (*)"))
52 58
53 try: 59 try:
54 import PyQt5 # __IGNORE_WARNING__ 60 import PyQt5 # __IGNORE_WARNING__
55 except ImportError: 61 except ImportError:
56 self.pyqt5Group.setEnabled(False) 62 self.pyqt5Group.setEnabled(False)
60 self.pysideGroup.setEnabled(True) 66 self.pysideGroup.setEnabled(True)
61 else: 67 else:
62 self.pysideGroup.setEnabled(False) 68 self.pysideGroup.setEnabled(False)
63 69
64 # set initial values 70 # set initial values
65 self.python2DocDirEdit.setText( 71 self.python2DocDirPicker.setText(
66 Preferences.getHelp("Python2DocDir")) 72 Preferences.getHelp("Python2DocDir"))
67 self.pythonDocDirEdit.setText( 73 self.pythonDocDirPicker.setText(
68 Preferences.getHelp("PythonDocDir")) 74 Preferences.getHelp("PythonDocDir"))
69 self.qt4DocDirEdit.setText( 75 self.qt4DocDirPicker.setText(
70 Preferences.getHelp("Qt4DocDir")) 76 Preferences.getHelp("Qt4DocDir"))
71 self.qt5DocDirEdit.setText( 77 self.qt5DocDirPicker.setText(
72 Preferences.getHelp("Qt5DocDir")) 78 Preferences.getHelp("Qt5DocDir"))
73 self.pyqt4DocDirEdit.setText( 79 self.pyqt4DocDirPicker.setText(
74 Preferences.getHelp("PyQt4DocDir")) 80 Preferences.getHelp("PyQt4DocDir"))
75 self.pyqt5DocDirEdit.setText( 81 self.pyqt5DocDirPicker.setText(
76 Preferences.getHelp("PyQt5DocDir")) 82 Preferences.getHelp("PyQt5DocDir"))
77 self.pysideDocDirEdit.setText( 83 self.pysideDocDirPicker.setText(
78 Preferences.getHelp("PySideDocDir")) 84 Preferences.getHelp("PySideDocDir"))
79 85
80 def save(self): 86 def save(self):
81 """ 87 """
82 Public slot to save the Help Documentation configuration. 88 Public slot to save the Help Documentation configuration.
83 """ 89 """
84 Preferences.setHelp( 90 Preferences.setHelp(
85 "Python2DocDir", 91 "Python2DocDir",
86 self.python2DocDirEdit.text()) 92 self.python2DocDirPicker.text())
87 Preferences.setHelp( 93 Preferences.setHelp(
88 "PythonDocDir", 94 "PythonDocDir",
89 self.pythonDocDirEdit.text()) 95 self.pythonDocDirPicker.text())
90 Preferences.setHelp( 96 Preferences.setHelp(
91 "Qt4DocDir", 97 "Qt4DocDir",
92 self.qt4DocDirEdit.text()) 98 self.qt4DocDirPicker.text())
93 Preferences.setHelp( 99 Preferences.setHelp(
94 "Qt5DocDir", 100 "Qt5DocDir",
95 self.qt5DocDirEdit.text()) 101 self.qt5DocDirPicker.text())
96 Preferences.setHelp( 102 Preferences.setHelp(
97 "PyQt4DocDir", 103 "PyQt4DocDir",
98 self.pyqt4DocDirEdit.text()) 104 self.pyqt4DocDirPicker.text())
99 Preferences.setHelp( 105 Preferences.setHelp(
100 "PyQt5DocDir", 106 "PyQt5DocDir",
101 self.pyqt5DocDirEdit.text()) 107 self.pyqt5DocDirPicker.text())
102 Preferences.setHelp( 108 Preferences.setHelp(
103 "PySideDocDir", 109 "PySideDocDir",
104 self.pysideDocDirEdit.text()) 110 self.pysideDocDirPicker.text())
105
106 @pyqtSlot()
107 def on_python2DocDirButton_clicked(self):
108 """
109 Private slot to select the Python 2 documentation directory.
110 """
111 entry = E5FileDialog.getOpenFileName(
112 self,
113 self.tr("Select Python 2 documentation entry"),
114 QUrl(self.python2DocDirEdit.text()).path(),
115 self.tr(
116 "HTML Files (*.html *.htm);;"
117 "Compressed Help Files (*.chm);;"
118 "All Files (*)"))
119
120 if entry:
121 self.python2DocDirEdit.setText(Utilities.toNativeSeparators(entry))
122
123 @pyqtSlot()
124 def on_pythonDocDirButton_clicked(self):
125 """
126 Private slot to select the Python 3 documentation directory.
127 """
128 entry = E5FileDialog.getOpenFileName(
129 self,
130 self.tr("Select Python 3 documentation entry"),
131 QUrl(self.pythonDocDirEdit.text()).path(),
132 self.tr(
133 "HTML Files (*.html *.htm);;"
134 "Compressed Help Files (*.chm);;"
135 "All Files (*)"))
136
137 if entry:
138 self.pythonDocDirEdit.setText(Utilities.toNativeSeparators(entry))
139
140 @pyqtSlot()
141 def on_qt4DocDirButton_clicked(self):
142 """
143 Private slot to select the Qt4 documentation directory.
144 """
145 entry = E5FileDialog.getOpenFileName(
146 self,
147 self.tr("Select Qt4 documentation entry"),
148 QUrl(self.qt4DocDirEdit.text()).path(),
149 self.tr("HTML Files (*.html *.htm);;All Files (*)"))
150
151 if entry:
152 self.qt4DocDirEdit.setText(Utilities.toNativeSeparators(entry))
153
154 @pyqtSlot()
155 def on_qt5DocDirButton_clicked(self):
156 """
157 Private slot to select the Qt5 documentation directory.
158 """
159 entry = E5FileDialog.getOpenFileName(
160 self,
161 self.tr("Select Qt5 documentation entry"),
162 QUrl(self.qt5DocDirEdit.text()).path(),
163 self.tr("HTML Files (*.html *.htm);;All Files (*)"))
164
165 if entry:
166 self.qt5DocDirEdit.setText(Utilities.toNativeSeparators(entry))
167
168 @pyqtSlot()
169 def on_pyqt4DocDirButton_clicked(self):
170 """
171 Private slot to select the PyQt5 documentation directory.
172 """
173 entry = E5FileDialog.getOpenFileName(
174 self,
175 self.tr("Select PyQt5 documentation entry"),
176 QUrl(self.pyqt4DocDirEdit.text()).path(),
177 self.tr("HTML Files (*.html *.htm);;All Files (*)"))
178
179 if entry:
180 self.pyqt4DocDirEdit.setText(Utilities.toNativeSeparators(entry))
181
182 @pyqtSlot()
183 def on_pyqt5DocDirButton_clicked(self):
184 """
185 Private slot to select the PyQt5 documentation directory.
186 """
187 entry = E5FileDialog.getOpenFileName(
188 self,
189 self.tr("Select PyQt5 documentation entry"),
190 QUrl(self.pyqt4DocDirEdit.text()).path(),
191 self.tr("HTML Files (*.html *.htm);;All Files (*)"))
192
193 if entry:
194 self.pyqt5DocDirEdit.setText(Utilities.toNativeSeparators(entry))
195
196 @pyqtSlot()
197 def on_pysideDocDirButton_clicked(self):
198 """
199 Private slot to select the PySide documentation directory.
200 """
201 entry = E5FileDialog.getOpenFileName(
202 self,
203 self.tr("Select PySide documentation entry"),
204 QUrl(self.pysideDocDirEdit.text()).path(),
205 self.tr("HTML Files (*.html *.htm);;All Files (*)"))
206
207 if entry:
208 self.pysideDocDirEdit.setText(Utilities.toNativeSeparators(entry))
209 111
210 112
211 def create(dlg): 113 def create(dlg):
212 """ 114 """
213 Module function to create the configuration page. 115 Module function to create the configuration page.

eric ide

mercurial