/***************************************************************************
- * Copyright (C) 2005-07 by The Quassel Team *
+ * Copyright (C) 2005-07 by the Quassel IRC Team *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
+ * (at your option) version 3. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
// ui.ownNick->addItem(state->ownNick);
ChatWidget *chatWidget;
- if(_chatWidgets.contains(buf->uid())) {
- chatWidget = _chatWidgets[buf->uid()];
+ if(_chatWidgets.contains(buf)) {
+ chatWidget = _chatWidgets[buf];
} else {
chatWidget = new ChatWidget(this);
chatWidget->init(buf->networkName(), buf->name());
lines.append(dynamic_cast<ChatLine*>(msg));
}
chatWidget->setContents(lines);
+ connect(buf, SIGNAL(destroyed(QObject *)), this, SLOT(bufferDestroyed(QObject *)));
connect(buf, SIGNAL(msgAppended(AbstractUiMsg *)), chatWidget, SLOT(appendMsg(AbstractUiMsg *)));
connect(buf, SIGNAL(msgPrepended(AbstractUiMsg *)), chatWidget, SLOT(prependMsg(AbstractUiMsg *)));
- _chatWidgets[buf->uid()] = chatWidget;
+ _chatWidgets[buf] = chatWidget;
ui.stackedWidget->addWidget(chatWidget);
}
ui.stackedWidget->setCurrentWidget(chatWidget);
// ui.ownNick->addItem(state->ownNick);
}
+void BufferWidget::bufferDestroyed(QObject *buf) {
+ QWidget *widget = _chatWidgets[(Buffer*)buf];
+ ui.stackedWidget->removeWidget(widget);
+ widget->deleteLater();
+}
+
void BufferWidget::saveState() {
}
}
+
/*
void BufferWidget::displayMsg(Message msg) {
chatWidget->appendMsg(msg);