00001
00002
00003
00004 #include "pimemoticons.h"
00005
00006 #include <kstaticdeleter.h>
00007
00008 EmotIcons *EmotIcons::mSelf = 0;
00009 static KStaticDeleter<EmotIcons> staticEmotIconsDeleter;
00010
00011 EmotIcons *EmotIcons::self()
00012 {
00013 if ( !mSelf ) {
00014 staticEmotIconsDeleter.setObject( mSelf, new EmotIcons() );
00015 mSelf->readConfig();
00016 }
00017
00018 return mSelf;
00019 }
00020
00021 const char* const EmotIcons::EnumSindex::enumToString[] = { "angry_0", "angry_1", "bat_0", "bat_1", "cake_0", "cat_0", "confused_0", "confused_1", "confused_2", "confused_3", "cry_0", "cry_1", "cry_2", "cry_3", "dog_0", "embarassed_0", "embarassed_1", "film_0", "kiss_2", "kiss_3", "kiss_4", "kiss_5", "omg_0", "omg_1", "omg_2", "omg_3", "sad_0", "sad_1", "shade_1", "smile_0", "smile_1", "smile_2", "star_0", "teeth_0", "teeth_1", "teeth_2", "teeth_3", "tongue_0", "tongue_1", "tongue_2", "tongue_3", "wink_0", "wink_1" };
00022
00023 EmotIcons::EmotIcons( )
00024 : KConfigSkeleton( QString::fromLatin1( "pimemoticonsrc" ) )
00025 {
00026 mSelf = this;
00027 setCurrentGroup( QString::fromLatin1( "General" ) );
00028
00029 KConfigSkeleton::ItemString *itemTheme;
00030 itemTheme = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "Theme" ), mTheme, QString::fromLatin1( "Default" ) );
00031 addItem( itemTheme, QString::fromLatin1( "Theme" ) );
00032 KConfigSkeleton::ItemString *itemSmiley[43];
00033 itemSmiley[0] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_angry_0" ), mSmiley[0], QString::fromLatin1( ":-@" ) );
00034 addItem( itemSmiley[0], QString::fromLatin1( "smileyangry_0" ) );
00035 itemSmiley[1] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_angry_1" ), mSmiley[1], QString::fromLatin1( ":@" ) );
00036 addItem( itemSmiley[1], QString::fromLatin1( "smileyangry_1" ) );
00037 itemSmiley[2] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_bat_0" ), mSmiley[2], QString::fromLatin1( ":-[" ) );
00038 addItem( itemSmiley[2], QString::fromLatin1( "smileybat_0" ) );
00039 itemSmiley[3] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_bat_1" ), mSmiley[3], QString::fromLatin1( ":[" ) );
00040 addItem( itemSmiley[3], QString::fromLatin1( "smileybat_1" ) );
00041 itemSmiley[4] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_cake_0" ), mSmiley[4], QString::fromLatin1( "(^)" ) );
00042 addItem( itemSmiley[4], QString::fromLatin1( "smileycake_0" ) );
00043 itemSmiley[5] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_cat_0" ), mSmiley[5], QString::fromLatin1( "(@)" ) );
00044 addItem( itemSmiley[5], QString::fromLatin1( "smileycat_0" ) );
00045 itemSmiley[6] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_confused_0" ), mSmiley[6], QString::fromLatin1( ":-S" ) );
00046 addItem( itemSmiley[6], QString::fromLatin1( "smileyconfused_0" ) );
00047 itemSmiley[7] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_confused_1" ), mSmiley[7], QString::fromLatin1( ":S" ) );
00048 addItem( itemSmiley[7], QString::fromLatin1( "smileyconfused_1" ) );
00049 itemSmiley[8] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_confused_2" ), mSmiley[8], QString::fromLatin1( ":-s" ) );
00050 addItem( itemSmiley[8], QString::fromLatin1( "smileyconfused_2" ) );
00051 itemSmiley[9] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_confused_3" ), mSmiley[9], QString::fromLatin1( ":s" ) );
00052 addItem( itemSmiley[9], QString::fromLatin1( "smileyconfused_3" ) );
00053 itemSmiley[10] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_cry_0" ), mSmiley[10], QString::fromLatin1( ":'(" ) );
00054 addItem( itemSmiley[10], QString::fromLatin1( "smileycry_0" ) );
00055 itemSmiley[11] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_cry_1" ), mSmiley[11], QString::fromLatin1( ":'-(" ) );
00056 addItem( itemSmiley[11], QString::fromLatin1( "smileycry_1" ) );
00057 itemSmiley[12] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_cry_2" ), mSmiley[12], QString::fromLatin1( ";-(" ) );
00058 addItem( itemSmiley[12], QString::fromLatin1( "smileycry_2" ) );
00059 itemSmiley[13] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_cry_3" ), mSmiley[13], QString::fromLatin1( ";(" ) );
00060 addItem( itemSmiley[13], QString::fromLatin1( "smileycry_3" ) );
00061 itemSmiley[14] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_dog_0" ), mSmiley[14], QString::fromLatin1( "(&)" ) );
00062 addItem( itemSmiley[14], QString::fromLatin1( "smileydog_0" ) );
00063 itemSmiley[15] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_embarassed_0" ), mSmiley[15], QString::fromLatin1( ":-$" ) );
00064 addItem( itemSmiley[15], QString::fromLatin1( "smileyembarassed_0" ) );
00065 itemSmiley[16] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_embarassed_1" ), mSmiley[16], QString::fromLatin1( ":$" ) );
00066 addItem( itemSmiley[16], QString::fromLatin1( "smileyembarassed_1" ) );
00067 itemSmiley[17] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_film_0" ), mSmiley[17], QString::fromLatin1( "(~)" ) );
00068 addItem( itemSmiley[17], QString::fromLatin1( "smileyfilm_0" ) );
00069 itemSmiley[18] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_kiss_2" ), mSmiley[18], QString::fromLatin1( ":-X" ) );
00070 addItem( itemSmiley[18], QString::fromLatin1( "smileykiss_2" ) );
00071 itemSmiley[19] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_kiss_3" ), mSmiley[19], QString::fromLatin1( ":X" ) );
00072 addItem( itemSmiley[19], QString::fromLatin1( "smileykiss_3" ) );
00073 itemSmiley[20] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_kiss_4" ), mSmiley[20], QString::fromLatin1( ":-x" ) );
00074 addItem( itemSmiley[20], QString::fromLatin1( "smileykiss_4" ) );
00075 itemSmiley[21] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_kiss_5" ), mSmiley[21], QString::fromLatin1( ":x" ) );
00076 addItem( itemSmiley[21], QString::fromLatin1( "smileykiss_5" ) );
00077 itemSmiley[22] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_omg_0" ), mSmiley[22], QString::fromLatin1( ":-O" ) );
00078 addItem( itemSmiley[22], QString::fromLatin1( "smileyomg_0" ) );
00079 itemSmiley[23] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_omg_1" ), mSmiley[23], QString::fromLatin1( ":O" ) );
00080 addItem( itemSmiley[23], QString::fromLatin1( "smileyomg_1" ) );
00081 itemSmiley[24] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_omg_2" ), mSmiley[24], QString::fromLatin1( ":-o" ) );
00082 addItem( itemSmiley[24], QString::fromLatin1( "smileyomg_2" ) );
00083 itemSmiley[25] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_omg_3" ), mSmiley[25], QString::fromLatin1( ":o" ) );
00084 addItem( itemSmiley[25], QString::fromLatin1( "smileyomg_3" ) );
00085 itemSmiley[26] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_sad_0" ), mSmiley[26], QString::fromLatin1( ":-(" ) );
00086 addItem( itemSmiley[26], QString::fromLatin1( "smileysad_0" ) );
00087 itemSmiley[27] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_sad_1" ), mSmiley[27], QString::fromLatin1( ":(" ) );
00088 addItem( itemSmiley[27], QString::fromLatin1( "smileysad_1" ) );
00089 itemSmiley[28] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_shade_1" ), mSmiley[28], QString::fromLatin1( "8-)" ) );
00090 addItem( itemSmiley[28], QString::fromLatin1( "smileyshade_1" ) );
00091 itemSmiley[29] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_smile_0" ), mSmiley[29], QString::fromLatin1( ":-)" ) );
00092 addItem( itemSmiley[29], QString::fromLatin1( "smileysmile_0" ) );
00093 itemSmiley[30] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_smile_1" ), mSmiley[30], QString::fromLatin1( ":)" ) );
00094 addItem( itemSmiley[30], QString::fromLatin1( "smileysmile_1" ) );
00095 itemSmiley[31] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_smile_2" ), mSmiley[31], QString::fromLatin1( ":o)" ) );
00096 addItem( itemSmiley[31], QString::fromLatin1( "smileysmile_2" ) );
00097 itemSmiley[32] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_star_0" ), mSmiley[32], QString::fromLatin1( "(*)" ) );
00098 addItem( itemSmiley[32], QString::fromLatin1( "smileystar_0" ) );
00099 itemSmiley[33] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_teeth_0" ), mSmiley[33], QString::fromLatin1( ":-D" ) );
00100 addItem( itemSmiley[33], QString::fromLatin1( "smileyteeth_0" ) );
00101 itemSmiley[34] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_teeth_1" ), mSmiley[34], QString::fromLatin1( ":D" ) );
00102 addItem( itemSmiley[34], QString::fromLatin1( "smileyteeth_1" ) );
00103 itemSmiley[35] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_teeth_2" ), mSmiley[35], QString::fromLatin1( ":-d" ) );
00104 addItem( itemSmiley[35], QString::fromLatin1( "smileyteeth_2" ) );
00105 itemSmiley[36] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_teeth_3" ), mSmiley[36], QString::fromLatin1( ":d" ) );
00106 addItem( itemSmiley[36], QString::fromLatin1( "smileyteeth_3" ) );
00107 itemSmiley[37] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_tongue_0" ), mSmiley[37], QString::fromLatin1( ":-P" ) );
00108 addItem( itemSmiley[37], QString::fromLatin1( "smileytongue_0" ) );
00109 itemSmiley[38] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_tongue_1" ), mSmiley[38], QString::fromLatin1( ":P" ) );
00110 addItem( itemSmiley[38], QString::fromLatin1( "smileytongue_1" ) );
00111 itemSmiley[39] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_tongue_2" ), mSmiley[39], QString::fromLatin1( ":-p" ) );
00112 addItem( itemSmiley[39], QString::fromLatin1( "smileytongue_2" ) );
00113 itemSmiley[40] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_tongue_3" ), mSmiley[40], QString::fromLatin1( ":p" ) );
00114 addItem( itemSmiley[40], QString::fromLatin1( "smileytongue_3" ) );
00115 itemSmiley[41] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_wink_0" ), mSmiley[41], QString::fromLatin1( ";-)" ) );
00116 addItem( itemSmiley[41], QString::fromLatin1( "smileywink_0" ) );
00117 itemSmiley[42] = new KConfigSkeleton::ItemString( currentGroup(), QString::fromLatin1( "smiley_wink_1" ), mSmiley[42], QString::fromLatin1( ";)" ) );
00118 addItem( itemSmiley[42], QString::fromLatin1( "smileywink_1" ) );
00119 }
00120
00121 EmotIcons::~EmotIcons()
00122 {
00123 if ( mSelf == this )
00124 staticEmotIconsDeleter.setObject( mSelf, 0, false );
00125 }
00126