Tue, 10 Dec 2024 15:46:34 +0100
Updated copyright for 2025.
8790
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
11090
f5f5f5803935
Updated copyright for 2025.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
3 | # Copyright (c) 2021 - 2025 Detlev Offenbach <detlev@die-offenbachs.de> |
8790
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing utility functions for the code style checker dialogs. |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
9413
80c06d472826
Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9221
diff
changeset
|
10 | from eric7.EricGui import EricPixmapCache |
8790
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
11 | |
10046
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
12 | from .translations import messageCategoryRe |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
13 | |
8790
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
14 | |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
15 | def setItemIcon(itm, column, msgCode, severity=None): |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
16 | """ |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17 | Function to set the icon of the passed message item. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
18 | |
8790
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19 | @param itm reference to the message item |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
20 | @type QTreeWidgetItem |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | @param column column for the icon |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
22 | @type int |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
23 | @param msgCode message code |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24 | @type str |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
25 | @param severity severity for message code 'S' (defaults to None) |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
26 | @type str (optional) |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
27 | """ |
10046
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
28 | match = messageCategoryRe.match(msgCode) |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
29 | if match: |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
30 | # the message code is OK |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
31 | messageCategory = match.group(1) |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
32 | |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
33 | if messageCategory in ("W", "C", "M"): |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
34 | itm.setIcon(column, EricPixmapCache.getIcon("warning")) |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
35 | elif messageCategory == "E": |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
36 | itm.setIcon(column, EricPixmapCache.getIcon("syntaxError")) |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
37 | elif messageCategory in ("A", "N"): |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
38 | itm.setIcon(column, EricPixmapCache.getIcon("namingError")) |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
39 | elif messageCategory == "D": |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
40 | itm.setIcon(column, EricPixmapCache.getIcon("docstringError")) |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
41 | elif messageCategory == "I": |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
42 | itm.setIcon(column, EricPixmapCache.getIcon("imports")) |
10362
cfa7034cccf6
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10046
diff
changeset
|
43 | elif messageCategory == "L": |
cfa7034cccf6
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10046
diff
changeset
|
44 | itm.setIcon(column, EricPixmapCache.getIcon("logViewer")) |
10046
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
45 | elif messageCategory == "NO": |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
46 | itm.setIcon(column, EricPixmapCache.getIcon("nameOrderError")) |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
47 | elif messageCategory == "P": |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
48 | itm.setIcon(column, EricPixmapCache.getIcon("dirClosed")) |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
49 | elif messageCategory == "Y": |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
50 | itm.setIcon(column, EricPixmapCache.getIcon("filePython")) |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
51 | elif messageCategory == "S": |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
52 | if severity is None: |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
53 | itm.setIcon(column, EricPixmapCache.getIcon("securityLow")) |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
54 | else: |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
55 | if severity == "H": |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
56 | itm.setIcon(column, EricPixmapCache.getIcon("securityLow")) |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
57 | elif severity == "M": |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
58 | itm.setIcon(column, EricPixmapCache.getIcon("securityMedium")) |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
59 | elif severity == "L": |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
60 | itm.setIcon(column, EricPixmapCache.getIcon("securityHigh")) |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
61 | else: |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
62 | itm.setIcon(column, EricPixmapCache.getIcon("securityLow")) |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
63 | else: |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
64 | # unknown category prefix => warning |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
65 | itm.setIcon(column, EricPixmapCache.getIcon("warning")) |
35b27af462ef
Code Style Checker
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
66 | elif msgCode.startswith("-"): |
9413
80c06d472826
Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9221
diff
changeset
|
67 | itm.setIcon(column, EricPixmapCache.getIcon("warning")) |
8790
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
68 | else: |
548df4df8256
Continued implementing a checker for import statements.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
69 | # unknown category prefix => warning |
9413
80c06d472826
Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9221
diff
changeset
|
70 | itm.setIcon(column, EricPixmapCache.getIcon("warning")) |