Adjusted some code for eric7 24.2 and newer. eric7 release-10.4.0

Wed, 03 Jan 2024 16:49:39 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Wed, 03 Jan 2024 16:49:39 +0100
branch
eric7
changeset 212
24d6bae09db6
parent 211
548e28c35723
child 213
7a02f51cafd5

Adjusted some code for eric7 24.2 and newer.

AssistantEric/APIsManager.py file | annotate | diff | comparison | revisions
AssistantEric/Assistant.py file | annotate | diff | comparison | revisions
ChangeLog file | annotate | diff | comparison | revisions
PluginAssistantEric.py file | annotate | diff | comparison | revisions
PluginAssistantEric.zip file | annotate | diff | comparison | revisions
--- a/AssistantEric/APIsManager.py	Sat Dec 23 16:00:18 2023 +0100
+++ b/AssistantEric/APIsManager.py	Wed Jan 03 16:49:39 2024 +0100
@@ -19,9 +19,22 @@
 from eric7.DocumentationTools.APIGenerator import APIGenerator
 from eric7.EricWidgets.EricApplication import ericApp
 from eric7.QScintilla import Lexers
-from eric7.QScintilla.Editor import Editor
 from eric7.Utilities import ModuleParser
 
+try:
+    from eric7.QScintilla.Editor import EditorIconId
+
+    AttributeID = EditorIconId.Attribute
+    AttributeProtectedID = EditorIconId.AttributeProtected
+    AttributePrivateID = EditorIconId.AttributePrivate
+except ImportError:
+    # backward compatibility for eric < 24.2
+    from eric7.QScintilla.Editor import Editor
+
+    AttributeID = Editor.AttributeID
+    AttributeProtectedID = Editor.AttributeProtectedID
+    AttributePrivateID = Editor.AttributePrivateID
+
 WorkerStatusStarted = 2001
 WorkerStatusFinished = 2002
 WorkerStatusAborted = 2003
@@ -216,11 +229,11 @@
             for variable in sorted(_class.attributes.keys()):
                 if not _class.attributes[variable].isPrivate():
                     if _class.attributes[variable].isPublic():
-                        iconId = Editor.AttributeID
+                        iconId = AttributeID
                     elif _class.attributes[variable].isProtected():
-                        iconId = Editor.AttributeProtectedID
+                        iconId = AttributeProtectedID
                     else:
-                        iconId = Editor.AttributePrivateID
+                        iconId = AttributePrivateID
                     api.append("{0}{1}?{2:d}".format(classNameStr, variable, iconId))
         return api
 
--- 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()
--- a/ChangeLog	Sat Dec 23 16:00:18 2023 +0100
+++ b/ChangeLog	Wed Jan 03 16:49:39 2024 +0100
@@ -1,5 +1,9 @@
 ChangeLog
 ---------
+Version 10.4.0:
+- bug fixes
+- adjusted some code for eric7 24.2 and newer
+
 Version 10.3.1:
 - bug fixes
 
--- a/PluginAssistantEric.py	Sat Dec 23 16:00:18 2023 +0100
+++ b/PluginAssistantEric.py	Wed Jan 03 16:49:39 2024 +0100
@@ -20,7 +20,7 @@
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "10.3.1"
+version = "10.4.0"
 className = "AssistantEricPlugin"
 packageName = "AssistantEric"
 shortDescription = "Alternative autocompletion and calltips provider."
Binary file PluginAssistantEric.zip has changed

eric ide

mercurial