Sophie

Sophie

distrib > Mageia > 4 > i586 > by-pkgid > 41640b7d04ef5b5040e7668305a5ba3d > files > 999

python-kde4-doc-4.11.4-1.mga4.noarch.rpm

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">

<head>
  <title>KTextEditor.CodeCompletionInterface</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <meta http-equiv="Content-Style-Type" content="text/css" />
  <link rel="stylesheet" type="text/css" href="../common/doxygen.css" />
  <link rel="stylesheet" media="screen" type="text/css" title="KDE Colors" href="../common/kde.css" />
</head>
<body>
<div id="container">
<div id="header">
  <div id="header_top">
    <div>
      <div>
        <img alt ="" src="../common/top-kde.jpg"/>
        KDE 4.9 PyKDE API Reference
      </div>
    </div>
  </div>
  <div id="header_bottom">
    <div id="location">
      <ul>
        <li>KDE's Python API</li>
      </ul>
    </div>

    <div id="menu">
      <ul>
        <li><a href="../modules.html">Overview</a></li>
<li><a href="http://techbase.kde.org/Development/Languages/Python">PyKDE Home</a></li>
<li><a href="http://kde.org/family/">Sitemap</a></li>
<li><a href="http://kde.org/contact/">Contact Us</a></li>
</ul>
    </div>
  </div>
</div>

<div id="body_wrapper">
<div id="body">
<div id="right">
<div class="content">
<div id="main">
<div class="clearer">&nbsp;</div>

<h1>CodeCompletionInterface Class Reference</h1>
<code>from PyKDE4.ktexteditor import *</code>
<p>


Namespace: <a href="../ktexteditor/KTextEditor.html">KTextEditor</a><br />
<h2>Detailed Description</h2>

<p>Code completion extension interface for the View.
</p>
<p>
<b>Introduction </b>
</p>
<p>
The CodeCompletionInterface is designed to provide code completion
functionality for a KTextEditor.View. This interface provides the basic
mechanisms to display a list of completions, update this list according
to user input, and allow the user to select a completion.
</p>
<p>
Essentially, this provides an item view for the available completions. In
order to use this interface, you will need to implement a
CodeCompletionModel that generates the relevant completions given the
current input.
</p>
<p>
<b>Accessing the CodeCompletionInterface </b>
</p>
<p>
The CodeCompletionInterface is an extension interface for a
View, i.e. the View inherits the interface provided that the
used KTextEditor library implements the interface. Use qobject_cast to
access the interface:
<pre class="fragment">
 // view is of type KTextEditor.View*
 KTextEditor.CodeCompletionInterface *iface =
     qobject_cast&lt;KTextEditor.CodeCompletionInterface*&gt;( view );

 if( iface ) {
     // the implementation supports the interface
     // do stuff
 }
