void ChatLogWin::showChatLog(QVector<ShareQQMsgPtr> &chat_logs) { ui_->msgbrowse->clear(); ShareQQMsgPtr msg; foreach (msg, chat_logs) { QQGroupChatMsg *chat_msg = static_cast<QQGroupChatMsg*>(msg.data()); qint64 time = chat_msg->time(); QDateTime date_time; date_time.setMSecsSinceEpoch(time * 1000); QString time_str = date_time.toString("dd ap hh:mm:ss"); insertNameLine(convertor_->convert(chat_msg->sendUin()) + " " + time_str, Qt::blue); for (int i = 0; i < chat_msg->msg_.size(); ++i) { if (chat_msg->msg_[i].type() == QQChatItem::kQQFace) { insertQQFace(chat_msg->msg_[i].content()); } else if (chat_msg->msg_[i].type() == QQChatItem::kWord) insertWord(chat_msg->msg_[i].content(), QFont(), Qt::black, 9); else { insertImg(chat_msg->msg_[i].content()); } } }
void QQTextEdit::dropEvent(QDropEvent *e) { if ( e->mimeData()->hasUrls() && e->mimeData()->hasImage() ) { QUrl url = e->mimeData()->urls()[0]; if ( isQQFace(url) ) { insertQQFace(getQQFaceId(url)); } else insertImg(url.path(), url.path()); } e->acceptProposedAction(); }