AssistantEric/Documentation/source/Plugin_Assistant_Eric.AssistantEric.APIsManager.html

changeset 2
89cbc07f4bf0
child 19
7eb775bb326b
diff -r 3a4123edc944 -r 89cbc07f4bf0 AssistantEric/Documentation/source/Plugin_Assistant_Eric.AssistantEric.APIsManager.html
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/AssistantEric/Documentation/source/Plugin_Assistant_Eric.AssistantEric.APIsManager.html	Sun Jan 17 19:22:18 2010 +0000
@@ -0,0 +1,557 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN'
+'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>
+<html><head>
+<title>Plugin_Assistant_Eric.AssistantEric.APIsManager</title>
+<style>
+body {
+    background:white;
+    margin: 0em 1em 10em 1em;
+    color: black;
+}
+
+h1 { color: white; background: #4FA4FF; }
+h2 { color: white; background: #4FA4FF; }
+h3 { color: white; background: #00557F; }
+h4 { color: white; background: #00557F; }
+    
+a { color: #AA5500; }
+
+</style>
+</head>
+<body><a NAME="top" ID="top"></a>
+<h1>Plugin_Assistant_Eric.AssistantEric.APIsManager</h1>
+<p>
+Module implementing the APIsManager.
+</p>
+<h3>Global Attributes</h3>
+<table>
+<tr><td>ApisNameProject</td></tr><tr><td>WorkerAborted</td></tr><tr><td>WorkerFinished</td></tr><tr><td>WorkerStarted</td></tr>
+</table>
+<h3>Classes</h3>
+<table>
+<tr>
+<td><a href="#APIsManager">APIsManager</a></td>
+<td>Class implementing the APIsManager class, which is the central store for API information used by autocompletion and calltips.</td>
+</tr><tr>
+<td><a href="#DbAPIs">DbAPIs</a></td>
+<td>Class implementing an API storage entity.</td>
+</tr><tr>
+<td><a href="#DbAPIsWorker">DbAPIsWorker</a></td>
+<td>Class implementing a worker thread to prepare the API database.</td>
+</tr>
+</table>
+<h3>Functions</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<hr /><hr />
+<a NAME="APIsManager" ID="APIsManager"></a>
+<h2>APIsManager</h2>
+<p>
+    Class implementing the APIsManager class, which is the central store for
+    API information used by autocompletion and calltips.
+</p>
+<h3>Derived from</h3>
+QObject
+<h3>Class Attributes</h3>
+<table>
+<tr><td>None</td></tr>
+</table>
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#APIsManager.__init__">APIsManager</a></td>
+<td>Constructor</td>
+</tr><tr>
+<td><a href="#APIsManager.deactivate">deactivate</a></td>
+<td>Public method to perform actions upon deactivation.</td>
+</tr><tr>
+<td><a href="#APIsManager.getAPIs">getAPIs</a></td>
+<td>Public method to get an apis object for autocompletion/calltips.</td>
+</tr><tr>
+<td><a href="#APIsManager.reloadAPIs">reloadAPIs</a></td>
+<td>Public slot to reload the api information.</td>
+</tr>
+</table>
+<a NAME="APIsManager.__init__" ID="APIsManager.__init__"></a>
+<h4>APIsManager (Constructor)</h4>
+<b>APIsManager</b>(<i>parent = None</i>)
+<p>
+        Constructor
+</p><dl>
+<dt><i>parent</i></dt>
+<dd>
+reference to the parent object (QObject)
+</dd>
+</dl><a NAME="APIsManager.deactivate" ID="APIsManager.deactivate"></a>
+<h4>APIsManager.deactivate</h4>
+<b>deactivate</b>(<i></i>)
+<p>
+        Public method to perform actions upon deactivation.
+</p><a NAME="APIsManager.getAPIs" ID="APIsManager.getAPIs"></a>
+<h4>APIsManager.getAPIs</h4>
+<b>getAPIs</b>(<i>language</i>)
+<p>
+        Public method to get an apis object for autocompletion/calltips.
+</p><p>
+        This method creates and loads an APIs object dynamically upon request. 
+        This saves memory for languages, that might not be needed at the moment.
+</p><dl>
+<dt><i>language</i></dt>
+<dd>
+the language of the requested api object (string)
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+the apis object (APIs)
+</dd>
+</dl><a NAME="APIsManager.reloadAPIs" ID="APIsManager.reloadAPIs"></a>
+<h4>APIsManager.reloadAPIs</h4>
+<b>reloadAPIs</b>(<i></i>)
+<p>
+        Public slot to reload the api information.
+</p>
+<div align="right"><a href="#top">Up</a></div>
+<hr /><hr />
+<a NAME="DbAPIs" ID="DbAPIs"></a>
+<h2>DbAPIs</h2>
+<p>
+    Class implementing an API storage entity.
+</p><h4>Signals</h4>
+<dl>
+<dt>apiPreparationCancelled()</dt>
+<dd>
+emitted after the API preparation has been
+            cancelled
+</dd><dt>apiPreparationFinished()</dt>
+<dd>
+emitted after the API preparation has finished
+</dd><dt>apiPreparationStarted()</dt>
+<dd>
+emitted after the API preparation has started
+</dd>
+</dl>
+<h3>Derived from</h3>
+QObject
+<h3>Class Attributes</h3>
+<table>
+<tr><td>DB_VERSION</td></tr><tr><td>ac_context_stmt</td></tr><tr><td>ac_stmt</td></tr><tr><td>api_files_stmt</td></tr><tr><td>create_acWord_idx</td></tr><tr><td>create_api_stmt</td></tr><tr><td>create_context_idx</td></tr><tr><td>create_file_idx</td></tr><tr><td>create_file_stmt</td></tr><tr><td>create_fullContext_idx</td></tr><tr><td>create_mgmt_stmt</td></tr><tr><td>ct_context_stmt</td></tr><tr><td>ct_fullContext_stmt</td></tr><tr><td>ct_stmt</td></tr><tr><td>drop_acWord_idx</td></tr><tr><td>drop_api_stmt</td></tr><tr><td>drop_context_idx</td></tr><tr><td>drop_file_idx</td></tr><tr><td>drop_file_stmt</td></tr><tr><td>drop_fullContext_idx</td></tr><tr><td>drop_mgmt_stmt</td></tr><tr><td>format_select_stmt</td></tr><tr><td>mgmt_insert_stmt</td></tr>
+</table>
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#DbAPIs.__init__">DbAPIs</a></td>
+<td>Constructor</td>
+</tr><tr>
+<td><a href="#DbAPIs.__createApiDB">__createApiDB</a></td>
+<td>Private method to create an API database.</td>
+</tr><tr>
+<td><a href="#DbAPIs.__enoughCommas">__enoughCommas</a></td>
+<td>Private method to determine, if the given string contains enough commas.</td>
+</tr><tr>
+<td><a href="#DbAPIs.__initAsLanguage">__initAsLanguage</a></td>
+<td>Private method to initialize as a language API object.</td>
+</tr><tr>
+<td><a href="#DbAPIs.__initAsProject">__initAsProject</a></td>
+<td>Private method to initialize as a project API object.</td>
+</tr><tr>
+<td><a href="#DbAPIs.__isPrepared">__isPrepared</a></td>
+<td>Private method to check, if the database has been prepared.</td>
+</tr><tr>
+<td><a href="#DbAPIs.__openAPIs">__openAPIs</a></td>
+<td>Private method to open the API database.</td>
+</tr><tr>
+<td><a href="#DbAPIs.__openApiDb">__openApiDb</a></td>
+<td>Private method to open the API database.</td>
+</tr><tr>
+<td><a href="#DbAPIs.__processQueue">__processQueue</a></td>
+<td>Private slot to process the queue of files to load.</td>
+</tr><tr>
+<td><a href="#DbAPIs.__projectClosed">__projectClosed</a></td>
+<td>Private slot to perform actions after a project has been closed.</td>
+</tr><tr>
+<td><a href="#DbAPIs.__projectOpened">__projectOpened</a></td>
+<td>Private slot to perform actions after a project has been opened.</td>
+</tr><tr>
+<td><a href="#DbAPIs._apiDbName">_apiDbName</a></td>
+<td>Protected method to determine the name of the database file.</td>
+</tr><tr>
+<td><a href="#DbAPIs.autoCompletionWordSeparators">autoCompletionWordSeparators</a></td>
+<td>Private method to get the word separator characters.</td>
+</tr><tr>
+<td><a href="#DbAPIs.close">close</a></td>
+<td>Public method to close the database.</td>
+</tr><tr>
+<td><a href="#DbAPIs.editorSaved">editorSaved</a></td>
+<td>Public slot to handle the editorSaved signal.</td>
+</tr><tr>
+<td><a href="#DbAPIs.event">event</a></td>
+<td>Protected method to handle events from the worker thread.</td>
+</tr><tr>
+<td><a href="#DbAPIs.getApiFiles">getApiFiles</a></td>
+<td>Public method to get a list of API files loaded into the database.</td>
+</tr><tr>
+<td><a href="#DbAPIs.getCalltips">getCalltips</a></td>
+<td>Public method to determine the calltips.</td>
+</tr><tr>
+<td><a href="#DbAPIs.getCompletions">getCompletions</a></td>
+<td>Public method to determine the possible completions.</td>
+</tr><tr>
+<td><a href="#DbAPIs.getLexer">getLexer</a></td>
+<td>Public method to return a reference to our lexer object.</td>
+</tr><tr>
+<td><a href="#DbAPIs.prepareAPIs">prepareAPIs</a></td>
+<td>Public method to prepare the APIs if neccessary.</td>
+</tr>
+</table>
+<a NAME="DbAPIs.__init__" ID="DbAPIs.__init__"></a>
+<h4>DbAPIs (Constructor)</h4>
+<b>DbAPIs</b>(<i>language, parent = None</i>)
+<p>
+        Constructor
+</p><dl>
+<dt><i>language</i></dt>
+<dd>
+language of the APIs object (string)
+</dd><dt><i>parent</i></dt>
+<dd>
+reference to the parent object (QObject)
+</dd>
+</dl><a NAME="DbAPIs.__createApiDB" ID="DbAPIs.__createApiDB"></a>
+<h4>DbAPIs.__createApiDB</h4>
+<b>__createApiDB</b>(<i></i>)
+<p>
+        Private method to create an API database.
+</p><a NAME="DbAPIs.__enoughCommas" ID="DbAPIs.__enoughCommas"></a>
+<h4>DbAPIs.__enoughCommas</h4>
+<b>__enoughCommas</b>(<i>s, commas</i>)
+<p>
+        Private method to determine, if the given string contains enough commas.
+</p><dl>
+<dt><i>s</i></dt>
+<dd>
+string to check (string)
+</dd><dt><i>commas</i></dt>
+<dd>
+number of commas to check for (integer)
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+flag indicating, that there are enough commas (boolean)
+</dd>
+</dl><a NAME="DbAPIs.__initAsLanguage" ID="DbAPIs.__initAsLanguage"></a>
+<h4>DbAPIs.__initAsLanguage</h4>
+<b>__initAsLanguage</b>(<i></i>)
+<p>
+        Private method to initialize as a language API object.
+</p><a NAME="DbAPIs.__initAsProject" ID="DbAPIs.__initAsProject"></a>
+<h4>DbAPIs.__initAsProject</h4>
+<b>__initAsProject</b>(<i></i>)
+<p>
+        Private method to initialize as a project API object.
+</p><a NAME="DbAPIs.__isPrepared" ID="DbAPIs.__isPrepared"></a>
+<h4>DbAPIs.__isPrepared</h4>
+<b>__isPrepared</b>(<i></i>)
+<p>
+        Private method to check, if the database has been prepared.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+flag indicating the prepared status (boolean)
+</dd>
+</dl><a NAME="DbAPIs.__openAPIs" ID="DbAPIs.__openAPIs"></a>
+<h4>DbAPIs.__openAPIs</h4>
+<b>__openAPIs</b>(<i></i>)
+<p>
+        Private method to open the API database.
+</p><a NAME="DbAPIs.__openApiDb" ID="DbAPIs.__openApiDb"></a>
+<h4>DbAPIs.__openApiDb</h4>
+<b>__openApiDb</b>(<i></i>)
+<p>
+        Private method to open the API database.
+</p><a NAME="DbAPIs.__processQueue" ID="DbAPIs.__processQueue"></a>
+<h4>DbAPIs.__processQueue</h4>
+<b>__processQueue</b>(<i></i>)
+<p>
+        Private slot to process the queue of files to load.
+</p><a NAME="DbAPIs.__projectClosed" ID="DbAPIs.__projectClosed"></a>
+<h4>DbAPIs.__projectClosed</h4>
+<b>__projectClosed</b>(<i></i>)
+<p>
+        Private slot to perform actions after a project has been closed.
+</p><a NAME="DbAPIs.__projectOpened" ID="DbAPIs.__projectOpened"></a>
+<h4>DbAPIs.__projectOpened</h4>
+<b>__projectOpened</b>(<i></i>)
+<p>
+        Private slot to perform actions after a project has been opened.
+</p><a NAME="DbAPIs._apiDbName" ID="DbAPIs._apiDbName"></a>
+<h4>DbAPIs._apiDbName</h4>
+<b>_apiDbName</b>(<i></i>)
+<p>
+        Protected method to determine the name of the database file.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+name of the database file (string)
+</dd>
+</dl><a NAME="DbAPIs.autoCompletionWordSeparators" ID="DbAPIs.autoCompletionWordSeparators"></a>
+<h4>DbAPIs.autoCompletionWordSeparators</h4>
+<b>autoCompletionWordSeparators</b>(<i></i>)
+<p>
+        Private method to get the word separator characters.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+word separator characters (list of strings)
+</dd>
+</dl><a NAME="DbAPIs.close" ID="DbAPIs.close"></a>
+<h4>DbAPIs.close</h4>
+<b>close</b>(<i></i>)
+<p>
+        Public method to close the database.
+</p><a NAME="DbAPIs.editorSaved" ID="DbAPIs.editorSaved"></a>
+<h4>DbAPIs.editorSaved</h4>
+<b>editorSaved</b>(<i>filename</i>)
+<p>
+        Public slot to handle the editorSaved signal.
+</p><dl>
+<dt><i>filename</i></dt>
+<dd>
+name of the file that was saved (string)
+</dd>
+</dl><a NAME="DbAPIs.event" ID="DbAPIs.event"></a>
+<h4>DbAPIs.event</h4>
+<b>event</b>(<i>evt</i>)
+<p>
+        Protected method to handle events from the worker thread.
+</p><dl>
+<dt><i>evt</i></dt>
+<dd>
+reference to the event object (QEvent)
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+flag indicating, if the event was handled (boolean)
+</dd>
+</dl><a NAME="DbAPIs.getApiFiles" ID="DbAPIs.getApiFiles"></a>
+<h4>DbAPIs.getApiFiles</h4>
+<b>getApiFiles</b>(<i></i>)
+<p>
+        Public method to get a list of API files loaded into the database.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+list of API filenames (list of strings)
+</dd>
+</dl><a NAME="DbAPIs.getCalltips" ID="DbAPIs.getCalltips"></a>
+<h4>DbAPIs.getCalltips</h4>
+<b>getCalltips</b>(<i>acWord, commas, context = None, fullContext = None, showContext = True</i>)
+<p>
+        Public method to determine the calltips.
+</p><dl>
+<dt><i>acWord</i></dt>
+<dd>
+function to get calltips for (string)
+</dd><dt><i>commas</i></dt>
+<dd>
+minimum number of commas contained in the calltip (integer)
+</dd><dt><i>context</i></dt>
+<dd>
+string giving the context (e.g. classname) (string)
+</dd><dt><i>fullContext</i></dt>
+<dd>
+string giving the full context (string)
+</dd><dt><i>showContext</i></dt>
+<dd>
+flag indicating to show the calltip context (boolean)
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+list of calltips (list of string)
+</dd>
+</dl><a NAME="DbAPIs.getCompletions" ID="DbAPIs.getCompletions"></a>
+<h4>DbAPIs.getCompletions</h4>
+<b>getCompletions</b>(<i>start = None, context = None</i>)
+<p>
+        Public method to determine the possible completions.
+</p><dl>
+<dt><i>start=</i></dt>
+<dd>
+string giving the start of the word to be
+            completed (string)
+</dd><dt><i>context=</i></dt>
+<dd>
+string giving the context (e.g. classname)
+            to be completed (string)
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+list of dictionaries with possible completions (key 'completion'
+            contains the completion (string), key 'context'
+            contains the context (string) and key 'pictureId'
+            contains the ID of the icon to be shown (string))
+</dd>
+</dl><a NAME="DbAPIs.getLexer" ID="DbAPIs.getLexer"></a>
+<h4>DbAPIs.getLexer</h4>
+<b>getLexer</b>(<i></i>)
+<p>
+        Public method to return a reference to our lexer object.
+</p><dl>
+<dt>Returns:</dt>
+<dd>
+reference to the lexer object (QScintilla.Lexers.Lexer)
+</dd>
+</dl><a NAME="DbAPIs.prepareAPIs" ID="DbAPIs.prepareAPIs"></a>
+<h4>DbAPIs.prepareAPIs</h4>
+<b>prepareAPIs</b>(<i>rawList = None</i>)
+<p>
+        Public method to prepare the APIs if neccessary.
+</p><dl>
+<dt><i>rawList=</i></dt>
+<dd>
+list of raw API files (list of strings)
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr /><hr />
+<a NAME="DbAPIsWorker" ID="DbAPIsWorker"></a>
+<h2>DbAPIsWorker</h2>
+<p>
+    Class implementing a worker thread to prepare the API database.
+</p>
+<h3>Derived from</h3>
+QThread
+<h3>Class Attributes</h3>
+<table>
+<tr><td>file_delete_id_stmt</td></tr><tr><td>file_id_stmt</td></tr><tr><td>file_loaded_stmt</td></tr><tr><td>populate_api_stmt</td></tr><tr><td>populate_del_api_stmt</td></tr><tr><td>populate_file_stmt</td></tr><tr><td>update_file_stmt</td></tr>
+</table>
+<h3>Methods</h3>
+<table>
+<tr>
+<td><a href="#DbAPIsWorker.__init__">DbAPIsWorker</a></td>
+<td>Constructor</td>
+</tr><tr>
+<td><a href="#DbAPIsWorker.__autoCompletionWordSeparators">__autoCompletionWordSeparators</a></td>
+<td>Private method to get the word separator characters for a language.</td>
+</tr><tr>
+<td><a href="#DbAPIsWorker.__deleteApiFile">__deleteApiFile</a></td>
+<td>Private method to delete all references to an api file.</td>
+</tr><tr>
+<td><a href="#DbAPIsWorker.__loadApiFile">__loadApiFile</a></td>
+<td>Private method to read a raw API file into the database.</td>
+</tr><tr>
+<td><a href="#DbAPIsWorker.__loadApiFileIfNewer">__loadApiFileIfNewer</a></td>
+<td>Private method to load an API file, if it is newer than the one read into the database.</td>
+</tr><tr>
+<td><a href="#DbAPIsWorker.__storeApis">__storeApis</a></td>
+<td>Private method to put the API entries into the database.</td>
+</tr><tr>
+<td><a href="#DbAPIsWorker.abort">abort</a></td>
+<td>Public method to ask the thread to stop.</td>
+</tr><tr>
+<td><a href="#DbAPIsWorker.run">run</a></td>
+<td>Public method to perform the threads work.</td>
+</tr>
+</table>
+<a NAME="DbAPIsWorker.__init__" ID="DbAPIsWorker.__init__"></a>
+<h4>DbAPIsWorker (Constructor)</h4>
+<b>DbAPIsWorker</b>(<i>proxy, language, apiFiles, projectPath = ""</i>)
+<p>
+        Constructor
+</p><dl>
+<dt><i>proxy</i></dt>
+<dd>
+reference to the object that is proxied (DbAPIs)
+</dd><dt><i>language</i></dt>
+<dd>
+language of the APIs object (string)
+</dd><dt><i>apiFiles</i></dt>
+<dd>
+list of API files to process (list of strings)
+</dd><dt><i>projectPath</i></dt>
+<dd>
+path of the project. Only needed, if the APIs
+            are extracted out of the sources of a project. (string)
+</dd>
+</dl><a NAME="DbAPIsWorker.__autoCompletionWordSeparators" ID="DbAPIsWorker.__autoCompletionWordSeparators"></a>
+<h4>DbAPIsWorker.__autoCompletionWordSeparators</h4>
+<b>__autoCompletionWordSeparators</b>(<i>language</i>)
+<p>
+        Private method to get the word separator characters for a language.
+</p><dl>
+<dt><i>language</i></dt>
+<dd>
+language of the APIs object (string)
+</dd>
+</dl><dl>
+<dt>Returns:</dt>
+<dd>
+word separator characters (list of strings)
+</dd>
+</dl><a NAME="DbAPIsWorker.__deleteApiFile" ID="DbAPIsWorker.__deleteApiFile"></a>
+<h4>DbAPIsWorker.__deleteApiFile</h4>
+<b>__deleteApiFile</b>(<i>apiFile</i>)
+<p>
+        Private method to delete all references to an api file.
+</p><dl>
+<dt><i>apiFile</i></dt>
+<dd>
+filename of the raw API file (string)
+</dd>
+</dl><a NAME="DbAPIsWorker.__loadApiFile" ID="DbAPIsWorker.__loadApiFile"></a>
+<h4>DbAPIsWorker.__loadApiFile</h4>
+<b>__loadApiFile</b>(<i>apiFile</i>)
+<p>
+        Private method to read a raw API file into the database.
+</p><dl>
+<dt><i>apiFile</i></dt>
+<dd>
+filename of the raw API file (string)
+</dd>
+</dl><a NAME="DbAPIsWorker.__loadApiFileIfNewer" ID="DbAPIsWorker.__loadApiFileIfNewer"></a>
+<h4>DbAPIsWorker.__loadApiFileIfNewer</h4>
+<b>__loadApiFileIfNewer</b>(<i>apiFile</i>)
+<p>
+        Private method to load an API file, if it is newer than the one read
+        into the database.
+</p><dl>
+<dt><i>apiFile</i></dt>
+<dd>
+filename of the raw API file (string)
+</dd>
+</dl><a NAME="DbAPIsWorker.__storeApis" ID="DbAPIsWorker.__storeApis"></a>
+<h4>DbAPIsWorker.__storeApis</h4>
+<b>__storeApis</b>(<i>apis, apiFile, language</i>)
+<p>
+        Private method to put the API entries into the database.
+</p><dl>
+<dt><i>apis</i></dt>
+<dd>
+list of api entries (list of strings)
+</dd><dt><i>apiFile</i></dt>
+<dd>
+filename of the file read to get the APIs (string)
+</dd><dt><i>language</i></dt>
+<dd>
+programming language of the file of the APIs (string)
+</dd>
+</dl><a NAME="DbAPIsWorker.abort" ID="DbAPIsWorker.abort"></a>
+<h4>DbAPIsWorker.abort</h4>
+<b>abort</b>(<i></i>)
+<p>
+        Public method to ask the thread to stop.
+</p><a NAME="DbAPIsWorker.run" ID="DbAPIsWorker.run"></a>
+<h4>DbAPIsWorker.run</h4>
+<b>run</b>(<i></i>)
+<p>
+        Public method to perform the threads work.
+</p>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+</body></html>
\ No newline at end of file

eric ide

mercurial