* changend groupchats load emoticons to the new method

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@914 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
defnax 2009-01-06 02:47:42 +00:00
parent 2637b88e8b
commit 5a3403a3a0

View File

@ -688,11 +688,12 @@ void PeersDialog::insertChat()
currenttxt += extraTxt; currenttxt += extraTxt;
QHashIterator<QString, QString> i(smileys); QHashIterator<QString, QString> i(smileys);
while(i.hasNext()) while(i.hasNext())
{ {
i.next(); i.next();
currenttxt.replace(i.key(), "<img src=\"" + i.value() + "\">"); foreach(QString code, i.key().split("|"))
} currenttxt.replace(code, "<img src=\"" + i.value() + "\" />");
}
msgWidget->setHtml(currenttxt); msgWidget->setHtml(currenttxt);
@ -980,18 +981,51 @@ void PeersDialog::displayInfoChatMenu(const QPoint& pos)
void PeersDialog::loadEmoticonsgroupchat() void PeersDialog::loadEmoticonsgroupchat()
{ {
QDir smdir(QApplication::applicationDirPath() + "/emoticons/kopete"); QString sm_codes;
QFileInfoList sminfo = smdir.entryInfoList(QStringList() << "*.gif" << "*.png", QDir::Files, QDir::Name); QFile sm_file(QApplication::applicationDirPath() + "/emoticons/emotes.acs");
foreach(QFileInfo info, sminfo) sm_file.open(QIODevice::ReadOnly);
sm_codes = sm_file.readAll();
sm_file.close();
sm_codes.remove("\n");
sm_codes.remove("\r");
int i = 0;
QString smcode;
QString smfile;
while(sm_codes[i] != '{')
{ {
QString smcode = info.fileName().replace(".gif", ""); i++;
QString smstring;
for(int i = 0; i < 9; i+=3) }
while (i < sm_codes.length()-2)
{
smcode = "";
smfile = "";
while(sm_codes[i] != '\"')
{ {
smstring += QString((char)smcode.mid(i,3).toInt()); i++;
} }
//qDebug(smstring.toAscii()); i++;
smileys.insert(smstring, info.absoluteFilePath()); while (sm_codes[i] != '\"')
{
smcode += sm_codes[i];
i++;
}
i++;
while(sm_codes[i] != '\"')
{
i++;
}
i++;
while(sm_codes[i] != '\"' && sm_codes[i+1] != ';')
{
smfile += sm_codes[i];
i++;
}
i++;
if(!smcode.isEmpty() && !smfile.isEmpty())
smileys.insert(smcode, smfile);
} }
} }
@ -1031,6 +1065,6 @@ void PeersDialog::smileyWidgetgroupchat()
void PeersDialog::addSmileys() void PeersDialog::addSmileys()
{ {
ui.lineEdit->setText(ui.lineEdit->toHtml() + qobject_cast<QPushButton*>(sender())->toolTip()); ui.lineEdit->setText(ui.lineEdit->toHtml() + qobject_cast<QPushButton*>(sender())->toolTip().split("|").first());
} }