projects
/
quassel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Commit some preliminary work on the settingspage stuff.
[quassel.git]
/
src
/
qtui
/
nicklistwidget.cpp
diff --git
a/src/qtui/nicklistwidget.cpp
b/src/qtui/nicklistwidget.cpp
index
024ebeb
..
f2c5130
100644
(file)
--- a/
src/qtui/nicklistwidget.cpp
+++ b/
src/qtui/nicklistwidget.cpp
@@
-5,7
+5,7
@@
* 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 *
* 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 *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
@@
-44,6
+44,7
@@
void NickListWidget::setBuffer(Buffer *buf) {
nickViews[buf] = view;
ui.stackedWidget->addWidget(view);
ui.stackedWidget->setCurrentWidget(view);
nickViews[buf] = view;
ui.stackedWidget->addWidget(view);
ui.stackedWidget->setCurrentWidget(view);
+ connect(buf, SIGNAL(destroyed(QObject *)), this, SLOT(bufferDestroyed(QObject *)));
}
}
}
}
}
}
@@
-53,4
+54,13
@@
void NickListWidget::reset() {
ui.stackedWidget->removeWidget(view);
view->deleteLater();
}
ui.stackedWidget->removeWidget(view);
view->deleteLater();
}
+ nickViews.clear();
+}
+
+void NickListWidget::bufferDestroyed(QObject *buf) {
+ if(nickViews.contains((Buffer *)buf)) {
+ NickView *view = nickViews.take((Buffer *)buf);
+ ui.stackedWidget->removeWidget(view);
+ view->deleteLater();
+ }
}
}