AssistantEric/APIsManager.py

changeset 61
b88fd1352be6
parent 59
2b361d34d241
child 65
71f50b4cc169
--- a/AssistantEric/APIsManager.py	Tue Jun 12 19:11:16 2012 +0200
+++ b/AssistantEric/APIsManager.py	Fri Sep 28 18:00:28 2012 +0200
@@ -569,10 +569,9 @@
         Private method to initialize as a language API object.
         """
         if self.__language in ["Python", "Python2", "Python3"]:
-            self.__discardFirst = "self"
-            # TODO: discard first can be 'cls' as well
+            self.__discardFirst = ["self", "cls"]
         else:
-            self.__discardFirst = ""
+            self.__discardFirst = []
         self.__lexer = QScintilla.Lexers.getLexer(self.__language)
         self.__apifiles = Preferences.getEditorAPI(self.__language)
         self.__apifiles.sort()
@@ -806,9 +805,10 @@
                     fullCtx = query.value(2)
                     if sig:
                         if self.__discardFirst:
-                            sig = "({0}".format(sig[1:])\
-                                    .replace(self.__discardFirst, "", 1)\
-                                    .strip(", \t\r\n")
+                            sig = "({0}".format(sig[1:])
+                            for discard in self.__discardFirst:
+                                sig = sig.replace(discard, "", 1)
+                            sig = sig.strip(", \t\r\n")
                         if self.__enoughCommas(sig, commas):
                             if showContext:
                                 calltips.append("{0}{1}{2}{3}".format(
@@ -983,10 +983,10 @@
         """
         Private slot to perform actions after a project has been opened.
         """
-        if self.__project.getProjectLanguage() in ["Python", "Python3"]:
-            self.__discardFirst = "self"
+        if self.__project.getProjectLanguage() in ["Python", "Python2", "Python3"]:
+            self.__discardFirst = ["self", "cls"]
         else:
-            self.__discardFirst = ""
+            self.__discardFirst = []
         self.__lexer = QScintilla.Lexers.getLexer(self.__project.getProjectLanguage())
         self.__openAPIs()
     

eric ide

mercurial