bool CAGEmotionSetup::Create() { setUseEmoticons(false); cleanup(); const string l_CurentName = SETTING(EMOTICONS_FILE); if (l_CurentName == "Disabled") { return true; } LoadEmotion(l_CurentName); //[+]PPA #ifndef _DEBUG loadOtherPacks(l_CurentName); #endif InitImages(); setUseEmoticons(true); return true; }
void EmoticonsManager::Load() { setUseEmoticons(false); if((SETTING(EMOTICONS_FILE) == "Disabled") || !Util::fileExists(Util::getPath(Util::PATH_EMOPACKS) + SETTING(EMOTICONS_FILE) + ".xml" )) { return; } try { SimpleXML xml; xml.fromXML(File(Util::getPath(Util::PATH_EMOPACKS) + SETTING(EMOTICONS_FILE) + ".xml", File::READ, File::OPEN).read()); if(xml.findChild("Emoticons")) { xml.stepIn(); while(xml.findChild("Emoticon")) { tstring strEmotionText = Text::toT(xml.getChildAttrib("PasteText")); if (strEmotionText.empty()) { strEmotionText = Text::toT(xml.getChildAttrib("Expression")); } string strEmotionBmpPath = xml.getChildAttrib("Bitmap"); if (!strEmotionBmpPath.empty()) { if (strEmotionBmpPath[0] == '.') { // change relative path strEmotionBmpPath = Util::getPath(Util::PATH_EMOPACKS) + strEmotionBmpPath; } else { strEmotionBmpPath = "EmoPacks\\" + strEmotionBmpPath; } } emoticons.push_back(new Emoticon(strEmotionText, strEmotionBmpPath)); } xml.stepOut(); } } catch(const Exception& e) { dcdebug("EmoticonsManager::Create: %s\n", e.getError().c_str()); return; } setUseEmoticons(true); }