• Skip to content
  • Skip to link menu
KDE 4.2 API Reference
  • KDE API Reference
  • kdelibs
  • Sitemap
  • Contact Us
 

KUtils

KEmoticonsTheme Class Reference

This class contains the emoticons theme. More...

#include <kemoticonstheme.h>

List of all members.


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

enum KEmoticonsTheme::ParseModeEnum

The possible parse modes.

Enumerator:
DefaultParse  Use strict or relaxed according to the config.
StrictParse  Strict parsing requires a space between each emoticon.
RelaxedParse  Parse mode where all possible emoticon matches are allowed.
SkipHTML  Skip emoticons within HTML.

Definition at line 41 of file kemoticonstheme.h.

enum KEmoticonsTheme::TokenType

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  ) 

Copy constructor.

Definition at line 56 of file kemoticonstheme.cpp.

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 (  ) 

Destructor.

Definition at line 67 of file kemoticonstheme.cpp.


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 (  ) 

Create a new theme.

Definition at line 152 of file kemoticonstheme.cpp.

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

Returns the file name of the theme.

Definition at line 134 of file kemoticonstheme.cpp.

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  ) 

For internal use only.

Definition at line 351 of file kemoticonstheme.cpp.

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 (  ) 

Save the emoticon theme.

Definition at line 98 of file kemoticonstheme.cpp.

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

Returns the theme name.

Definition at line 107 of file kemoticonstheme.cpp.

QString KEmoticonsTheme::themePath (  )  const

Returns the theme path.

Definition at line 125 of file kemoticonstheme.cpp.

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:
  • kemoticonstheme.h
  • kemoticonstheme.cpp

KUtils

Skip menu "KUtils"
  • Main Page
  • Namespace List
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Namespace Members
  • Class Members
  • Related Pages

kdelibs

Skip menu "kdelibs"
  • DNSSD
  • Interfaces
  •   KHexEdit
  •   KMediaPlayer
  •   KSpeech
  •   KTextEditor
  • Kate
  • kconf_update
  • KDE3Support
  •   KUnitTest
  • KDECore
  • KDED
  • KDEsu
  • KDEUI
  • KDocTools
  • KFile
  • KHTML
  • KImgIO
  • KInit
  • kio
  • KIOSlave
  • KJS
  •   KJS-API
  •   WTF
  • kjsembed
  • KNewStuff
  • KParts
  • Kross
  • KUtils
  • Nepomuk
  • Plasma
  • Solid
  • Sonnet
  • ThreadWeaver
Generated for kdelibs by doxygen 1.5.7
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal