53 { |
53 { |
54 emit chatLine(chatEditLine->text()); |
54 emit chatLine(chatEditLine->text()); |
55 chatEditLine->clear(); |
55 chatEditLine->clear(); |
56 } |
56 } |
57 |
57 |
58 void HWChatWidget::onChatStringFromNet(const QStringList& str) |
58 void HWChatWidget::onChatStringFromNet(const QString& str) |
59 { |
59 { |
60 if (str.size() < 2) return; |
60 if (str.size() < 2) return; |
61 QListWidget* w = chatText; |
61 QListWidget* w = chatText; |
62 w->addItem(str[0]+": "+str[1]); |
|
63 w->scrollToBottom(); |
62 w->scrollToBottom(); |
64 w->setSelectionMode(QAbstractItemView::NoSelection); |
63 w->setSelectionMode(QAbstractItemView::NoSelection); |
65 } |
64 } |
66 |
65 |
67 void HWChatWidget::nickAdded(const QString& nick) |
66 void HWChatWidget::nickAdded(const QString& nick) |
68 { |
67 { |
69 chatNicks->addItem(nick); |
68 chatNicks->addItem(nick); |
70 chatText->addItem(QString(tr("* %1 joined")).arg(nick)); |
|
71 chatText->scrollToBottom(); |
|
72 } |
69 } |
73 |
70 |
74 void HWChatWidget::nickRemoved(const QString& nick) |
71 void HWChatWidget::nickRemoved(const QString& nick) |
75 { |
72 { |
76 QList<QListWidgetItem *> items=chatNicks->findItems(nick, Qt::MatchExactly); |
73 QList<QListWidgetItem *> items=chatNicks->findItems(nick, Qt::MatchExactly); |
77 for(QList<QListWidgetItem *>::iterator it=items.begin(); it!=items.end();) { |
74 for(QList<QListWidgetItem *>::iterator it=items.begin(); it!=items.end();) { |
78 chatNicks->takeItem(chatNicks->row(*it)); |
75 chatNicks->takeItem(chatNicks->row(*it)); |
79 ++it; |
76 ++it; |
80 } |
77 } |
81 chatText->addItem(QString(tr("* %1 left")).arg(nick)); |
|
82 chatText->scrollToBottom(); |
|
83 } |
78 } |
84 |
79 |
85 void HWChatWidget::clear() |
80 void HWChatWidget::clear() |
86 { |
81 { |
87 chatText->clear(); |
82 chatText->clear(); |