X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtopia%2Fnicklistwidget.cpp;fp=src%2Fqtopia%2Fnicklistwidget.cpp;h=36f524a6076a9fc97166eb9cfe63cc3d126275f4;hp=e53b6a39042c24836031f5df7ee429369e73c58a;hb=69952553cf2f5248a0c7e964d6d5844065d26612;hpb=5ffc2c9018aee8b11750a956e9228ed70b3413ae diff --git a/src/qtopia/nicklistwidget.cpp b/src/qtopia/nicklistwidget.cpp index e53b6a39..36f524a6 100644 --- a/src/qtopia/nicklistwidget.cpp +++ b/src/qtopia/nicklistwidget.cpp @@ -19,11 +19,14 @@ ***************************************************************************/ #include "nicklistwidget.h" -//#include "nicktreemodel.h" + +#include "buffer.h" +#include "nickview.h" NickListWidget::NickListWidget(QWidget *parent) : QDialog(parent) { ui.setupUi(this); - + setModal(true); + setStyleSheet("background-color: rgba(220, 220, 255, 40%); color: rgb(0, 0, 0); font-size: 5pt;"); } @@ -34,7 +37,29 @@ NickListWidget::~NickListWidget() { } -void NickListWidget::setNickModel(NickTreeModel *model) { - //ui.nickView->setModel(model); +void NickListWidget::setBuffer(Buffer *buf) { + if(!buf) { + ui.stackedWidget->setCurrentWidget(ui.emptyPage); + return; + } + if(buf->bufferType() != Buffer::ChannelType) { + ui.stackedWidget->setCurrentWidget(ui.emptyPage); + } else { + if(nickViews.contains(buf)) { + ui.stackedWidget->setCurrentWidget(nickViews.value(buf)); + } else { + NickView *view = new NickView(this); + view->setModel(buf->nickModel()); + nickViews[buf] = view; + ui.stackedWidget->addWidget(view); + ui.stackedWidget->setCurrentWidget(view); + } + } +} +void NickListWidget::reset() { + foreach(NickView *view, nickViews.values()) { + ui.stackedWidget->removeWidget(view); + view->deleteLater(); + } }