Sat, 22 May 2021 11:14:43 +0200
Removed for writing old style XML files and renamed E5XML to EricXML.
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 | |
7923
91e843545d9a
Updated copyright for 2021.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7780
diff
changeset
|
3 | # Copyright (c) 2006 - 2021 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 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing the Editor Highlighting Styles configuration page. |
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 | |
8022
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
10 | import os |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
11 | |
8318
962bce857696
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8314
diff
changeset
|
12 | from PyQt6.QtCore import pyqtSlot, Qt, QFileInfo, QFile, QIODevice |
962bce857696
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8314
diff
changeset
|
13 | from PyQt6.QtGui import QPalette, QFont, QColor |
962bce857696
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8314
diff
changeset
|
14 | from PyQt6.QtWidgets import ( |
7263
c1af2e327675
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
15 | QColorDialog, QFontDialog, QInputDialog, QMenu, QTreeWidgetItem, QDialog |
c1af2e327675
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
16 | ) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17 | |
12
1d8dd9706f46
First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
0
diff
changeset
|
18 | from .ConfigurationPageBase import ConfigurationPageBase |
1d8dd9706f46
First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
0
diff
changeset
|
19 | from .Ui_EditorHighlightingStylesPage import Ui_EditorHighlightingStylesPage |
6864
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
20 | from ..SubstyleDefinitionDialog import SubstyleDefinitionDialog |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | |
882
34b86be88bf0
Redid the native file dialog code to be future proof.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
880
diff
changeset
|
22 | from E5Gui import E5MessageBox, E5FileDialog |
537
72b32daeb8d6
Continued replacing QMessageBox methods with own methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
500
diff
changeset
|
23 | |
6864
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
24 | import UI.PixmapCache |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
25 | |
4698
61c0aef6a570
Added capability to select only from monospaced fonts on the highlighters styles page (for PyQt5 only).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4675
diff
changeset
|
26 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
27 | class EditorHighlightingStylesPage(ConfigurationPageBase, |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
28 | Ui_EditorHighlightingStylesPage): |
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 | Class implementing the Editor Highlighting Styles configuration page. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
31 | """ |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
32 | FAMILYONLY = 0 |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
33 | SIZEONLY = 1 |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
34 | FAMILYANDSIZE = 2 |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
35 | FONT = 99 |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
36 | |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
37 | StyleRole = Qt.ItemDataRole.UserRole + 1 |
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
38 | SubstyleRole = Qt.ItemDataRole.UserRole + 2 |
6854
f4dd76230eea
PreferencesLexer, EditorHighlightingPage: got rid of the 'styles' and 'ind2style' lists (that was very old style programming).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6853
diff
changeset
|
39 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
40 | def __init__(self, lexers): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
41 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
42 | Constructor |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
43 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
44 | @param lexers reference to the lexers dictionary |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
45 | """ |
8218
7c09585bd960
Applied some more code simplifications suggested by the new Simplify checker (super(Foo, self) => super()).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8151
diff
changeset
|
46 | super().__init__() |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
47 | self.setupUi(self) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
48 | self.setObjectName("EditorHighlightingStylesPage") |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
49 | |
6878
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
50 | self.defaultSubstylesButton.setIcon(UI.PixmapCache.getIcon("editUndo")) |
6864
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
51 | self.addSubstyleButton.setIcon(UI.PixmapCache.getIcon("plus")) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
52 | self.deleteSubstyleButton.setIcon(UI.PixmapCache.getIcon("minus")) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
53 | self.editSubstyleButton.setIcon(UI.PixmapCache.getIcon("edit")) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
54 | self.copySubstyleButton.setIcon(UI.PixmapCache.getIcon("editCopy")) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
55 | |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
56 | self.__fontButtonMenu = QMenu() |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
57 | act = self.__fontButtonMenu.addAction(self.tr("Font")) |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
58 | act.setData(self.FONT) |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
59 | self.__fontButtonMenu.addSeparator() |
3010
befeff46ec0f
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2964
diff
changeset
|
60 | act = self.__fontButtonMenu.addAction( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
61 | self.tr("Family and Size only")) |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
62 | act.setData(self.FAMILYANDSIZE) |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
63 | act = self.__fontButtonMenu.addAction(self.tr("Family only")) |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
64 | act.setData(self.FAMILYONLY) |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
65 | act = self.__fontButtonMenu.addAction(self.tr("Size only")) |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
66 | act.setData(self.SIZEONLY) |
500
c3abc7895a01
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
454
diff
changeset
|
67 | self.__fontButtonMenu.triggered.connect(self.__fontButtonMenuTriggered) |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
68 | self.fontButton.setMenu(self.__fontButtonMenu) |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
69 | |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
70 | self.__allFontsButtonMenu = QMenu() |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
71 | act = self.__allFontsButtonMenu.addAction(self.tr("Font")) |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
72 | act.setData(self.FONT) |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
73 | self.__allFontsButtonMenu.addSeparator() |
3010
befeff46ec0f
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2964
diff
changeset
|
74 | act = self.__allFontsButtonMenu.addAction( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
75 | self.tr("Family and Size only")) |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
76 | act.setData(self.FAMILYANDSIZE) |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
77 | act = self.__allFontsButtonMenu.addAction(self.tr("Family only")) |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
78 | act.setData(self.FAMILYONLY) |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
79 | act = self.__allFontsButtonMenu.addAction(self.tr("Size only")) |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
80 | act.setData(self.SIZEONLY) |
3010
befeff46ec0f
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2964
diff
changeset
|
81 | self.__allFontsButtonMenu.triggered.connect( |
befeff46ec0f
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2964
diff
changeset
|
82 | self.__allFontsButtonMenuTriggered) |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
83 | self.allFontsButton.setMenu(self.__allFontsButtonMenu) |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
84 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
85 | self.lexer = None |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
86 | self.lexers = lexers |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
87 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
88 | # set initial values |
5427
614e88cfbd84
Added some eye candy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
89 | import QScintilla.Lexers |
12
1d8dd9706f46
First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
0
diff
changeset
|
90 | languages = sorted([''] + list(self.lexers.keys())) |
5427
614e88cfbd84
Added some eye candy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
91 | for language in languages: |
614e88cfbd84
Added some eye candy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
92 | self.lexerLanguageComboBox.addItem( |
614e88cfbd84
Added some eye candy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
93 | QScintilla.Lexers.getLanguageIcon(language, False), |
614e88cfbd84
Added some eye candy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
94 | language) |
8151
8c1445825e7b
Changed code to not use QComboBox.activated[str] and QComboBoc.highlighted[str] signals but the int variants instead.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8143
diff
changeset
|
95 | self.on_lexerLanguageComboBox_activated(0) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
96 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
97 | def save(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
98 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
99 | Public slot to save the Editor Highlighting Styles configuration. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
100 | """ |
12
1d8dd9706f46
First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
0
diff
changeset
|
101 | for lexer in list(self.lexers.values()): |
6853
0922aa829e5e
PreferencesLexer: started to prepare it for handling of sub-style aware lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6645
diff
changeset
|
102 | lexer.writeSettings() |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
103 | |
8151
8c1445825e7b
Changed code to not use QComboBox.activated[str] and QComboBoc.highlighted[str] signals but the int variants instead.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8143
diff
changeset
|
104 | @pyqtSlot(int) |
8c1445825e7b
Changed code to not use QComboBox.activated[str] and QComboBoc.highlighted[str] signals but the int variants instead.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8143
diff
changeset
|
105 | def on_lexerLanguageComboBox_activated(self, index): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
106 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
107 | Private slot to fill the style combo of the source page. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
108 | |
8151
8c1445825e7b
Changed code to not use QComboBox.activated[str] and QComboBoc.highlighted[str] signals but the int variants instead.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8143
diff
changeset
|
109 | @param index index of the selected entry |
8c1445825e7b
Changed code to not use QComboBox.activated[str] and QComboBoc.highlighted[str] signals but the int variants instead.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8143
diff
changeset
|
110 | @type int |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
111 | """ |
8151
8c1445825e7b
Changed code to not use QComboBox.activated[str] and QComboBoc.highlighted[str] signals but the int variants instead.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8143
diff
changeset
|
112 | language = self.lexerLanguageComboBox.itemText(index) |
8c1445825e7b
Changed code to not use QComboBox.activated[str] and QComboBoc.highlighted[str] signals but the int variants instead.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8143
diff
changeset
|
113 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
114 | self.styleElementList.clear() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
115 | self.styleGroup.setEnabled(False) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
116 | self.lexer = None |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
117 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
118 | if not language: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
119 | return |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
120 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
121 | try: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
122 | self.lexer = self.lexers[language] |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
123 | except KeyError: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
124 | return |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
125 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
126 | self.styleGroup.setEnabled(True) |
6854
f4dd76230eea
PreferencesLexer, EditorHighlightingPage: got rid of the 'styles' and 'ind2style' lists (that was very old style programming).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6853
diff
changeset
|
127 | for description, styleNo, subStyleNo in self.lexer.getStyles(): |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
128 | if subStyleNo >= 0: |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
129 | parent = self.styleElementList.findItems( |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
130 | self.lexer.description(styleNo), |
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
131 | Qt.MatchFlag.MatchExactly)[0] |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
132 | parent.setExpanded(True) |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
133 | else: |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
134 | parent = self.styleElementList |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
135 | itm = QTreeWidgetItem(parent, [description]) |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
136 | itm.setData(0, self.StyleRole, styleNo) |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
137 | itm.setData(0, self.SubstyleRole, subStyleNo) |
3103
451f60e70434
Made the editor highlighting styles page more colorful (i.e. show the colors and fonts in line).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3038
diff
changeset
|
138 | self.__styleAllItems() |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
139 | self.styleElementList.setCurrentItem( |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
140 | self.styleElementList.topLevelItem(0)) |
6854
f4dd76230eea
PreferencesLexer, EditorHighlightingPage: got rid of the 'styles' and 'ind2style' lists (that was very old style programming).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6853
diff
changeset
|
141 | |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
142 | def __stylesForItem(self, itm): |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
143 | """ |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
144 | Private method to get the style and sub-style number of the given item. |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
145 | |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
146 | @param itm reference to the item to extract the styles from |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
147 | @type QTreeWidgetItem |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
148 | @return tuple containing the style and sub-style numbers |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
149 | @rtype tuple of (int, int) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
150 | """ |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
151 | style = itm.data(0, self.StyleRole) |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
152 | substyle = itm.data(0, self.SubstyleRole) |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
153 | |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
154 | return (style, substyle) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
155 | |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
156 | def __currentStyles(self): |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
157 | """ |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
158 | Private method to get the styles of the current item. |
6855
4d80c8cc99a1
SubstyledLexer: continued implementing the getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6854
diff
changeset
|
159 | |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
160 | @return tuple containing the style and sub-style numbers |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
161 | @rtype tuple of (int, int) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
162 | """ |
6867
97e86d2426a9
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6864
diff
changeset
|
163 | itm = self.styleElementList.currentItem() |
8234
fcb6b4b96274
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator) (batch 2).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8218
diff
changeset
|
164 | # return default style, if no current item |
fcb6b4b96274
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator) (batch 2).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8218
diff
changeset
|
165 | styles = (0, -1) if itm is None else self.__stylesForItem(itm) |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
166 | |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
167 | return styles |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
168 | |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
169 | def __styleOneItem(self, item, style, substyle): |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
170 | """ |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
171 | Private method to style one item of the style element list. |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
172 | |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
173 | @param item reference to the item to be styled |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
174 | @type QTreeWidgetItem |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
175 | @param style base style number |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
176 | @type int |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
177 | @param substyle sub-style number |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
178 | @type int |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
179 | """ |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
180 | colour = self.lexer.color(style, substyle) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
181 | paper = self.lexer.paper(style, substyle) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
182 | font = self.lexer.font(style, substyle) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
183 | eolfill = self.lexer.eolFill(style, substyle) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
184 | |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
185 | item.setFont(0, font) |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
186 | item.setBackground(0, paper) |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
187 | item.setForeground(0, colour) |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
188 | if eolfill: |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
189 | item.setCheckState(0, Qt.CheckState.Checked) |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
190 | else: |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
191 | item.setCheckState(0, Qt.CheckState.Unchecked) |
6855
4d80c8cc99a1
SubstyledLexer: continued implementing the getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6854
diff
changeset
|
192 | |
3103
451f60e70434
Made the editor highlighting styles page more colorful (i.e. show the colors and fonts in line).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3038
diff
changeset
|
193 | def __styleAllItems(self): |
451f60e70434
Made the editor highlighting styles page more colorful (i.e. show the colors and fonts in line).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3038
diff
changeset
|
194 | """ |
451f60e70434
Made the editor highlighting styles page more colorful (i.e. show the colors and fonts in line).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3038
diff
changeset
|
195 | Private method to style all items of the style element list. |
451f60e70434
Made the editor highlighting styles page more colorful (i.e. show the colors and fonts in line).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3038
diff
changeset
|
196 | """ |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
197 | itm = self.styleElementList.topLevelItem(0) |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
198 | while itm is not None: |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
199 | style, substyle = self.__stylesForItem(itm) |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
200 | self.__styleOneItem(itm, style, substyle) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
201 | itm = self.styleElementList.itemBelow(itm) |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
202 | |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
203 | @pyqtSlot(QTreeWidgetItem, QTreeWidgetItem) |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
204 | def on_styleElementList_currentItemChanged(self, current, previous): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
205 | """ |
6854
f4dd76230eea
PreferencesLexer, EditorHighlightingPage: got rid of the 'styles' and 'ind2style' lists (that was very old style programming).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6853
diff
changeset
|
206 | Private method to handle a change of the current row. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
207 | |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
208 | @param current reference to the current item |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
209 | @type QTreeWidgetItem |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
210 | @param previous reference to the previous item |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
211 | @type QTreeWidgetItem |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
212 | """ |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
213 | if current is None: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
214 | return |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
215 | |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
216 | style, substyle = self.__stylesForItem(current) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
217 | colour = self.lexer.color(style, substyle) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
218 | paper = self.lexer.paper(style, substyle) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
219 | eolfill = self.lexer.eolFill(style, substyle) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
220 | font = self.lexer.font(style, substyle) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
221 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
222 | self.sampleText.setFont(font) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
223 | pl = self.sampleText.palette() |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
224 | pl.setColor(QPalette.ColorRole.Text, colour) |
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
225 | pl.setColor(QPalette.ColorRole.Base, paper) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
226 | self.sampleText.setPalette(pl) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
227 | self.sampleText.repaint() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
228 | self.eolfillCheckBox.setChecked(eolfill) |
6864
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
229 | |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
230 | selectedOne = len(self.styleElementList.selectedItems()) == 1 |
6878
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
231 | self.defaultSubstylesButton.setEnabled( |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
232 | selectedOne and substyle < 0 and self.lexer.isBaseStyle(style)) |
6864
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
233 | self.addSubstyleButton.setEnabled( |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
234 | selectedOne and substyle < 0 and self.lexer.isBaseStyle(style)) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
235 | self.deleteSubstyleButton.setEnabled(selectedOne and substyle >= 0) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
236 | self.editSubstyleButton.setEnabled(selectedOne and substyle >= 0) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
237 | self.copySubstyleButton.setEnabled(selectedOne and substyle >= 0) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
238 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
239 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
240 | def on_foregroundButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
241 | """ |
3010
befeff46ec0f
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2964
diff
changeset
|
242 | Private method used to select the foreground colour of the selected |
befeff46ec0f
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2964
diff
changeset
|
243 | style and lexer. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
244 | """ |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
245 | style, substyle = self.__currentStyles() |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
246 | colour = QColorDialog.getColor(self.lexer.color(style, substyle)) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
247 | if colour.isValid(): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
248 | pl = self.sampleText.palette() |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
249 | pl.setColor(QPalette.ColorRole.Text, colour) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
250 | self.sampleText.setPalette(pl) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
251 | self.sampleText.repaint() |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
252 | for selItem in self.styleElementList.selectedItems(): |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
253 | style, substyle = self.__stylesForItem(selItem) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
254 | self.lexer.setColor(colour, style, substyle) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
255 | selItem.setForeground(0, colour) |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
256 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
257 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
258 | def on_backgroundButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
259 | """ |
3010
befeff46ec0f
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2964
diff
changeset
|
260 | Private method used to select the background colour of the selected |
befeff46ec0f
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2964
diff
changeset
|
261 | style and lexer. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
262 | """ |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
263 | style, substyle = self.__currentStyles() |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
264 | colour = QColorDialog.getColor(self.lexer.paper(style, substyle)) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
265 | if colour.isValid(): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
266 | pl = self.sampleText.palette() |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
267 | pl.setColor(QPalette.ColorRole.Base, colour) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
268 | self.sampleText.setPalette(pl) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
269 | self.sampleText.repaint() |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
270 | for selItem in self.styleElementList.selectedItems(): |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
271 | style, substyle = self.__stylesForItem(selItem) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
272 | self.lexer.setPaper(colour, style, substyle) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
273 | selItem.setBackground(0, colour) |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
274 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
275 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
276 | def on_allBackgroundColoursButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
277 | """ |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
278 | Private method used to select the background colour of all styles of a |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
279 | selected lexer. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
280 | """ |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
281 | style, substyle = self.__currentStyles() |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
282 | colour = QColorDialog.getColor(self.lexer.paper(style, substyle)) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
283 | if colour.isValid(): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
284 | pl = self.sampleText.palette() |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
285 | pl.setColor(QPalette.ColorRole.Base, colour) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
286 | self.sampleText.setPalette(pl) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
287 | self.sampleText.repaint() |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
288 | |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
289 | itm = self.styleElementList.topLevelItem(0) |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
290 | while itm is not None: |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
291 | style, substyle = self.__stylesForItem(itm) |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
292 | self.lexer.setPaper(colour, style, substyle) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
293 | itm = self.styleElementList.itemBelow(itm) |
3103
451f60e70434
Made the editor highlighting styles page more colorful (i.e. show the colors and fonts in line).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3038
diff
changeset
|
294 | self.__styleAllItems() |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
295 | |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
296 | def __changeFont(self, doAll, familyOnly, sizeOnly): |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
297 | """ |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
298 | Private slot to change the highlighter font. |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
299 | |
3010
befeff46ec0f
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2964
diff
changeset
|
300 | @param doAll flag indicating to change the font for all styles |
befeff46ec0f
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2964
diff
changeset
|
301 | (boolean) |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
302 | @param familyOnly flag indicating to set the font family only (boolean) |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
303 | @param sizeOnly flag indicating to set the font size only (boolean |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
304 | """ |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
305 | def setFont(font, style, substyle, familyOnly, sizeOnly): |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
306 | """ |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
307 | Local function to set the font. |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
308 | |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
309 | @param font font to be set |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
310 | @type QFont |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
311 | @param style style number |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
312 | @type int |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
313 | @param substyle sub-style number |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
314 | @type int |
3010
befeff46ec0f
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2964
diff
changeset
|
315 | @param familyOnly flag indicating to set the font family only |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
316 | @type bool |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
317 | @param sizeOnly flag indicating to set the font size only |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
318 | @type bool |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
319 | """ |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
320 | if familyOnly or sizeOnly: |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
321 | newFont = QFont(self.lexer.font(style)) |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
322 | if familyOnly: |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
323 | newFont.setFamily(font.family()) |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
324 | if sizeOnly: |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
325 | newFont.setPointSize(font.pointSize()) |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
326 | self.lexer.setFont(newFont, style, substyle) |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
327 | else: |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
328 | self.lexer.setFont(font, style, substyle) |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
329 | |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
330 | def setSampleFont(font, familyOnly, sizeOnly): |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
331 | """ |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
332 | Local function to set the font of the sample text. |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
333 | |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
334 | @param font font to be set (QFont) |
3010
befeff46ec0f
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2964
diff
changeset
|
335 | @param familyOnly flag indicating to set the font family only |
befeff46ec0f
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2964
diff
changeset
|
336 | (boolean) |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
337 | @param sizeOnly flag indicating to set the font size only (boolean |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
338 | """ |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
339 | if familyOnly or sizeOnly: |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
340 | style, substyle = self.__currentStyles() |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
341 | newFont = QFont(self.lexer.font(style, substyle)) |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
342 | if familyOnly: |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
343 | newFont.setFamily(font.family()) |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
344 | if sizeOnly: |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
345 | newFont.setPointSize(font.pointSize()) |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
346 | self.sampleText.setFont(newFont) |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
347 | else: |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
348 | self.sampleText.setFont(font) |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
349 | |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
350 | style, substyle = self.__currentStyles() |
8259
2bbec88047dd
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8234
diff
changeset
|
351 | options = ( |
8319
ea11a3948f40
Continued porting eric to PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8318
diff
changeset
|
352 | QFontDialog.FontDialogOption.MonospacedFonts |
8259
2bbec88047dd
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8234
diff
changeset
|
353 | if self.monospacedButton.isChecked() else |
8319
ea11a3948f40
Continued porting eric to PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8318
diff
changeset
|
354 | QFontDialog.FontDialogOption(0) |
8259
2bbec88047dd
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8234
diff
changeset
|
355 | ) |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
356 | font, ok = QFontDialog.getFont(self.lexer.font(style, substyle), self, |
4698
61c0aef6a570
Added capability to select only from monospaced fonts on the highlighters styles page (for PyQt5 only).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4675
diff
changeset
|
357 | "", options) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
358 | if ok: |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
359 | setSampleFont(font, familyOnly, sizeOnly) |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
360 | if doAll: |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
361 | itm = self.styleElementList.topLevelItem(0) |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
362 | while itm is not None: |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
363 | style, substyle = self.__stylesForItem(itm) |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
364 | setFont(font, style, substyle, familyOnly, sizeOnly) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
365 | itm = self.styleElementList.itemBelow(itm) |
3103
451f60e70434
Made the editor highlighting styles page more colorful (i.e. show the colors and fonts in line).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3038
diff
changeset
|
366 | self.__styleAllItems() |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
367 | else: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
368 | for selItem in self.styleElementList.selectedItems(): |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
369 | style, substyle = self.__stylesForItem(selItem) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
370 | setFont(font, style, substyle, familyOnly, sizeOnly) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
371 | itmFont = self.lexer.font(style, substyle) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
372 | selItem.setFont(0, itmFont) |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
373 | |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
374 | def __fontButtonMenuTriggered(self, act): |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
375 | """ |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
376 | Private slot used to select the font of the selected style and lexer. |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
377 | |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
378 | @param act reference to the triggering action (QAction) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
379 | """ |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
380 | if act is None: |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
381 | return |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
382 | |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
383 | familyOnly = act.data() in [self.FAMILYANDSIZE, self.FAMILYONLY] |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
384 | sizeOnly = act.data() in [self.FAMILYANDSIZE, self.SIZEONLY] |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
385 | self.__changeFont(False, familyOnly, sizeOnly) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
386 | |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
387 | def __allFontsButtonMenuTriggered(self, act): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
388 | """ |
244
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
389 | Private slot used to change the font of all styles of a selected lexer. |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
390 | |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
391 | @param act reference to the triggering action (QAction) |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
392 | """ |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
393 | if act is None: |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
394 | return |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
395 | |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
396 | familyOnly = act.data() in [self.FAMILYANDSIZE, self.FAMILYONLY] |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
397 | sizeOnly = act.data() in [self.FAMILYANDSIZE, self.SIZEONLY] |
30be2b4a9721
Added a menu to the highlighting styles config page to change individual aspects of a font only.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
398 | self.__changeFont(True, familyOnly, sizeOnly) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
399 | |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
400 | @pyqtSlot(bool) |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
401 | def on_eolfillCheckBox_clicked(self, on): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
402 | """ |
3010
befeff46ec0f
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2964
diff
changeset
|
403 | Private method used to set the eolfill for the selected style and |
befeff46ec0f
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2964
diff
changeset
|
404 | lexer. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
405 | |
3107
5b496e690984
Another little enhancement to the highlighter style config page to show the eol-fill status in the style list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3103
diff
changeset
|
406 | @param on flag indicating enabled or disabled state (boolean) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
407 | """ |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
408 | style, substyle = self.__currentStyles() |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
409 | checkState = Qt.CheckState.Checked if on else Qt.CheckState.Unchecked |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
410 | for selItem in self.styleElementList.selectedItems(): |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
411 | style, substyle = self.__stylesForItem(selItem) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
412 | self.lexer.setEolFill(on, style, substyle) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
413 | selItem.setCheckState(0, checkState) |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
414 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
415 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
416 | def on_allEolFillButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
417 | """ |
3010
befeff46ec0f
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2964
diff
changeset
|
418 | Private method used to set the eolfill for all styles of a selected |
befeff46ec0f
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2964
diff
changeset
|
419 | lexer. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
420 | """ |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
421 | on = self.tr("Enabled") |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
422 | off = self.tr("Disabled") |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
537
diff
changeset
|
423 | selection, ok = QInputDialog.getItem( |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
424 | self, |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
425 | self.tr("Fill to end of line"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
426 | self.tr("Select fill to end of line for all styles"), |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
427 | [on, off], |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
428 | 0, False) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
429 | if ok: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
430 | enabled = selection == on |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
431 | self.eolfillCheckBox.setChecked(enabled) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
432 | |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
433 | itm = self.styleElementList.topLevelItem(0) |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
434 | while itm is not None: |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
435 | style, substyle = self.__stylesForItem(itm) |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
436 | self.lexer.setEolFill(enabled, style, substyle) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
437 | itm = self.styleElementList.itemBelow(itm) |
3107
5b496e690984
Another little enhancement to the highlighter style config page to show the eol-fill status in the style list.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3103
diff
changeset
|
438 | self.__styleAllItems() |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
439 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
440 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
441 | def on_defaultButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
442 | """ |
2763
e4794166ad70
Fixed a serious typo.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2408
diff
changeset
|
443 | Private method to set the current style to its default values. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
444 | """ |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
445 | for selItem in self.styleElementList.selectedItems(): |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
446 | style, substyle = self.__stylesForItem(selItem) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
447 | self.__setToDefault(style, substyle) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
448 | self.on_styleElementList_currentItemChanged( |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
449 | self.styleElementList.currentItem(), None) |
3103
451f60e70434
Made the editor highlighting styles page more colorful (i.e. show the colors and fonts in line).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3038
diff
changeset
|
450 | self.__styleAllItems() |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
451 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
452 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
453 | def on_allDefaultButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
454 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
455 | Private method to set all styles to their default values. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
456 | """ |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
457 | itm = self.styleElementList.topLevelItem(0) |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
458 | while itm is not None: |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
459 | style, substyle = self.__stylesForItem(itm) |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
460 | self.__setToDefault(style, substyle) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
461 | itm = self.styleElementList.itemBelow(itm) |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
462 | self.on_styleElementList_currentItemChanged( |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
463 | self.styleElementList.currentItem(), None) |
3103
451f60e70434
Made the editor highlighting styles page more colorful (i.e. show the colors and fonts in line).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3038
diff
changeset
|
464 | self.__styleAllItems() |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
465 | |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
466 | def __setToDefault(self, style, substyle): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
467 | """ |
2763
e4794166ad70
Fixed a serious typo.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2408
diff
changeset
|
468 | Private method to set a specific style to its default values. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
469 | |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
470 | @param style style number |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
471 | @type int |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
472 | @param substyle sub-style number |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
473 | @type int |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
474 | """ |
6860
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
475 | self.lexer.setColor(self.lexer.defaultColor(style, substyle), |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
476 | style, substyle) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
477 | self.lexer.setPaper(self.lexer.defaultPaper(style, substyle), |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
478 | style, substyle) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
479 | self.lexer.setFont(self.lexer.defaultFont(style, substyle), |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
480 | style, substyle) |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
481 | self.lexer.setEolFill(self.lexer.defaultEolFill(style, substyle), |
50069cc0ee49
EditorHighlightingStylesPage: added support for sub-styles and adjusted code to today's Qt.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6855
diff
changeset
|
482 | style, substyle) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
483 | |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
484 | ####################################################################### |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
485 | ## Importing and exporting of styles |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
486 | ####################################################################### |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
487 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
488 | @pyqtSlot() |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
489 | def on_importButton_clicked(self): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
490 | """ |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
491 | Private slot to import styles to be selected. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
492 | """ |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
493 | self.__importStyles(importAll=False) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
494 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
495 | @pyqtSlot() |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
496 | def on_exportButton_clicked(self): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
497 | """ |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
498 | Private slot to export styles to be selected. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
499 | """ |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
500 | self.__exportStyles(exportAll=False) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
501 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
502 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
503 | def on_importAllButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
504 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
505 | Private slot to import the styles of all lexers. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
506 | """ |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
507 | self.__importStyles(importAll=True) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
508 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
509 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
510 | def on_exportAllButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
511 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
512 | Private slot to export the styles of all lexers. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
513 | """ |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
514 | self.__exportStyles(exportAll=True) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
515 | |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
516 | def __exportStyles(self, exportAll=False): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
517 | """ |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
518 | Private method to export the styles of selectable lexers. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
519 | |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
520 | @param exportAll flag indicating to export all styles without asking |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
521 | (defaults to False) |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
522 | @type bool (optional) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
523 | """ |
8314
e3642a6a1e71
Finished renaming eric6 to eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8312
diff
changeset
|
524 | from eric7config import getConfig |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
525 | stylesDir = getConfig("ericStylesDir") |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
526 | |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
527 | lexerNames = list(self.lexers.keys()) |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
528 | if not exportAll: |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
529 | if self.lexer: |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
530 | preselect = [self.lexer.language()] |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
531 | else: |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
532 | preselect = [] |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
533 | from .EditorHighlightingStylesSelectionDialog import ( |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
534 | EditorHighlightingStylesSelectionDialog) |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
535 | dlg = EditorHighlightingStylesSelectionDialog( |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
536 | lexerNames, forImport=False, preselect=preselect) |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
537 | if dlg.exec() == QDialog.DialogCode.Accepted: |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
538 | lexerNames = dlg.getLexerNames() |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
539 | else: |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
540 | # Cancelled by user |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
541 | return |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
542 | |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
543 | lexers = [self.lexers[name] for name in lexerNames] |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
544 | |
882
34b86be88bf0
Redid the native file dialog code to be future proof.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
880
diff
changeset
|
545 | fn, selectedFilter = E5FileDialog.getSaveFileNameAndFilter( |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
546 | self, |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
547 | self.tr("Export Highlighting Styles"), |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
548 | stylesDir, |
8351
7d13e08ddb3f
Removed for writing old style XML files and renamed E5XML to EricXML.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8322
diff
changeset
|
549 | self.tr("Highlighting Styles File (*.ehj)"), |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
550 | "", |
8322
b422b4e77d19
Continued porting eric to PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8319
diff
changeset
|
551 | E5FileDialog.DontConfirmOverwrite) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
552 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
553 | if not fn: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
554 | return |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
555 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
556 | ext = QFileInfo(fn).suffix() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
557 | if not ext: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
558 | ex = selectedFilter.split("(*")[1].split(")")[0] |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
559 | if ex: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
560 | fn += ex |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
561 | |
8259
2bbec88047dd
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8234
diff
changeset
|
562 | ok = ( |
2bbec88047dd
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8234
diff
changeset
|
563 | E5MessageBox.yesNo( |
3020
542e97d4ecb3
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3010
diff
changeset
|
564 | self, |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
565 | self.tr("Export Highlighting Styles"), |
8022
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
566 | self.tr("""<p>The highlighting styles file <b>{0}</b> exists""" |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
567 | """ already. Overwrite it?</p>""").format(fn)) |
8259
2bbec88047dd
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8234
diff
changeset
|
568 | if os.path.exists(fn) else |
2bbec88047dd
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8234
diff
changeset
|
569 | True |
2bbec88047dd
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8234
diff
changeset
|
570 | ) |
8022
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
571 | |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
572 | if ok: |
8351
7d13e08ddb3f
Removed for writing old style XML files and renamed E5XML to EricXML.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8322
diff
changeset
|
573 | from Preferences.HighlightingStylesFile import (HighlightingStylesFile |
7d13e08ddb3f
Removed for writing old style XML files and renamed E5XML to EricXML.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8322
diff
changeset
|
574 | ) |
7d13e08ddb3f
Removed for writing old style XML files and renamed E5XML to EricXML.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8322
diff
changeset
|
575 | highlightingStylesFile = HighlightingStylesFile() |
7d13e08ddb3f
Removed for writing old style XML files and renamed E5XML to EricXML.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8322
diff
changeset
|
576 | highlightingStylesFile.writeFile(fn, lexers) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
577 | |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
578 | def __importStyles(self, importAll=False): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
579 | """ |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
580 | Private method to import the styles of lexers to be selected. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
581 | |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
582 | @param importAll flag indicating to import all styles without asking |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
583 | (defaults to False) |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
584 | @type bool (optional) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
585 | """ |
8314
e3642a6a1e71
Finished renaming eric6 to eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8312
diff
changeset
|
586 | from eric7config import getConfig |
5976
549918576245
Added a dark style (*.qss and Python lexers) provided by Giuseppe Corbelli.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5736
diff
changeset
|
587 | stylesDir = getConfig("ericStylesDir") |
549918576245
Added a dark style (*.qss and Python lexers) provided by Giuseppe Corbelli.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5736
diff
changeset
|
588 | |
882
34b86be88bf0
Redid the native file dialog code to be future proof.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
880
diff
changeset
|
589 | fn = E5FileDialog.getOpenFileName( |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
590 | self, |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
591 | self.tr("Import Highlighting Styles"), |
5976
549918576245
Added a dark style (*.qss and Python lexers) provided by Giuseppe Corbelli.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5736
diff
changeset
|
592 | stylesDir, |
8022
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
593 | self.tr("Highlighting Styles File (*.ehj);;" |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
594 | "XML Highlighting Styles File (*.e6h *.e4h)")) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
595 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
596 | if not fn: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
597 | return |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
598 | |
8022
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
599 | if fn.endswith(".ehj"): |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
600 | # new JSON based file |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
601 | from Preferences.HighlightingStylesFile import ( |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
602 | HighlightingStylesFile |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
603 | ) |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
604 | highlightingStylesFile = HighlightingStylesFile() |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
605 | styles = highlightingStylesFile.readFile(fn) |
8026
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
606 | if not styles: |
8022
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
607 | return |
593
32c9b36eec53
Migrated the highlighting styles handler to highlighting styles reader.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
564
diff
changeset
|
608 | else: |
8022
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
609 | # old XML based file |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
610 | f = QFile(fn) |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
611 | if f.open(QIODevice.OpenModeFlag.ReadOnly): |
8351
7d13e08ddb3f
Removed for writing old style XML files and renamed E5XML to EricXML.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8322
diff
changeset
|
612 | from EricXML.HighlightingStylesReader import ( |
8022
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
613 | HighlightingStylesReader |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
614 | ) |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
615 | reader = HighlightingStylesReader(f, self.lexers) |
8026
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
616 | styles = reader.readXML() |
8022
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
617 | f.close() |
8026
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
618 | if not styles: |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
619 | return |
8022
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
620 | else: |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
621 | E5MessageBox.critical( |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
622 | self, |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
623 | self.tr("Import Highlighting Styles"), |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
624 | self.tr( |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
625 | "<p>The highlighting styles file <b>{0}</b> could not" |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
626 | " be read.</p><p>Reason: {1}</p>" |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
627 | ).format(fn, f.errorString()) |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
628 | ) |
2da0139f4f91
Implemented the JSON based highlighting styles files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8013
diff
changeset
|
629 | return |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
630 | |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
631 | self.__applyStyles(styles, importAll=importAll) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
632 | self.on_lexerLanguageComboBox_activated( |
8151
8c1445825e7b
Changed code to not use QComboBox.activated[str] and QComboBoc.highlighted[str] signals but the int variants instead.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8143
diff
changeset
|
633 | self.lexerLanguageComboBox.currentIndex()) |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
634 | |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
635 | def __applyStyles(self, stylesList, importAll=False): |
8026
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
636 | """ |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
637 | Private method to apply the imported styles to this dialog. |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
638 | |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
639 | @param stylesList list of imported lexer styles |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
640 | @type list of dict |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
641 | @param importAll flag indicating to import all styles without asking |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
642 | (defaults to False) |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
643 | @type bool (optional) |
8026
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
644 | """ |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
645 | lexerNames = [d["name"] |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
646 | for d in stylesList |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
647 | if d["name"] in self.lexers] |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
648 | |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
649 | if not importAll: |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
650 | from .EditorHighlightingStylesSelectionDialog import ( |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
651 | EditorHighlightingStylesSelectionDialog) |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
652 | dlg = EditorHighlightingStylesSelectionDialog( |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
653 | lexerNames, forImport=True) |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
654 | if dlg.exec() == QDialog.DialogCode.Accepted: |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
655 | lexerNames = dlg.getLexerNames() |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
656 | else: |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
657 | # Cancelled by user |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
658 | return |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
659 | |
8026
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
660 | for lexerDict in stylesList: |
8028
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
661 | if lexerDict["name"] in lexerNames: |
a4f1b68c0737
Highlighting Styles: changed the import/export logic to allow the selection of lexers to be imported/exported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8026
diff
changeset
|
662 | lexer = self.lexers[lexerDict["name"]] |
8026
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
663 | for styleDict in lexerDict["styles"]: |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
664 | style = styleDict["style"] |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
665 | substyle = styleDict["substyle"] |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
666 | lexer.setColor(QColor(styleDict["color"]), style, substyle) |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
667 | lexer.setPaper(QColor(styleDict["paper"]), style, substyle) |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
668 | font = QFont() |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
669 | font.fromString(styleDict["font"]) |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
670 | lexer.setFont(font, style, substyle) |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
671 | lexer.setEolFill(styleDict["eolfill"], style, substyle) |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
672 | if substyle >= 0: |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
673 | # description and words can only be set for sub-styles |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
674 | lexer.setDescription(styleDict["description"], |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
675 | style, substyle) |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
676 | lexer.setWords(styleDict["words"], style, substyle) |
d3eacdbcb18b
Changed the highlighting styles import logic thus, that the imported styles are applied in the configuration page.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8022
diff
changeset
|
677 | |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
678 | ####################################################################### |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
679 | ## Methods to save and restore the state |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
680 | ####################################################################### |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
681 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
682 | def saveState(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
683 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
684 | Public method to save the current state of the widget. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
685 | |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
686 | @return list containing the index of the selected lexer language |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
687 | and a tuple containing the index of the parent selected lexer |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
688 | entry and the index of the selected entry |
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
689 | @rtype list of int and tuple of (int, int) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
690 | """ |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
691 | itm = self.styleElementList.currentItem() |
7743
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
692 | if itm: |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
693 | parent = itm.parent() |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
694 | if parent is None: |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
695 | currentData = ( |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
696 | None, self.styleElementList.indexOfTopLevelItem(itm)) |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
697 | else: |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
698 | currentData = ( |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
699 | self.styleElementList.indexOfTopLevelItem(parent), |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
700 | parent.indexOfChild(itm) |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
701 | ) |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
702 | |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
703 | savedState = [ |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
704 | self.lexerLanguageComboBox.currentIndex(), |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
705 | currentData, |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
706 | ] |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
707 | else: |
7743
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
708 | savedState = [] |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
709 | return savedState |
6862
6f4237ccf576
EditorHighlightingStylesPage: converted the styles list to QTreeWidget in order to show sub-styles indented.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6860
diff
changeset
|
710 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
711 | def setState(self, state): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
712 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
713 | Public method to set the state of the widget. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
714 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
715 | @param state state data generated by saveState |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
716 | """ |
7743
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
717 | if state: |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
718 | self.lexerLanguageComboBox.setCurrentIndex(state[0]) |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
719 | self.on_lexerLanguageComboBox_activated( |
8151
8c1445825e7b
Changed code to not use QComboBox.activated[str] and QComboBoc.highlighted[str] signals but the int variants instead.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8143
diff
changeset
|
720 | self.lexerLanguageComboBox.currentIndex()) |
7743
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
721 | |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
722 | parentIndex, index = state[1] |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
723 | if parentIndex is None: |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
724 | itm = self.styleElementList.topLevelItem(index) |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
725 | else: |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
726 | parent = self.styleElementList.topLevelItem(parentIndex) |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
727 | itm = parent.child(index) |
817a81a2e6aa
Editor: added support for TOML files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
728 | self.styleElementList.setCurrentItem(itm) |
6864
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
729 | |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
730 | ####################################################################### |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
731 | ## Methods to add, delete and edit sub-styles and their definitions |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
732 | ####################################################################### |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
733 | |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
734 | @pyqtSlot() |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
735 | def on_addSubstyleButton_clicked(self): |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
736 | """ |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
737 | Private slot to add a new sub-style. |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
738 | """ |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
739 | style, substyle = self.__currentStyles() |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
740 | dlg = SubstyleDefinitionDialog( |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
741 | self.lexer, style, substyle, parent=self) |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
742 | if dlg.exec() == QDialog.DialogCode.Accepted: |
6864
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
743 | description, words = dlg.getData() |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
744 | substyle = self.lexer.addSubstyle(style) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
745 | self.lexer.setDescription(description, style, substyle) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
746 | self.lexer.setWords(words, style, substyle) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
747 | |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
748 | parent = self.styleElementList.findItems( |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
749 | self.lexer.description(style), Qt.MatchFlag.MatchExactly)[0] |
6864
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
750 | parent.setExpanded(True) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
751 | itm = QTreeWidgetItem(parent, [description]) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
752 | itm.setData(0, self.StyleRole, style) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
753 | itm.setData(0, self.SubstyleRole, substyle) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
754 | self.__styleOneItem(itm, style, substyle) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
755 | |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
756 | @pyqtSlot() |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
757 | def on_deleteSubstyleButton_clicked(self): |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
758 | """ |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
759 | Private slot to delete the selected sub-style. |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
760 | """ |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
761 | style, substyle = self.__currentStyles() |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
762 | ok = E5MessageBox.yesNo( |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
763 | self, |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
764 | self.tr("Delete Sub-Style"), |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
765 | self.tr("""<p>Shall the sub-style <b>{0}</b> really be""" |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
766 | """ deleted?</p>""").format( |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
767 | self.lexer.description(style, substyle)) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
768 | ) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
769 | if ok: |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
770 | self.lexer.delSubstyle(style, substyle) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
771 | |
6867
97e86d2426a9
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6864
diff
changeset
|
772 | itm = self.styleElementList.currentItem() |
6864
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
773 | parent = itm.parent() |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
774 | index = parent.indexOfChild(itm) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
775 | parent.takeChild(index) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
776 | del itm |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
777 | |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
778 | @pyqtSlot() |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
779 | def on_editSubstyleButton_clicked(self): |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
780 | """ |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
781 | Private slot to edit the selected sub-style entry. |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
782 | """ |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
783 | style, substyle = self.__currentStyles() |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
784 | dlg = SubstyleDefinitionDialog( |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
785 | self.lexer, style, substyle, parent=self) |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
786 | if dlg.exec() == QDialog.DialogCode.Accepted: |
6864
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
787 | description, words = dlg.getData() |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
788 | self.lexer.setDescription(description, style, substyle) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
789 | self.lexer.setWords(words, style, substyle) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
790 | |
6867
97e86d2426a9
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6864
diff
changeset
|
791 | itm = self.styleElementList.currentItem() |
6864
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
792 | itm.setText(0, description) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
793 | |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
794 | @pyqtSlot() |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
795 | def on_copySubstyleButton_clicked(self): |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
796 | """ |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
797 | Private slot to copy the selected sub-style. |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
798 | """ |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
799 | style, substyle = self.__currentStyles() |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
800 | newSubstyle = self.lexer.addSubstyle(style) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
801 | |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
802 | description = self.tr("{0} - Copy").format( |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
803 | self.lexer.description(style, substyle)) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
804 | self.lexer.setDescription(description, style, newSubstyle) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
805 | self.lexer.setWords(self.lexer.words(style, substyle), |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
806 | style, newSubstyle) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
807 | self.lexer.setColor(self.lexer.color(style, substyle), |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
808 | style, newSubstyle) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
809 | self.lexer.setPaper(self.lexer.paper(style, substyle), |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
810 | style, newSubstyle) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
811 | self.lexer.setFont(self.lexer.font(style, substyle), |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
812 | style, newSubstyle) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
813 | self.lexer.setEolFill(self.lexer.eolFill(style, substyle), |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
814 | style, newSubstyle) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
815 | |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
816 | parent = self.styleElementList.findItems( |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8028
diff
changeset
|
817 | self.lexer.description(style), Qt.MatchFlag.MatchExactly)[0] |
6864
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
818 | parent.setExpanded(True) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
819 | itm = QTreeWidgetItem(parent, [description]) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
820 | itm.setData(0, self.StyleRole, style) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
821 | itm.setData(0, self.SubstyleRole, newSubstyle) |
7837ab17f079
Sub-Styles: added buttons to the Editor Highlighting Styles configuration page to add, delete, edit and copy sub-style definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6862
diff
changeset
|
822 | self.__styleOneItem(itm, style, newSubstyle) |
6878
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
823 | |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
824 | @pyqtSlot() |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
825 | def on_defaultSubstylesButton_clicked(self): |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
826 | """ |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
827 | Private slot to reset all substyles to default values. |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
828 | """ |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
829 | style, substyle = self.__currentStyles() |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
830 | ok = E5MessageBox.yesNo( |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
831 | self, |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
832 | self.tr("Reset Sub-Styles to Default"), |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
833 | self.tr("<p>Do you really want to reset all defined sub-styles of" |
6883
57a2dc333cea
Fixed a code style issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6878
diff
changeset
|
834 | " <b>{0}</b> to the default values?</p>""") |
57a2dc333cea
Fixed a code style issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6878
diff
changeset
|
835 | .format(self.lexer.description(style, substyle)) |
57a2dc333cea
Fixed a code style issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6878
diff
changeset
|
836 | ) |
6878
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
837 | if ok: |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
838 | # 1. reset sub-styles |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
839 | self.lexer.loadDefaultSubStyles(style) |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
840 | |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
841 | # 2. delete all existing sub-style items |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
842 | parent = self.styleElementList.currentItem() |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
843 | while parent.childCount() > 0: |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
844 | itm = parent.takeChild(0) # __IGNORE_WARNING__ |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
845 | del itm |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
846 | |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
847 | # 3. create the new list of sub-style items |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
848 | for description, _, substyle in self.lexer.getSubStyles(style): |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
849 | itm = QTreeWidgetItem(parent, [description]) |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
850 | itm.setData(0, self.StyleRole, style) |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
851 | itm.setData(0, self.SubstyleRole, substyle) |
79008f970902
EditorHighlightingStylesPage: added a button to reset the sub-styles of a base style to its default values.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6867
diff
changeset
|
852 | self.__styleOneItem(itm, style, substyle) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
853 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
854 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
855 | def create(dlg): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
856 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
857 | Module function to create the configuration page. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
858 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
859 | @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:
2763
diff
changeset
|
860 | @return reference to the instantiated page (ConfigurationPageBase) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
861 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
862 | page = EditorHighlightingStylesPage(dlg.getLexers()) |
593
32c9b36eec53
Migrated the highlighting styles handler to highlighting styles reader.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
564
diff
changeset
|
863 | return page |