KUtils
KEmoticonsTheme Class Reference
This class contains the emoticons theme. More...
#include <kemoticonstheme.h>
Classes | |
struct | Token |
A token consists of a QString text which is either a regular text or a path to image depending on the type. More... | |
Public Types | |
enum | ParseModeEnum { DefaultParse = 0x0, StrictParse = 0x1, RelaxedParse = 0x2, SkipHTML = 0x4 } |
enum | TokenType { Undefined, Image, Text } |
Public Member Functions | |
bool | addEmoticon (const QString &emo, const QString &text, KEmoticonsProvider::AddEmoticonOption option=KEmoticonsProvider::DoNotCopy) |
void | createNew () |
QHash< QString, QStringList > | emoticonsMap () const |
QString | fileName () const |
bool | isNull () const |
KEmoticonsTheme (KEmoticonsProvider *p) | |
KEmoticonsTheme (const KEmoticonsTheme &ket) | |
KEmoticonsTheme () | |
bool | loadTheme (const QString &path) |
KEmoticonsTheme & | operator= (const KEmoticonsTheme &ket) |
QString | parseEmoticons (const QString &text, ParseMode mode=DefaultParse, const QStringList &exclude=QStringList()) const |
bool | removeEmoticon (const QString &emo) |
void | save () |
void | setThemeName (const QString &name) |
QString | themeName () const |
QString | themePath () const |
QList< Token > | tokenize (const QString &message, ParseMode mode=DefaultParse) const |
~KEmoticonsTheme () |
Detailed Description
This class contains the emoticons theme.Definition at line 34 of file kemoticonstheme.h.
Member Enumeration Documentation
The possible parse modes.
- Enumerator:
Definition at line 41 of file kemoticonstheme.h.
TokenType, a token might be an image ( emoticon ) or text.
- Enumerator:
-
Undefined Undefined, for completeness only. Image Token contains a path to an image. Text Token contains text.
Definition at line 53 of file kemoticonstheme.h.
Constructor & Destructor Documentation
KEmoticonsTheme::KEmoticonsTheme | ( | ) |
Default constructor, it creates a null emoticons theme you should probably never use this, instead use KEmoticons::theme().
Definition at line 51 of file kemoticonstheme.cpp.
KEmoticonsTheme::KEmoticonsTheme | ( | const KEmoticonsTheme & | ket | ) |
KEmoticonsTheme::KEmoticonsTheme | ( | KEmoticonsProvider * | p | ) |
Another constructor where you set the KEmoticonsProvider p
you should probably never use this, instead use KEmoticons::theme().
Definition at line 61 of file kemoticonstheme.cpp.
KEmoticonsTheme::~KEmoticonsTheme | ( | ) |
Member Function Documentation
bool KEmoticonsTheme::addEmoticon | ( | const QString & | emo, | |
const QString & | text, | |||
KEmoticonsProvider::AddEmoticonOption | option = KEmoticonsProvider::DoNotCopy | |||
) |
Add the emoticon emo
with text text
.
KEmoticonsTheme theme = KEmoticons().theme(); theme.addEmoticon("/path/to/smiley.png", ":) :-)");
- Parameters:
-
emo path to the emoticon image text the text of the emoticon separated by space for multiple text copy whether or not copy emo
into the theme directory
- Returns:
true
if it can add the emoticon
Definition at line 89 of file kemoticonstheme.cpp.
void KEmoticonsTheme::createNew | ( | ) |
QHash< QString, QStringList > KEmoticonsTheme::emoticonsMap | ( | ) | const |
Returns a QHash that contains the emoticons path as keys and the text as values.
Definition at line 143 of file kemoticonstheme.cpp.
QString KEmoticonsTheme::fileName | ( | ) | const |
bool KEmoticonsTheme::isNull | ( | ) | const |
Check if the theme has a valid provider and it returns true if it can't find it.
Definition at line 346 of file kemoticonstheme.cpp.
bool KEmoticonsTheme::loadTheme | ( | const QString & | path | ) |
Load the theme inside the directory path
.
- Parameters:
-
path path to the directory
Definition at line 71 of file kemoticonstheme.cpp.
KEmoticonsTheme & KEmoticonsTheme::operator= | ( | const KEmoticonsTheme & | ket | ) |
QString KEmoticonsTheme::parseEmoticons | ( | const QString & | text, | |
ParseMode | mode = DefaultParse , |
|||
const QStringList & | exclude = QStringList() | |||
) | const |
Parse emoticons in text text
with ParseMode mode
and optionally excluding emoticons from exclude
.
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 :)"
- Parameters:
-
text the text to parse mode how to parse the text exclude a list of emoticons to exclude from the parsing
- Returns:
- the text with emoticons replaced by html images
- Note:
- SkipHTML is forced when using this function
Definition at line 161 of file kemoticonstheme.cpp.
bool KEmoticonsTheme::removeEmoticon | ( | const QString & | emo | ) |
Remove the emoticon emo
, this will not delete the image file too.
KEmoticonsTheme theme = KEmoticons().theme(); theme.removeEmoticon(":)");
- Parameters:
-
emo the emoticon text to remove
- Returns:
true
if it can delete the emoticon
Definition at line 80 of file kemoticonstheme.cpp.
void KEmoticonsTheme::save | ( | ) |
void KEmoticonsTheme::setThemeName | ( | const QString & | name | ) |
Set the theme name.
- Parameters:
-
name name of the theme
Definition at line 116 of file kemoticonstheme.cpp.
QString KEmoticonsTheme::themeName | ( | ) | const |
QString KEmoticonsTheme::themePath | ( | ) | const |
QList< KEmoticonsTheme::Token > KEmoticonsTheme::tokenize | ( | const QString & | message, | |
ParseMode | mode = DefaultParse | |||
) | const |
Tokenize the message message
with ParseMode mode
.
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" />"
Definition at line 189 of file kemoticonstheme.cpp.
The documentation for this class was generated from the following files: