AssistantEric/Assistant.py

branch
eric7
changeset 212
24d6bae09db6
parent 210
6b1440b975df
child 216
42ded9008f96
--- a/AssistantEric/Assistant.py	Sat Dec 23 16:00:18 2023 +0100
+++ b/AssistantEric/Assistant.py	Wed Jan 03 16:49:39 2024 +0100
@@ -13,11 +13,32 @@
 from PyQt6.QtCore import QObject
 
 from eric7.EricWidgets.EricApplication import ericApp
-from eric7.QScintilla.Editor import Editor
 from eric7.Utilities.ModuleParser import PY_SOURCE, Module
 
 from .APIsManager import APIsManager, ApisNameProject
 
+try:
+    from eric7.QScintilla.Editor import EditorIconId
+
+    AttributeID = EditorIconId.Attribute
+    AttributeProtectedID = EditorIconId.AttributeProtected
+    AttributePrivateID = EditorIconId.AttributePrivate
+    FromDocumentID = EditorIconId.FromDocument
+    MethodID = EditorIconId.Method
+    MethodProtectedID = EditorIconId.MethodProtected
+    MethodPrivateID = EditorIconId.MethodPrivate
+except ImportError:
+    # backward compatibility for eric < 24.2
+    from eric7.QScintilla.Editor import Editor
+
+    AttributeID = Editor.AttributeID
+    AttributeProtectedID = Editor.AttributeProtectedID
+    AttributePrivateID = Editor.AttributePrivateID
+    FromDocumentID = Editor.FromDocumentID
+    MethodID = Editor.MethodID
+    MethodProtectedID = Editor.MethodProtectedID
+    MethodPrivateID = Editor.MethodPrivateID
+
 AcsAPIs = 0x0001
 AcsDocument = 0x0002
 AcsProject = 0x0004
@@ -51,8 +72,6 @@
         self.__lastContext = None
         self.__lastFullContext = None
 
-        self.__fromDocumentID = Editor.FromDocumentID
-
     def activate(self):
         """
         Public method to perform actions upon activation.
@@ -584,11 +603,11 @@
                                 continue
                             # determine icon type
                             if method.isPrivate():
-                                iconID = Editor.MethodPrivateID
+                                iconID = MethodPrivateID
                             elif method.isProtected():
-                                iconID = Editor.MethodProtectedID
+                                iconID = MethodProtectedID
                             else:
-                                iconID = Editor.MethodID
+                                iconID = MethodID
                             if (
                                 prefix == "cls" and method.modifier == method.Class
                             ) or prefix == "self":
@@ -597,20 +616,20 @@
                             for attribute in cl.attributes.values():
                                 # determine icon type
                                 if attribute.isPrivate():
-                                    iconID = Editor.AttributePrivateID
+                                    iconID = AttributePrivateID
                                 elif attribute.isProtected():
-                                    iconID = Editor.AttributeProtectedID
+                                    iconID = AttributeProtectedID
                                 else:
-                                    iconID = Editor.AttributeID
+                                    iconID = AttributeID
                                 comps.append((attribute.name, cl.name, iconID))
                         for attribute in cl.globals.values():
                             # determine icon type
                             if attribute.isPrivate():
-                                iconID = Editor.AttributePrivateID
+                                iconID = AttributePrivateID
                             elif attribute.isProtected():
-                                iconID = Editor.AttributeProtectedID
+                                iconID = AttributeProtectedID
                             else:
-                                iconID = Editor.AttributeID
+                                iconID = AttributeID
                             comps.append((attribute.name, cl.name, iconID))
 
                         if word != prefix:
@@ -665,20 +684,20 @@
                             if method.isPrivate():
                                 if doHierarchy:
                                     continue
-                                iconID = Editor.MethodPrivateID
+                                iconID = MethodPrivateID
                             elif method.isProtected():
-                                iconID = Editor.MethodProtectedID
+                                iconID = MethodProtectedID
                             else:
-                                iconID = Editor.MethodID
+                                iconID = MethodID
                             comps.append((method.name, cl.name, iconID))
                     for attribute in cl.globals.values():
                         # determine icon type
                         if attribute.isPrivate():
-                            iconID = Editor.AttributePrivateID
+                            iconID = AttributePrivateID
                         elif attribute.isProtected():
-                            iconID = Editor.AttributeProtectedID
+                            iconID = AttributeProtectedID
                         else:
-                            iconID = Editor.AttributeID
+                            iconID = AttributeID
                         comps.append((attribute.name, cl.name, iconID))
 
                     if word != prefix:
@@ -747,7 +766,7 @@
                         and completion != word
                     ):
                         completionsList.append(
-                            "{0}?{1}".format(completion, self.__fromDocumentID)
+                            "{0}?{1}".format(completion, FromDocumentID)
                         )
 
                 res = editor.findNextTarget()

eric ide

mercurial