Preferences/ConfigurationPages/EditorFilePage.py

Sun, 21 Dec 2014 15:36:59 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sun, 21 Dec 2014 15:36:59 +0100
changeset 3979
307b09aae43b
parent 3656
441956d8fce5
child 4021
195a471c327b
permissions
-rw-r--r--

Added capability to use 'Sphinx' to preview ReST files.

0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
3160
209a07d7e401 Updated copyright for 2014.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3038
diff changeset
3 # Copyright (c) 2006 - 2014 Detlev Offenbach <detlev@die-offenbachs.de>
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
1353
e1c0af081a8e Added a syntax check while typing function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1196
diff changeset
7 Module implementing the Editor File Handling configuration page.
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
3145
a9de05d4a22f # __IGNORE_WARNING__ added/ removed.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 3060
diff changeset
10 from __future__ import unicode_literals
2525
8b507a9a2d40 Script changes: Future import added, super calls modified and unicode behavior for str.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 2424
diff changeset
11
3656
441956d8fce5 Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3515
diff changeset
12 from PyQt5.QtCore import pyqtSlot
441956d8fce5 Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3515
diff changeset
13 from PyQt5.QtWidgets import QListWidgetItem, QInputDialog, QLineEdit
441956d8fce5 Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3515
diff changeset
14 from PyQt5.Qsci import QsciScintilla
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
16 from E5Gui import E5MessageBox
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
17
12
1d8dd9706f46 First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7
diff changeset
18 from .ConfigurationPageBase import ConfigurationPageBase
1d8dd9706f46 First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7
diff changeset
19 from .Ui_EditorFilePage import Ui_EditorFilePage
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21 from Utilities import supportedCodecs
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22 import Preferences
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
24
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 class EditorFilePage(ConfigurationPageBase, Ui_EditorFilePage):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 """
1353
e1c0af081a8e Added a syntax check while typing function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1196
diff changeset
27 Class implementing the Editor File Handling configuration page.
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29 def __init__(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 Constructor
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
32 """
2525
8b507a9a2d40 Script changes: Future import added, super calls modified and unicode behavior for str.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents: 2424
diff changeset
33 super(EditorFilePage, self).__init__()
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34 self.setupUi(self)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35 self.setObjectName("EditorFilePage")
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
36
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
37 self.__showsOpenFilters = True
3010
befeff46ec0f Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2964
diff changeset
38 self.openFileFilters = \
befeff46ec0f Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2964
diff changeset
39 Preferences.getEditor("AdditionalOpenFilters")[:]
befeff46ec0f Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2964
diff changeset
40 self.saveFileFilters = \
befeff46ec0f Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2964
diff changeset
41 Preferences.getEditor("AdditionalSaveFilters")[:]
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
42 self.fileFiltersList.addItems(self.openFileFilters)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
43
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
44 self.__setDefaultFiltersLists()
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
45
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46 self.defaultEncodingComboBox.addItems(sorted(supportedCodecs))
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48 # set initial values
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
49 self.autosaveSlider.setValue(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
50 Preferences.getEditor("AutosaveInterval"))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
51 self.createBackupFileCheckBox.setChecked(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52 Preferences.getEditor("CreateBackupFile"))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
53 self.defaultEncodingComboBox.setCurrentIndex(
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
54 self.defaultEncodingComboBox.findText(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
55 Preferences.getEditor("DefaultEncoding")))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
56 self.advEncodingCheckBox.setChecked(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57 Preferences.getEditor("AdvancedEncodingDetection"))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
58 self.warnFilesizeSpinBox.setValue(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59 Preferences.getEditor("WarnFilesize"))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
60 self.clearBreakpointsCheckBox.setChecked(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
61 Preferences.getEditor("ClearBreaksOnClose"))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
62 self.automaticReopenCheckBox.setChecked(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
63 Preferences.getEditor("AutoReopen"))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
64 self.stripWhitespaceCheckBox.setChecked(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
65 Preferences.getEditor("StripTrailingWhitespace"))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
66 self.openFilesFilterComboBox.setCurrentIndex(
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
67 self.openFilesFilterComboBox.findText(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
68 Preferences.getEditor("DefaultOpenFilter")))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
69 self.saveFilesFilterComboBox.setCurrentIndex(
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
70 self.saveFilesFilterComboBox.findText(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
71 Preferences.getEditor("DefaultSaveFilter")))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
72 self.automaticEolConversionCheckBox.setChecked(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
73 Preferences.getEditor("AutomaticEOLConversion"))
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
74
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
75 eolMode = Preferences.getEditor("EOLMode")
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
76 if eolMode == QsciScintilla.EolWindows:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
77 self.crlfRadioButton.setChecked(True)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
78 elif eolMode == QsciScintilla.EolMac:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
79 self.crRadioButton.setChecked(True)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
80 elif eolMode == QsciScintilla.EolUnix:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
81 self.lfRadioButton.setChecked(True)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
82
2424
8fe1fdc174ab Added the capability to preview HTML, Mardown and ReST files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2408
diff changeset
83 self.previewHtmlExtensionsEdit.setText(
8fe1fdc174ab Added the capability to preview HTML, Mardown and ReST files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2408
diff changeset
84 " ".join(Preferences.getEditor("PreviewHtmlFileNameExtensions")))
8fe1fdc174ab Added the capability to preview HTML, Mardown and ReST files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2408
diff changeset
85 self.previewMarkdownExtensionsEdit.setText(
3010
befeff46ec0f Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2964
diff changeset
86 " ".join(
befeff46ec0f Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2964
diff changeset
87 Preferences.getEditor("PreviewMarkdownFileNameExtensions")))
2424
8fe1fdc174ab Added the capability to preview HTML, Mardown and ReST files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2408
diff changeset
88 self.previewRestExtensionsEdit.setText(
8fe1fdc174ab Added the capability to preview HTML, Mardown and ReST files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2408
diff changeset
89 " ".join(Preferences.getEditor("PreviewRestFileNameExtensions")))
3458
64bbac483843 Refactored the previewer code to allow to add more previewers and started adding support for a QSS previewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3190
diff changeset
90 self.previewQssExtensionsEdit.setText(
64bbac483843 Refactored the previewer code to allow to add more previewers and started adding support for a QSS previewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3190
diff changeset
91 " ".join(Preferences.getEditor("PreviewQssFileNameExtensions")))
3979
307b09aae43b Added capability to use 'Sphinx' to preview ReST files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3656
diff changeset
92 self.previewRestSphinxCheckBox.setChecked(
307b09aae43b Added capability to use 'Sphinx' to preview ReST files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3656
diff changeset
93 Preferences.getEditor("PreviewRestUseSphinx"))
1196
77da430b4080 Added an action to preview the file in the eric web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1131
diff changeset
94
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
95 def save(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
96 """
1353
e1c0af081a8e Added a syntax check while typing function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1196
diff changeset
97 Public slot to save the Editor File Handling configuration.
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
98 """
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
99 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
100 "AutosaveInterval",
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
101 self.autosaveSlider.value())
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
102 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
103 "CreateBackupFile",
7
c679fb30c8f3 Change code dealing with QVariant (and QSettings) to use the PyQt4 QVariant v2 API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
104 self.createBackupFileCheckBox.isChecked())
6
52e8c820d0dd Removed some superfluous unicode() calls.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
105 enc = self.defaultEncodingComboBox.currentText()
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
106 if not enc:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
107 enc = "utf-8"
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
108 Preferences.setEditor("DefaultEncoding", enc)
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
109 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
110 "AdvancedEncodingDetection",
7
c679fb30c8f3 Change code dealing with QVariant (and QSettings) to use the PyQt4 QVariant v2 API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
111 self.advEncodingCheckBox.isChecked())
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
112 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
113 "WarnFilesize",
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
114 self.warnFilesizeSpinBox.value())
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
115 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
116 "ClearBreaksOnClose",
7
c679fb30c8f3 Change code dealing with QVariant (and QSettings) to use the PyQt4 QVariant v2 API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
117 self.clearBreakpointsCheckBox.isChecked())
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
118 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
119 "AutoReopen",
7
c679fb30c8f3 Change code dealing with QVariant (and QSettings) to use the PyQt4 QVariant v2 API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
120 self.automaticReopenCheckBox.isChecked())
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
121 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
122 "StripTrailingWhitespace",
7
c679fb30c8f3 Change code dealing with QVariant (and QSettings) to use the PyQt4 QVariant v2 API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
123 self.stripWhitespaceCheckBox.isChecked())
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
124 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
125 "DefaultOpenFilter",
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
126 self.openFilesFilterComboBox.currentText())
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
127 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
128 "DefaultSaveFilter",
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
129 self.saveFilesFilterComboBox.currentText())
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
130 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
131 "AutomaticEOLConversion",
7
c679fb30c8f3 Change code dealing with QVariant (and QSettings) to use the PyQt4 QVariant v2 API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6
diff changeset
132 self.automaticEolConversionCheckBox.isChecked())
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
133
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
134 if self.crlfRadioButton.isChecked():
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
135 Preferences.setEditor("EOLMode", QsciScintilla.EolWindows)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
136 elif self.crRadioButton.isChecked():
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
137 Preferences.setEditor("EOLMode", QsciScintilla.EolMac)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
138 elif self.lfRadioButton.isChecked():
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
139 Preferences.setEditor("EOLMode", QsciScintilla.EolUnix)
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
140
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
141 self.__extractFileFilters()
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
142 Preferences.setEditor("AdditionalOpenFilters", self.openFileFilters)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
143 Preferences.setEditor("AdditionalSaveFilters", self.saveFileFilters)
1196
77da430b4080 Added an action to preview the file in the eric web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1131
diff changeset
144
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
145 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
146 "PreviewHtmlFileNameExtensions",
3034
7ce719013078 Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3025
diff changeset
147 [ext.strip() for ext in
3010
befeff46ec0f Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2964
diff changeset
148 self.previewHtmlExtensionsEdit.text().split()])
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
149 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
150 "PreviewMarkdownFileNameExtensions",
3034
7ce719013078 Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3025
diff changeset
151 [ext.strip() for ext in
3010
befeff46ec0f Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2964
diff changeset
152 self.previewMarkdownExtensionsEdit.text().split()])
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
153 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
154 "PreviewRestFileNameExtensions",
3034
7ce719013078 Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3025
diff changeset
155 [ext.strip() for ext in
3010
befeff46ec0f Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2964
diff changeset
156 self.previewRestExtensionsEdit.text().split()])
3458
64bbac483843 Refactored the previewer code to allow to add more previewers and started adding support for a QSS previewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3190
diff changeset
157 Preferences.setEditor(
64bbac483843 Refactored the previewer code to allow to add more previewers and started adding support for a QSS previewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3190
diff changeset
158 "PreviewQssFileNameExtensions",
64bbac483843 Refactored the previewer code to allow to add more previewers and started adding support for a QSS previewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3190
diff changeset
159 [ext.strip() for ext in
64bbac483843 Refactored the previewer code to allow to add more previewers and started adding support for a QSS previewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3190
diff changeset
160 self.previewQssExtensionsEdit.text().split()])
3979
307b09aae43b Added capability to use 'Sphinx' to preview ReST files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3656
diff changeset
161 Preferences.setEditor(
307b09aae43b Added capability to use 'Sphinx' to preview ReST files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3656
diff changeset
162 "PreviewRestUseSphinx",
307b09aae43b Added capability to use 'Sphinx' to preview ReST files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3656
diff changeset
163 self.previewRestSphinxCheckBox.isChecked())
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
164
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
165 def __setDefaultFiltersLists(self, keepSelection=False):
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
166 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
167 Private slot to set the default file filter combo boxes.
746
d80c427636a4 Fixed an issue with the new file filter configuration code and corrected some source docu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 743
diff changeset
168
d80c427636a4 Fixed an issue with the new file filter configuration code and corrected some source docu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 743
diff changeset
169 @param keepSelection flag indicating to keep the current selection
d80c427636a4 Fixed an issue with the new file filter configuration code and corrected some source docu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 743
diff changeset
170 if possible (boolean)
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
171 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
172 if keepSelection:
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
173 selectedOpenFilter = self.openFilesFilterComboBox.currentText()
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
174 selectedSaveFilter = self.saveFilesFilterComboBox.currentText()
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
175
2408
dc3a7c9d8f6e Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
176 import QScintilla.Lexers
3010
befeff46ec0f Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2964
diff changeset
177 openFileFiltersList = QScintilla.Lexers.getOpenFileFiltersList(
befeff46ec0f Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2964
diff changeset
178 False, withAdditional=False) + self.openFileFilters
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
179 openFileFiltersList.sort()
743
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
180 self.openFilesFilterComboBox.clear()
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
181 self.openFilesFilterComboBox.addItems(openFileFiltersList)
3010
befeff46ec0f Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2964
diff changeset
182 saveFileFiltersList = QScintilla.Lexers.getSaveFileFiltersList(
befeff46ec0f Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2964
diff changeset
183 False, withAdditional=False) + self.saveFileFilters
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
184 saveFileFiltersList.sort()
743
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
185 self.saveFilesFilterComboBox.clear()
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
186 self.saveFilesFilterComboBox.addItems(saveFileFiltersList)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
187
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
188 if keepSelection:
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
189 self.openFilesFilterComboBox.setCurrentIndex(
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
190 self.openFilesFilterComboBox.findText(selectedOpenFilter))
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
191 self.saveFilesFilterComboBox.setCurrentIndex(
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
192 self.saveFilesFilterComboBox.findText(selectedSaveFilter))
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
193
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
194 def __extractFileFilters(self):
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
195 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
196 Private method to extract the file filters.
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
197 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
198 filters = []
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
199 for row in range(self.fileFiltersList.count()):
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
200 filters.append(self.fileFiltersList.item(row).text())
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
201 if self.__showsOpenFilters:
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
202 self.openFileFilters = filters
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
203 else:
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
204 self.saveFileFilters = filters
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
205
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
206 def __checkFileFilter(self, filter):
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
207 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
208 Private method to check a file filter for validity.
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
209
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
210 @param filter file filter pattern to check (string)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
211 @return flag indicating validity (boolean)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
212 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
213 if not self.__showsOpenFilters and \
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
214 filter.count("*") != 1:
3020
542e97d4ecb3 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3010
diff changeset
215 E5MessageBox.critical(
542e97d4ecb3 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3010
diff changeset
216 self,
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
217 self.tr("Add File Filter"),
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
218 self.tr("""A Save File Filter must contain exactly one"""
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
219 """ wildcard pattern. Yours contains {0}.""")
3038
7fe9a53280bd Fixed a bunch of indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3034
diff changeset
220 .format(filter.count("*")))
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
221 return False
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
222
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
223 if filter.count("*") == 0:
3020
542e97d4ecb3 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3010
diff changeset
224 E5MessageBox.critical(
542e97d4ecb3 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3010
diff changeset
225 self,
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
226 self.tr("Add File Filter"),
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
227 self.tr("""A File Filter must contain at least one"""
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
228 """ wildcard pattern."""))
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
229 return False
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
230
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
231 return True
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
232
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
233 @pyqtSlot()
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
234 def on_addFileFilterButton_clicked(self):
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
235 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
236 Private slot to add a file filter to the list.
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
237 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
238 filter, ok = QInputDialog.getText(
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
239 self,
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
240 self.tr("Add File Filter"),
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
241 self.tr("Enter the file filter entry:"),
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
242 QLineEdit.Normal)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
243 if ok and filter:
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
244 if self.__checkFileFilter(filter):
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
245 self.fileFiltersList.addItem(filter)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
246 self.__extractFileFilters()
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
247 self.__setDefaultFiltersLists(keepSelection=True)
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
248
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
249 @pyqtSlot()
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
250 def on_editFileFilterButton_clicked(self):
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
251 """
743
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
252 Private slot called to edit a file filter entry.
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
253 """
743
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
254 filter = self.fileFiltersList.currentItem().text()
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
255 filter, ok = QInputDialog.getText(
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
256 self,
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
257 self.tr("Add File Filter"),
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
258 self.tr("Enter the file filter entry:"),
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
259 QLineEdit.Normal,
743
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
260 filter)
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
261 if ok and filter:
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
262 if self.__checkFileFilter(filter):
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
263 self.fileFiltersList.currentItem().setText(filter)
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
264 self.__extractFileFilters()
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
265 self.__setDefaultFiltersLists(keepSelection=True)
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
266
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
267 @pyqtSlot()
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
268 def on_deleteFileFilterButton_clicked(self):
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
269 """
743
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
270 Private slot called to delete a file filter entry.
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
271 """
743
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
272 self.fileFiltersList.takeItem(self.fileFiltersList.currentRow())
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
273 self.__extractFileFilters()
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
274 self.__setDefaultFiltersLists(keepSelection=True)
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
275
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
276 @pyqtSlot(bool)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
277 def on_openFiltersButton_toggled(self, checked):
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
278 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
279 Private slot to switch the list of file filters.
746
d80c427636a4 Fixed an issue with the new file filter configuration code and corrected some source docu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 743
diff changeset
280
d80c427636a4 Fixed an issue with the new file filter configuration code and corrected some source docu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 743
diff changeset
281 @param checked flag indicating the check state of the button (boolean)
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
282 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
283 self.__extractFileFilters()
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
284 self.__showsOpenFilters = checked
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
285 self.fileFiltersList.clear()
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
286 if checked:
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
287 self.fileFiltersList.addItems(self.openFileFilters)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
288 else:
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
289 self.fileFiltersList.addItems(self.saveFileFilters)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
290
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
291 @pyqtSlot(QListWidgetItem, QListWidgetItem)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
292 def on_fileFiltersList_currentItemChanged(self, current, previous):
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
293 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
294 Private slot to set the state of the edit and delete buttons.
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
295
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
296 @param current new current item (QListWidgetItem)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
297 @param previous previous current item (QListWidgetItem)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
298 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
299 self.editFileFilterButton.setEnabled(current is not None)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
300 self.deleteFileFilterButton.setEnabled(current is not None)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
301
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
302
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
303 def create(dlg):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
304 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
305 Module function to create the configuration page.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
306
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
307 @param dlg reference to the configuration dialog
2964
84b65fb9e780 Continued correcting doc strings by using the new doc string checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2424
diff changeset
308 @return reference to the instantiated page (ConfigurationPageBase)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
309 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
310 page = EditorFilePage()
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
311 return page

eric ide

mercurial