Message *MsgViewBase::currentMessage() { int para = paragraphAt(m_popupPos); if (para < 0) return NULL; for (; para >= 0; para--){ QString s = text(para); int n = s.find(MSG_HREF); if (n < 0) continue; s = s.mid(n + strlen(MSG_HREF)); unsigned long id = atol(getToken(s, ',').latin1()); getToken(s, ','); s = getToken(s, '\"'); Message *msg = History::load(id, s.utf8(), m_id); if (msg) return msg; } return NULL; }
Message *MsgViewBase::currentMessage() { int para = paragraphAt(m_popupPos); if (para < 0) return NULL; for (; para >= 0; para--){ QString s = text(para); int n = s.find(MSG_ANCHOR); if (n < 0) continue; s = s.mid(n + strlen(MSG_ANCHOR)); n = s.find("\""); if (n < 0) continue; string client; unsigned id = messageId(s.left(n), client); Message *msg = History::load(id, client.c_str(), m_id); if (msg) return msg; } return NULL; }