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