</pre>
</p>
<p>
<b>Using the CodeCompletionInterface </b>
</p>
<p>
The CodeCompletionInterface can be used in different ways, which we
will call "automatic", and "manual".
</p>
<p>
In automatic mode, the CodeCompletionInterface will take care of
starting and aborting the generation of code completions as
appropriate, when the users inserts or changes text.
</p>
<p>
To use the interface in this way, first register a CodeCompletionModel
using registerCompletionModel(). Now call setAutomaticCompletionEnabled()
to enabled automatic completions.
</p>
<p>
If you need more control over when code completions get shown or not,
or which fragment of the text should be considered as the basis for
generated completions, proceed as follows:
</p>
<p>
Call setAutomaticCompletionEnabled(false) to disable automatic
completions. To start the generation of code completions for the current
word, call startCompletion(), with the appropriate parameters. To hide the
generated completions, use abortCompletion().
</p>
<p>
<dl class="see" compact><dt><b>See also:</b></dt><dd> KTextEditor.View, KTextEditor.CodeCompletionModel
</dd></dl>
</p>
<table border="0" cellpadding="0" cellspacing="0"><tr><td colspan="2"><br><h2>Methods</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abortCompletion">abortCompletion</a> (self)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="#forceCompletion">forceCompletion</a> (self)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="#isAutomaticInvocationEnabled">isAutomaticInvocationEnabled</a> (self)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="#isCompletionActive">isCompletionActive</a> (self)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="#registerCompletionModel">registerCompletionModel</a> (self, <a href="../ktexteditor/KTextEditor.CodeCompletionModel.html">KTextEditor.CodeCompletionModel</a> model)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="#setAutomaticInvocationEnabled">setAutomaticInvocationEnabled</a> (self, bool enabled=1)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="#startCompletion">startCompletion</a> (self, <a href="../ktexteditor/KTextEditor.Range.html">KTextEditor.Range</a> word, <a href="../ktexteditor/KTextEditor.CodeCompletionModel.html">KTextEditor.CodeCompletionModel</a> model)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="#unregisterCompletionModel">unregisterCompletionModel</a> (self, <a href="../ktexteditor/KTextEditor.CodeCompletionModel.html">KTextEditor.CodeCompletionModel</a> model)</td></tr>
</table>
<hr><h2>Method Documentation</h2><a class="anchor" name="abortCompletion"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname"> abortCompletion</td>
<td>(</td>
<td class="paramtype">&nbsp;</td>
<td class="paramname"><em>self</em>&nbsp;)</td>
<td width="100%"> </td>
</tr>
</table>
</div>
<div class="memdoc"><dl compact><dt><b>Abstract method:</b></dt><dd>This method is abstract and can be overridden but not called directly.</dd></dl><p>Abort the currently displayed code completion without executing any currently
selected completion. This is safe, even when the completion box is not currently
active.
<dl class="see" compact><dt><b>See also:</b></dt><dd> isCompletionActive()
</dd></dl>
</p></div></div><a class="anchor" name="forceCompletion"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname"> forceCompletion</td>
<td>(</td>
<td class="paramtype">&nbsp;</td>
<td class="paramname"><em>self</em>&nbsp;)</td>
<td width="100%"> </td>
</tr>
</table>
</div>
<div class="memdoc"><dl compact><dt><b>Abstract method:</b></dt><dd>This method is abstract and can be overridden but not called directly.</dd></dl><p>Force execution of the currently selected completion, and hide the code completion
box.
</p></div></div><a class="anchor" name="isAutomaticInvocationEnabled"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname">bool isAutomaticInvocationEnabled</td>
<td>(</td>
<td class="paramtype">&nbsp;</td>
<td class="paramname"><em>self</em>&nbsp;)</td>
<td width="100%"> </td>
</tr>
</table>
</div>
<div class="memdoc"><dl compact><dt><b>Abstract method:</b></dt><dd>This method is abstract and can be overridden but not called directly.</dd></dl><p>Determine the status of automatic code completion invocation.
</p></div></div><a class="anchor" name="isCompletionActive"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname">bool isCompletionActive</td>
<td>(</td>
<td class="paramtype">&nbsp;</td>
<td class="paramname"><em>self</em>&nbsp;)</td>
<td width="100%"> </td>
</tr>
</table>
</div>
<div class="memdoc"><dl compact><dt><b>Abstract method:</b></dt><dd>This method is abstract and can be overridden but not called directly.</dd></dl><p>Query whether the code completion box is currently displayed.
</p></div></div><a class="anchor" name="registerCompletionModel"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname"> registerCompletionModel</td>
<td>(</td>
<td class="paramtype">&nbsp;<em>self</em>, </td>
<td class="paramname"></td>
</tr><tr>
<td class="memname"></td>
<td></td>
<td class="paramtype"><a href="../ktexteditor/KTextEditor.CodeCompletionModel.html">KTextEditor.CodeCompletionModel</a>&nbsp;</td>
<td class="paramname"><em>model</em></td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td>
<td></td>
<td width="100%"> </td>
</tr></table>
</div>
<div class="memdoc"><dl compact><dt><b>Abstract method:</b></dt><dd>This method is abstract and can be overridden but not called directly.</dd></dl><p>Register a new code completion <b>model.</b>
</p><dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td></td><td valign="top"><em>model</em>&nbsp;</td><td> new completion model
</td></tr> </table></dl>
<p> <dl class="see" compact><dt><b>See also:</b></dt><dd> unregisterCompletionModel()
</dd></dl>
</p></div></div><a class="anchor" name="setAutomaticInvocationEnabled"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname"> setAutomaticInvocationEnabled</td>
<td>(</td>
<td class="paramtype">&nbsp;<em>self</em>, </td>
<td class="paramname"></td>
</tr><tr>
<td class="memname"></td>
<td></td>
<td class="paramtype">bool&nbsp;</td>
<td class="paramname"><em>enabled=1</em></td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td>
<td></td>
<td width="100%"> </td>
</tr></table>
</div>
<div class="memdoc"><dl compact><dt><b>Abstract method:</b></dt><dd>This method is abstract and can be overridden but not called directly.</dd></dl><p>Enable or disable automatic code completion invocation.
</p></div></div><a class="anchor" name="startCompletion"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname"> startCompletion</td>
<td>(</td>
<td class="paramtype">&nbsp;<em>self</em>, </td>
<td class="paramname"></td>
</tr><tr>
<td class="memname"></td>
<td></td>
<td class="paramtype"><a href="../ktexteditor/KTextEditor.Range.html">KTextEditor.Range</a>&nbsp;</td>
<td class="paramname"><em>word</em>, </td>
</tr>
<tr>
<td class="memname"></td>
<td></td>
<td class="paramtype"><a href="../ktexteditor/KTextEditor.CodeCompletionModel.html">KTextEditor.CodeCompletionModel</a>&nbsp;</td>
<td class="paramname"><em>model</em></td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td>
<td></td>
<td width="100%"> </td>
</tr></table>
</div>
<div class="memdoc"><dl compact><dt><b>Abstract method:</b></dt><dd>This method is abstract and can be overridden but not called directly.</dd></dl><p>Invoke code completion over a given range, with a specific <b>model.</b>
</p></div></div><a class="anchor" name="unregisterCompletionModel"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname"> unregisterCompletionModel</td>
<td>(</td>
<td class="paramtype">&nbsp;<em>self</em>, </td>
<td class="paramname"></td>
</tr><tr>
<td class="memname"></td>
<td></td>
<td class="paramtype"><a href="../ktexteditor/KTextEditor.CodeCompletionModel.html">KTextEditor.CodeCompletionModel</a>&nbsp;</td>
<td class="paramname"><em>model</em></td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td>
<td></td>
<td width="100%"> </td>
</tr></table>
</div>
<div class="memdoc"><dl compact><dt><b>Abstract method:</b></dt><dd>This method is abstract and can be overridden but not called directly.</dd></dl><p>Unregister a code completion <b>model.</b>
</p><dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td></td><td valign="top"><em>model</em>&nbsp;</td><td> the model that should be unregistered
</td></tr> </table></dl>
<p> <dl class="see" compact><dt><b>See also:</b></dt><dd> registerCompletionModel()
</dd></dl>
</p></div></div>
</div>
</div>
</div>

<div id="left">

<div class="menu_box">
<div class="nav_list">
<ul>
<li><a href="../allclasses.html">Full Index</a></li>
</ul>
</div>

<a name="cp-menu" /><div class="menutitle"><div>
  <h2 id="cp-menu-project">Modules</h2>
</div></div>
<div class="nav_list">
<ul><li><a href="../akonadi/index.html">akonadi</a></li>
<li><a href="../dnssd/index.html">dnssd</a></li>
<li><a href="../kdecore/index.html">kdecore</a></li>
<li><a href="../kdeui/index.html">kdeui</a></li>
<li><a href="../khtml/index.html">khtml</a></li>
<li><a href="../kio/index.html">kio</a></li>
<li><a href="../knewstuff/index.html">knewstuff</a></li>
<li><a href="../kparts/index.html">kparts</a></li>
<li><a href="../kutils/index.html">kutils</a></li>
<li><a href="../nepomuk/index.html">nepomuk</a></li>
<li><a href="../phonon/index.html">phonon</a></li>
<li><a href="../plasma/index.html">plasma</a></li>
<li><a href="../polkitqt/index.html">polkitqt</a></li>
<li><a href="../solid/index.html">solid</a></li>
<li><a href="../soprano/index.html">soprano</a></li>
</ul></div></div>

</div>

</div>
  <div class="clearer"/>
</div>

<div id="end_body"></div>
</div>
<div id="footer"><div id="footer_text">
This documentation is maintained by <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;simon&#64;simonzone&#46;com">Simon Edwards</a>.<br />
        KDE<sup>&#174;</sup> and <a href="../images/kde_gear_black.png">the K Desktop Environment<sup>&#174;</sup> logo</a> are registered trademarks of <a href="http://ev.kde.org/" title="Homepage of the KDE non-profit Organization">KDE e.V.</a> |
        <a href="http://www.kde.org/contact/impressum.php">Legal</a>
    </div></div>
</body>
</html>