<?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>KEmoticonsTheme</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"> </div> <h1>KEmoticonsTheme Class Reference</h1> <code>from PyKDE4.kutils import *</code> <p> <h2>Detailed Description</h2> <p>This class contains the emoticons theme </p> <table border="0" cellpadding="0" cellspacing="0"><tr><td colspan="2"><br><h2>Enumerations</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="#ParseModeEnum">ParseModeEnum</a> </td><td class="memItemRight" valign="bottom">{ DefaultParse, StrictParse, RelaxedParse, SkipHTML }</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="#TokenType">TokenType</a> </td><td class="memItemRight" valign="bottom">{ Undefined, Image, Text }</td></tr> <tr><td colspan="2"><br><h2>Methods</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#KEmoticonsTheme">__init__</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#KEmoticonsTheme">__init__</a> (self, <a href="../kutils/KEmoticonsTheme.html">KEmoticonsTheme</a> ket)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#KEmoticonsTheme">__init__</a> (self, <a href="../kutils/KEmoticonsProvider.html">KEmoticonsProvider</a> p)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#addEmoticon">addEmoticon</a> (self, QString emo, QString text, <a href="../kutils/KEmoticonsProvider.html#AddEmoticonOption">KEmoticonsProvider.AddEmoticonOption</a> option=KEmoticonsProvider.DoNotCopy)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#createNew">createNew</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">{QString:QStringList} </td><td class="memItemRight" valign="bottom"><a class="el" href="#emoticonsMap">emoticonsMap</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">QString </td><td class="memItemRight" valign="bottom"><a class="el" href="#fileName">fileName</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#isNull">isNull</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#loadTheme">loadTheme</a> (self, QString path)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">QString </td><td class="memItemRight" valign="bottom"><a class="el" href="#parseEmoticons">parseEmoticons</a> (self, QString text, <a href="../kutils/KEmoticonsTheme.html">KEmoticonsTheme.ParseMode</a> mode=KEmoticonsTheme.DefaultParse, QStringList exclude=QStringList())</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#removeEmoticon">removeEmoticon</a> (self, QString emo)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#save">save</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#setThemeName">setThemeName</a> (self, QString name)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">QString </td><td class="memItemRight" valign="bottom"><a class="el" href="#themeName">themeName</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">QString </td><td class="memItemRight" valign="bottom"><a class="el" href="#themePath">themePath</a> (self)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">[<a href="../kutils/KEmoticonsTheme.Token.html">KEmoticonsTheme.Token</a>] </td><td class="memItemRight" valign="bottom"><a class="el" href="#tokenize">tokenize</a> (self, QString message, <a href="../kutils/KEmoticonsTheme.html">KEmoticonsTheme.ParseMode</a> mode=KEmoticonsTheme.DefaultParse)</td></tr> </table> <hr><h2>Method Documentation</h2><a class="anchor" name="KEmoticonsTheme"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">__init__</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Default constructor, it creates a null emoticons theme you should probably never use this, instead use KEmoticons.theme() </p></div></div><a class="anchor" name="KEmoticonsTheme"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">__init__</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="../kutils/KEmoticonsTheme.html">KEmoticonsTheme</a> </td> <td class="paramname"><em>ket</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Copy constructor </p></div></div><a class="anchor" name="KEmoticonsTheme"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">__init__</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="../kutils/KEmoticonsProvider.html">KEmoticonsProvider</a> </td> <td class="paramname"><em>p</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Another constructor where you set the KEmoticonsProvider <b>p</b> you should probably never use this, instead use KEmoticons.theme() </p></div></div><a class="anchor" name="addEmoticon"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">bool addEmoticon</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype">QString </td> <td class="paramname"><em>emo</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype">QString </td> <td class="paramname"><em>text</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="../kutils/KEmoticonsProvider.html#AddEmoticonOption">KEmoticonsProvider.AddEmoticonOption</a> </td> <td class="paramname"><em>option=KEmoticonsProvider.DoNotCopy</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Add the emoticon <b>emo</b> with text <b>text</b> <pre class="fragment"> KEmoticonsTheme theme = KEmoticons().theme(); theme.addEmoticon("/path/to/smiley.png", ":) :-)"); </pre> </p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign="top"><em>emo</em> </td><td> path to the emoticon image <tr><td></td><td valign="top"><em>text</em> </td><td> the text of the emoticon separated by space for multiple text <tr><td></td><td valign="top"><em>copy</em> </td><td> whether or not copy <b>emo</b> into the theme directory </td></tr> </table></dl> <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> true if it can add the emoticon </dd></dl> </p></div></div><a class="anchor" name="createNew"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> createNew</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Create a new theme </p></div></div><a class="anchor" name="emoticonsMap"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">{QString:QStringList} emoticonsMap</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Returns a QHash that contains the emoticons path as keys and the text as values </p></div></div><a class="anchor" name="fileName"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">QString fileName</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Returns the file name of the theme </p></div></div><a class="anchor" name="isNull"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">bool isNull</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Check if the theme has a valid provider and it returns true if it can't find it </p></div></div><a class="anchor" name="loadTheme"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">bool loadTheme</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype">QString </td> <td class="paramname"><em>path</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Load the theme inside the directory <b>path</b> </p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign="top"><em>path</em> </td><td> path to the directory </td></tr> </table></dl> <p> </p></div></div><a class="anchor" name="parseEmoticons"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">QString parseEmoticons</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype">QString </td> <td class="paramname"><em>text</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="../kutils/KEmoticonsTheme.html">KEmoticonsTheme.ParseMode</a> </td> <td class="paramname"><em>mode=KEmoticonsTheme.DefaultParse</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype">QStringList </td> <td class="paramname"><em>exclude=QStringList()</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Parse emoticons in text <b>text</b> with ParseMode <b>mode</b> and optionally excluding emoticons from <b>exclude</b> <pre class="fragment"> KEmoticonsTheme theme = KEmoticons().theme(); QString text = ":D hi :)"; QStringList exclude(":)"); QString parsed = theme.parseEmoticons(text, KEmoticonsTheme.DefaultParse, exclude); // parsed will be "<img align="center" title=":D" alt=":D" src="/path/to/:D.png" width="24" height="24" /> hi :)" </pre> </p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign="top"><em>text</em> </td><td> the text to parse <tr><td></td><td valign="top"><em>mode</em> </td><td> how to parse the text <tr><td></td><td valign="top"><em>exclude</em> </td><td> a list of emoticons to exclude from the parsing </td></tr> </table></dl> <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> the text with emoticons replaced by html images </dd></dl> <dl class="note" compact><dt><b>Note:</b></dt><dd> SkipHTML is forced when using this function </dd></dl> </p></div></div><a class="anchor" name="removeEmoticon"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">bool removeEmoticon</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype">QString </td> <td class="paramname"><em>emo</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Remove the emoticon <b>emo,</b> this will not delete the image file too <pre class="fragment"> KEmoticonsTheme theme = KEmoticons().theme(); theme.removeEmoticon(":)"); </pre> </p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign="top"><em>emo</em> </td><td> the emoticon text to remove </td></tr> </table></dl> <p> <dl class="return" compact><dt><b>Returns:</b></dt><dd> true if it can delete the emoticon </dd></dl> </p></div></div><a class="anchor" name="save"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> save</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Save the emoticon theme </p></div></div><a class="anchor" name="setThemeName"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname"> setThemeName</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype">QString </td> <td class="paramname"><em>name</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Set the theme name </p><dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td></td><td valign="top"><em>name</em> </td><td> name of the theme </td></tr> </table></dl> <p> </p></div></div><a class="anchor" name="themeName"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">QString themeName</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Returns the theme name </p></div></div><a class="anchor" name="themePath"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">QString themePath</td> <td>(</td> <td class="paramtype"> </td> <td class="paramname"><em>self</em> )</td> <td width="100%"> </td> </tr> </table> </div> <div class="memdoc"><p>Returns the theme path </p></div></div><a class="anchor" name="tokenize"></a> <div class="memitem"> <div class="memproto"> <table class="memname"><tr> <td class="memname">[<a href="../kutils/KEmoticonsTheme.Token.html">KEmoticonsTheme.Token</a>] tokenize</td> <td>(</td> <td class="paramtype"> <em>self</em>, </td> <td class="paramname"></td> </tr><tr> <td class="memname"></td> <td></td> <td class="paramtype">QString </td> <td class="paramname"><em>message</em>, </td> </tr> <tr> <td class="memname"></td> <td></td> <td class="paramtype"><a href="../kutils/KEmoticonsTheme.html">KEmoticonsTheme.ParseMode</a> </td> <td class="paramname"><em>mode=KEmoticonsTheme.DefaultParse</em></td> </tr> <tr> <td></td> <td>)</td> <td></td> <td></td> <td width="100%"> </td> </tr></table> </div> <div class="memdoc"><p>Tokenize the message <b>message</b> with ParseMode <b>mode</b> <pre class="fragment"> KEmoticonsTheme theme = KEmoticons().theme(); QString text = "hi :)"; QList<Token> tokens = theme.tokenize(text, KEmoticonsTheme.DefaultParse); // tokens[0].text = "hi " // tokens[1].text = ":)" // tokens[1].picPath = "/path/to/:).png" // tokens[1].picHTMLCode = "<img align="center" title=":)" alt=":)" src="/path/to/:).png" width="24" height="24" />" </pre> </p></div></div><hr><h2>Enumeration Documentation</h2><a class="anchor" name="ParseModeEnum"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr><td class="memname">ParseModeEnum</td> </tr> </table> </div> <div class="memdoc"><p>The possible parse modes </p><dl compact><dt><b>Enumerator: </b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"><tr><td valign="top"><em>DefaultParse</em> = 0x0</td><td><tr><td valign="top"><em>StrictParse</em> = 0x1</td><td><tr><td valign="top"><em>RelaxedParse</em> = 0x2</td><td><tr><td valign="top"><em>SkipHTML</em> = 0x4</td><td></table> </dl> </div></div><p><a class="anchor" name="TokenType"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr><td class="memname">TokenType</td> </tr> </table> </div> <div class="memdoc"><p>TokenType, a token might be an image ( emoticon ) or text. </p><dl compact><dt><b>Enumerator: </b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"><tr><td valign="top"><em>Undefined</em> </td><td><tr><td valign="top"><em>Image</em> </td><td><tr><td valign="top"><em>Text</em> </td><td></table> </dl> </div></div><p> </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="mailto:simon@simonzone.com">Simon Edwards</a>.<br /> KDE<sup>®</sup> and <a href="../images/kde_gear_black.png">the K Desktop Environment<sup>®</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>