void MsgEdit::send() { if (msg->Type() == ICQ_MSGxSMS){ ICQUser *u = pClient->getUser(Uin); if (u){ string msgPhone; msgPhone = phoneEdit->lineEdit()->text().local8Bit(); PhoneBook::iterator it; for (it = u->Phones.begin(); it != u->Phones.end(); it++){ PhoneInfo *phone = static_cast<PhoneInfo*>(*it); if (phone->Type != SMS) continue; if (phone->getNumber() == msgPhone) break; } if (it == u->Phones.end()){ PhoneInfo *phone = new PhoneInfo; phone->setNumber(msgPhone.c_str(), SMS); phone->MyInfo = true; u->Phones.push_back(phone); ICQEvent e(EVENT_INFO_CHANGED, Uin); pClient->process_event(&e); } } } if (pMain->SpellOnSend){ switch (msg->Type()){ case ICQ_MSGxSMS: case ICQ_MSGxMSG: case ICQ_MSGxURL: case ICQ_MSGxFILE: case ICQ_MSGxCHAT: connect(edit, SIGNAL(spellDone(bool)), this, SLOT(spellDone(bool))); edit->spell(); return; default: break; } } makeMessage(); }