Thu, 01 Oct 2020 17:39:16 +0200
Fixed an issue overriding tab and indent settings for Pygments based lexers.
7278
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
7360
9190402e4505
Updated copyright for 2020.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7290
diff
changeset
|
3 | # Copyright (c) 2019 - 2020 Detlev Offenbach <detlev@die-offenbachs.de> |
7290
e54a0765c82e
EditorLanguageTabIndentOverrideDialog: fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7278
diff
changeset
|
4 | # |
e54a0765c82e
EditorLanguageTabIndentOverrideDialog: fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7278
diff
changeset
|
5 | |
7278
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing a dialog to set the tab and indentation width override for |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | a language. |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | """ |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
10 | |
7731
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
11 | from pygments.lexers import get_all_lexers |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
12 | |
7278
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
13 | from PyQt5.QtCore import pyqtSlot |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
14 | from PyQt5.QtWidgets import QDialog, QDialogButtonBox |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
15 | |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
16 | from .Ui_EditorLanguageTabIndentOverrideDialog import ( |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17 | Ui_EditorLanguageTabIndentOverrideDialog |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18 | ) |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19 | |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
20 | |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | class EditorLanguageTabIndentOverrideDialog( |
7290
e54a0765c82e
EditorLanguageTabIndentOverrideDialog: fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7278
diff
changeset
|
22 | QDialog, Ui_EditorLanguageTabIndentOverrideDialog |
e54a0765c82e
EditorLanguageTabIndentOverrideDialog: fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7278
diff
changeset
|
23 | ): |
7278
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24 | """ |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
25 | Class implementing a dialog to set the tab and indentation width override |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
26 | for a language. |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
27 | """ |
7731
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
28 | PygmentsMarker = "Pygments|" |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
29 | |
7278
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
30 | def __init__(self, *, editMode=False, languages=None, tabWidth=0, |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
31 | indentWidth=0, parent=None): |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32 | """ |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
33 | Constructor |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
34 | |
7290
e54a0765c82e
EditorLanguageTabIndentOverrideDialog: fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7278
diff
changeset
|
35 | @keyparam editMode flag indicating the edit mode (Note: in edit mode |
7278
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36 | the language is fixed) |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
37 | @type bool |
7731
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
38 | @param languages list of existing languages (if in add mode) or |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
39 | a list containing the language to be edited |
7278
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
40 | @type list of str |
7731
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
41 | @param tabWidth tab width to be set |
7278
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
42 | @type int |
7731
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
43 | @param indentWidth indentation width to be set |
7278
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
44 | @type int |
7731
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
45 | @param parent reference to the parent widget |
7278
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46 | @type QWidget |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
47 | """ |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
48 | super(EditorLanguageTabIndentOverrideDialog, self).__init__(parent) |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
49 | self.setupUi(self) |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
50 | |
7731
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
51 | self.__extras = ["-----------", self.tr("Alternative")] |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
52 | |
7278
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
53 | if editMode: |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
54 | self.languageComboBox.addItems(languages) |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
55 | else: |
7731
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
56 | self.__populateLanguages(languages) |
7278
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
57 | self.tabWidthSpinBox.setValue(tabWidth) |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
58 | self.indentWidthSpinBox.setValue(indentWidth) |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
59 | |
7731
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
60 | def __populateLanguages(self, filterLanguages): |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
61 | """ |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
62 | Private method to populate the language combo boxes. |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
63 | """ |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
64 | import QScintilla.Lexers |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
65 | languages = list( |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
66 | QScintilla.Lexers.getSupportedLanguages().keys()) |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
67 | for lang in filterLanguages: |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
68 | if lang in languages: |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
69 | languages.remove(lang) |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
70 | self.languageComboBox.addItems( |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
71 | [""] + sorted(languages) + self.__extras) |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
72 | |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
73 | pygmentsLanguages = [lex[0] for lex in get_all_lexers()] |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
74 | for lang in filterLanguages: |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
75 | if lang.startswith(self.PygmentsMarker): |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
76 | lang = lang.replace(self.PygmentsMarker, "") |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
77 | if lang in pygmentsLanguages: |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
78 | pygmentsLanguages.remove(lang) |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
79 | self.pygmentsLexerCombo.addItems([""] + sorted(pygmentsLanguages)) |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
80 | |
7278
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
81 | def getData(self): |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
82 | """ |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
83 | Public method to get the entered data. |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
84 | |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
85 | @return tuple containing the language, the tab width and the |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
86 | indentation width |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
87 | @rtype tuple of (str, int, int) |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
88 | """ |
7731
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
89 | language = self.languageComboBox.currentText() |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
90 | if language in self.__extras: |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
91 | pygmentsLanguage = self.pygmentsLexerCombo.currentText() |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
92 | language = self.PygmentsMarker + pygmentsLanguage |
7278
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
93 | return ( |
7731
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
94 | language, |
7278
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
95 | self.tabWidthSpinBox.value(), |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
96 | self.indentWidthSpinBox.value(), |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
97 | ) |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
98 | |
7731
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
99 | def __updateOkButton(self): |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
100 | """ |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
101 | Private method to set the enabled status of the OK button. |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
102 | """ |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
103 | lang = self.languageComboBox.currentText() |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
104 | if lang in self.__extras: |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
105 | self.buttonBox.button(QDialogButtonBox.Ok).setEnabled( |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
106 | bool(self.pygmentsLexerCombo.currentText())) |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
107 | else: |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
108 | self.buttonBox.button(QDialogButtonBox.Ok).setEnabled( |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
109 | bool(lang)) |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
110 | |
7278
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
111 | @pyqtSlot(str) |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
112 | def on_languageComboBox_currentIndexChanged(self, lang): |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
113 | """ |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
114 | Private slot to handle the selection of a language. |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
115 | |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
116 | @param lang selected language |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
117 | @type str |
1820a0344b62
Editor: added configuration option to set the tab and indentation width for each languages separately (as an override to the global ones).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
118 | """ |
7731
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
119 | if lang in self.__extras: |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
120 | self.pygmentsLexerCombo.setEnabled(True) |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
121 | self.pygmentsLabel.setEnabled(True) |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
122 | else: |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
123 | self.pygmentsLexerCombo.setEnabled(False) |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
124 | self.pygmentsLabel.setEnabled(False) |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
125 | |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
126 | self.__updateOkButton() |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
127 | |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
128 | @pyqtSlot(str) |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
129 | def on_pygmentsLexerCombo_currentIndexChanged(self, lang): |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
130 | """ |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
131 | Private slot to handle the selection of a language. |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
132 | |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
133 | @param lang selected language |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
134 | @type str |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
135 | """ |
8ec83a027a21
Fixed an issue overriding tab and indent settings for Pygments based lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
136 | self.__updateOkButton() |