eric6/Preferences/ConfigurationPages/EditorFilePage.py

Tue, 24 Sep 2019 18:46:24 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Tue, 24 Sep 2019 18:46:24 +0200
changeset 7263
c1af2e327675
parent 7229
53054eb5b15a
child 7301
6df711503ec0
permissions
-rw-r--r--

Continued to resolve code style issue M841.

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
6645
ad476851d7e0 Updated copyright for 2019.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6105
diff changeset
3 # Copyright (c) 2006 - 2019 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
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
10
3656
441956d8fce5 Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3515
diff changeset
11 from PyQt5.QtCore import pyqtSlot
441956d8fce5 Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3515
diff changeset
12 from PyQt5.QtWidgets import QListWidgetItem, QInputDialog, QLineEdit
441956d8fce5 Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3515
diff changeset
13 from PyQt5.Qsci import QsciScintilla
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
15 from E5Gui import E5MessageBox
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
16
12
1d8dd9706f46 First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7
diff changeset
17 from .ConfigurationPageBase import ConfigurationPageBase
1d8dd9706f46 First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7
diff changeset
18 from .Ui_EditorFilePage import Ui_EditorFilePage
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20 from Utilities import supportedCodecs
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21 import Preferences
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
23
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24 class EditorFilePage(ConfigurationPageBase, Ui_EditorFilePage):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 """
1353
e1c0af081a8e Added a syntax check while typing function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1196
diff changeset
26 Class implementing the Editor File Handling configuration page.
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 def __init__(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 Constructor
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 """
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
32 super(EditorFilePage, self).__init__()
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 self.setupUi(self)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34 self.setObjectName("EditorFilePage")
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
36 self.__showsOpenFilters = True
7263
c1af2e327675 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
37 self.openFileFilters = Preferences.getEditor(
c1af2e327675 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
38 "AdditionalOpenFilters")[:]
c1af2e327675 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
39 self.saveFileFilters = Preferences.getEditor(
c1af2e327675 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
40 "AdditionalSaveFilters")[:]
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
41 self.fileFiltersList.addItems(self.openFileFilters)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
42
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
43 self.__setDefaultFiltersLists()
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
45 self.defaultEncodingComboBox.addItems(sorted(supportedCodecs))
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46
5837
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
47 self.previewMarkdownHTMLFormatComboBox.addItems(
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
48 ["XHTML1", "HTML4", "HTML5"])
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
49 self.previewRestDocutilsHTMLFormatComboBox.addItems(
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
50 ["HTML4", "HTML5"])
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
51
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52 # set initial values
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
53 self.autosaveSlider.setValue(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
54 Preferences.getEditor("AutosaveInterval"))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
55 self.createBackupFileCheckBox.setChecked(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
56 Preferences.getEditor("CreateBackupFile"))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
57 self.defaultEncodingComboBox.setCurrentIndex(
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
58 self.defaultEncodingComboBox.findText(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59 Preferences.getEditor("DefaultEncoding")))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
60 self.advEncodingCheckBox.setChecked(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
61 Preferences.getEditor("AdvancedEncodingDetection"))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
62 self.warnFilesizeSpinBox.setValue(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
63 Preferences.getEditor("WarnFilesize"))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
64 self.clearBreakpointsCheckBox.setChecked(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
65 Preferences.getEditor("ClearBreaksOnClose"))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
66 self.automaticReopenCheckBox.setChecked(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
67 Preferences.getEditor("AutoReopen"))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
68 self.stripWhitespaceCheckBox.setChecked(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
69 Preferences.getEditor("StripTrailingWhitespace"))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
70 self.openFilesFilterComboBox.setCurrentIndex(
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
71 self.openFilesFilterComboBox.findText(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
72 Preferences.getEditor("DefaultOpenFilter")))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
73 self.saveFilesFilterComboBox.setCurrentIndex(
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
74 self.saveFilesFilterComboBox.findText(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
75 Preferences.getEditor("DefaultSaveFilter")))
564
b3d966393ba9 Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 13
diff changeset
76 self.automaticEolConversionCheckBox.setChecked(
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
77 Preferences.getEditor("AutomaticEOLConversion"))
6105
cbd34d558bd9 Finished implementing support for EditorConfig for the IDE editor component and the standalone editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
78 self.insertFinalNewlineCheckBox.setChecked(
cbd34d558bd9 Finished implementing support for EditorConfig for the IDE editor component and the standalone editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
79 Preferences.getEditor("InsertFinalNewline"))
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
80
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
81 eolMode = Preferences.getEditor("EOLMode")
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
82 if eolMode == QsciScintilla.EolWindows:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
83 self.crlfRadioButton.setChecked(True)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
84 elif eolMode == QsciScintilla.EolMac:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
85 self.crRadioButton.setChecked(True)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
86 elif eolMode == QsciScintilla.EolUnix:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
87 self.lfRadioButton.setChecked(True)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
88
2424
8fe1fdc174ab Added the capability to preview HTML, Mardown and ReST files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2408
diff changeset
89 self.previewHtmlExtensionsEdit.setText(
8fe1fdc174ab Added the capability to preview HTML, Mardown and ReST files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2408
diff changeset
90 " ".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
91 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
92 " ".join(
befeff46ec0f Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2964
diff changeset
93 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
94 self.previewRestExtensionsEdit.setText(
8fe1fdc174ab Added the capability to preview HTML, Mardown and ReST files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2408
diff changeset
95 " ".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
96 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
97 " ".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
98 self.previewRestSphinxCheckBox.setChecked(
307b09aae43b Added capability to use 'Sphinx' to preview ReST files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3656
diff changeset
99 Preferences.getEditor("PreviewRestUseSphinx"))
5837
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
100 self.previewMarkdownNLtoBreakCheckBox.setChecked(
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
101 Preferences.getEditor("PreviewMarkdownNLtoBR"))
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
102 index = self.previewMarkdownHTMLFormatComboBox.findText(
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
103 Preferences.getEditor("PreviewMarkdownHTMLFormat"))
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
104 self.previewMarkdownHTMLFormatComboBox.setCurrentIndex(index)
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
105 index = self.previewRestDocutilsHTMLFormatComboBox.findText(
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
106 Preferences.getEditor("PreviewRestDocutilsHTMLFormat"))
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
107 self.previewRestDocutilsHTMLFormatComboBox.setCurrentIndex(index)
1196
77da430b4080 Added an action to preview the file in the eric web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1131
diff changeset
108
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
109 def save(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
110 """
1353
e1c0af081a8e Added a syntax check while typing function.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 1196
diff changeset
111 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
112 """
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
113 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
114 "AutosaveInterval",
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
115 self.autosaveSlider.value())
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
116 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
117 "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
118 self.createBackupFileCheckBox.isChecked())
6
52e8c820d0dd Removed some superfluous unicode() calls.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
119 enc = self.defaultEncodingComboBox.currentText()
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
120 if not enc:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
121 enc = "utf-8"
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
122 Preferences.setEditor("DefaultEncoding", enc)
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
123 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
124 "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
125 self.advEncodingCheckBox.isChecked())
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
126 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
127 "WarnFilesize",
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
128 self.warnFilesizeSpinBox.value())
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
129 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
130 "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
131 self.clearBreakpointsCheckBox.isChecked())
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
132 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
133 "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
134 self.automaticReopenCheckBox.isChecked())
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
135 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
136 "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
137 self.stripWhitespaceCheckBox.isChecked())
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
138 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
139 "DefaultOpenFilter",
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
140 self.openFilesFilterComboBox.currentText())
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
141 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
142 "DefaultSaveFilter",
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
143 self.saveFilesFilterComboBox.currentText())
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
144 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
145 "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
146 self.automaticEolConversionCheckBox.isChecked())
6105
cbd34d558bd9 Finished implementing support for EditorConfig for the IDE editor component and the standalone editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
147 Preferences.setEditor(
cbd34d558bd9 Finished implementing support for EditorConfig for the IDE editor component and the standalone editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
148 "InsertFinalNewline",
cbd34d558bd9 Finished implementing support for EditorConfig for the IDE editor component and the standalone editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
149 self.insertFinalNewlineCheckBox.isChecked())
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
150
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
151 if self.crlfRadioButton.isChecked():
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
152 Preferences.setEditor("EOLMode", QsciScintilla.EolWindows)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
153 elif self.crRadioButton.isChecked():
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
154 Preferences.setEditor("EOLMode", QsciScintilla.EolMac)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
155 elif self.lfRadioButton.isChecked():
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
156 Preferences.setEditor("EOLMode", QsciScintilla.EolUnix)
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
157
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
158 self.__extractFileFilters()
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
159 Preferences.setEditor("AdditionalOpenFilters", self.openFileFilters)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
160 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
161
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
162 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
163 "PreviewHtmlFileNameExtensions",
3034
7ce719013078 Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3025
diff changeset
164 [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
165 self.previewHtmlExtensionsEdit.text().split()])
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
166 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
167 "PreviewMarkdownFileNameExtensions",
3034
7ce719013078 Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3025
diff changeset
168 [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
169 self.previewMarkdownExtensionsEdit.text().split()])
3025
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
170 Preferences.setEditor(
67064c71df21 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3020
diff changeset
171 "PreviewRestFileNameExtensions",
3034
7ce719013078 Fixed various coding style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3025
diff changeset
172 [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
173 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
174 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
175 "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
176 [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
177 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
178 Preferences.setEditor(
307b09aae43b Added capability to use 'Sphinx' to preview ReST files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3656
diff changeset
179 "PreviewRestUseSphinx",
307b09aae43b Added capability to use 'Sphinx' to preview ReST files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3656
diff changeset
180 self.previewRestSphinxCheckBox.isChecked())
5837
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
181 Preferences.setEditor(
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
182 "PreviewMarkdownNLtoBR",
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
183 self.previewMarkdownNLtoBreakCheckBox.isChecked())
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
184 Preferences.setEditor(
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
185 "PreviewMarkdownHTMLFormat",
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
186 self.previewMarkdownHTMLFormatComboBox.currentText())
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
187 Preferences.setEditor(
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
188 "PreviewRestDocutilsHTMLFormat",
9ef6a28f1694 - Exporter
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5599
diff changeset
189 self.previewRestDocutilsHTMLFormatComboBox.currentText())
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
190
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
191 def __setDefaultFiltersLists(self, keepSelection=False):
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
192 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
193 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
194
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
195 @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
196 if possible (boolean)
742
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 if keepSelection:
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
199 selectedOpenFilter = self.openFilesFilterComboBox.currentText()
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
200 selectedSaveFilter = self.saveFilesFilterComboBox.currentText()
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
201
2408
dc3a7c9d8f6e Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2302
diff changeset
202 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
203 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
204 False, withAdditional=False) + self.openFileFilters
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
205 openFileFiltersList.sort()
743
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
206 self.openFilesFilterComboBox.clear()
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
207 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
208 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
209 False, withAdditional=False) + self.saveFileFilters
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
210 saveFileFiltersList.sort()
743
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
211 self.saveFilesFilterComboBox.clear()
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
212 self.saveFilesFilterComboBox.addItems(saveFileFiltersList)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
213
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
214 if keepSelection:
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
215 self.openFilesFilterComboBox.setCurrentIndex(
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
216 self.openFilesFilterComboBox.findText(selectedOpenFilter))
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
217 self.saveFilesFilterComboBox.setCurrentIndex(
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
218 self.saveFilesFilterComboBox.findText(selectedSaveFilter))
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
219
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
220 def __extractFileFilters(self):
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
221 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
222 Private method to extract the file filters.
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
223 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
224 filters = []
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
225 for row in range(self.fileFiltersList.count()):
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
226 filters.append(self.fileFiltersList.item(row).text())
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
227 if self.__showsOpenFilters:
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
228 self.openFileFilters = filters
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
229 else:
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
230 self.saveFileFilters = filters
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
231
5599
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
232 def __checkFileFilter(self, fileFilter):
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
233 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
234 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
235
5599
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
236 @param fileFilter file filter pattern to check (string)
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
237 @return flag indicating validity (boolean)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
238 """
7263
c1af2e327675 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
239 if (
c1af2e327675 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
240 not self.__showsOpenFilters and
c1af2e327675 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
241 fileFilter.count("*") != 1
c1af2e327675 Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
242 ):
3020
542e97d4ecb3 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3010
diff changeset
243 E5MessageBox.critical(
542e97d4ecb3 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3010
diff changeset
244 self,
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
245 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
246 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
247 """ wildcard pattern. Yours contains {0}.""")
5599
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
248 .format(fileFilter.count("*")))
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
249 return False
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
250
5599
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
251 if fileFilter.count("*") == 0:
3020
542e97d4ecb3 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3010
diff changeset
252 E5MessageBox.critical(
542e97d4ecb3 Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3010
diff changeset
253 self,
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
254 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
255 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
256 """ wildcard pattern."""))
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
257 return False
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
258
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
259 return True
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
260
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
261 @pyqtSlot()
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
262 def on_addFileFilterButton_clicked(self):
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
263 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
264 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
265 """
5599
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
266 fileFilter, ok = QInputDialog.getText(
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
267 self,
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
268 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
269 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
270 QLineEdit.Normal)
5599
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
271 if ok and fileFilter:
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
272 if self.__checkFileFilter(fileFilter):
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
273 self.fileFiltersList.addItem(fileFilter)
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
274 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
275 self.__setDefaultFiltersLists(keepSelection=True)
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
276
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
277 @pyqtSlot()
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
278 def on_editFileFilterButton_clicked(self):
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
279 """
743
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
280 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
281 """
5599
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
282 fileFilter = self.fileFiltersList.currentItem().text()
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
283 fileFilter, ok = QInputDialog.getText(
743
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
284 self,
3190
a9a94491c4fd Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3160
diff changeset
285 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
286 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
287 QLineEdit.Normal,
5599
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
288 fileFilter)
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
289 if ok and fileFilter:
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
290 if self.__checkFileFilter(fileFilter):
033967644b1f Continued fixing code style issues detected by the extended style checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
291 self.fileFiltersList.currentItem().setText(fileFilter)
743
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
292 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
293 self.__setDefaultFiltersLists(keepSelection=True)
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
294
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
295 @pyqtSlot()
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
296 def on_deleteFileFilterButton_clicked(self):
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
297 """
743
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
298 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
299 """
743
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
300 self.fileFiltersList.takeItem(self.fileFiltersList.currentRow())
c58faf72e308 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 742
diff changeset
301 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
302 self.__setDefaultFiltersLists(keepSelection=True)
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
303
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
304 @pyqtSlot(bool)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
305 def on_openFiltersButton_toggled(self, checked):
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
306 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
307 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
308
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
309 @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
310 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
311 self.__extractFileFilters()
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
312 self.__showsOpenFilters = checked
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
313 self.fileFiltersList.clear()
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
314 if checked:
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
315 self.fileFiltersList.addItems(self.openFileFilters)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
316 else:
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
317 self.fileFiltersList.addItems(self.saveFileFilters)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
318
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
319 @pyqtSlot(QListWidgetItem, QListWidgetItem)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
320 def on_fileFiltersList_currentItemChanged(self, current, previous):
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
321 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
322 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
323
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
324 @param current new current item (QListWidgetItem)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
325 @param previous previous current item (QListWidgetItem)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
326 """
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
327 self.editFileFilterButton.setEnabled(current is not None)
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
328 self.deleteFileFilterButton.setEnabled(current is not None)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
329
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
330
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
331 def create(dlg):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
332 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
333 Module function to create the configuration page.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
334
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
335 @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
336 @return reference to the instantiated page (ConfigurationPageBase)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
337 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
338 page = EditorFilePage()
742
30fc855257e9 Continued implementing user defined file filters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 564
diff changeset
339 return page

eric ide

mercurial