fixing dupe messages
[quassel.git] / src / qtui / mainwin.cpp
index e7390ea..8287ddd 100644 (file)
@@ -35,6 +35,7 @@
 #include "coreinfodlg.h"
 #include "coreconnectdlg.h"
 #include "debuglogwidget.h"
+#include "debugmessagemodelfilter.h"
 #include "iconloader.h"
 #include "inputwidget.h"
 #include "inputline.h"
@@ -198,6 +199,8 @@ void MainWin::setupActions() {
                                          qApp, SLOT(aboutQt())));
   coll->addAction("DebugNetworkModel", new Action(SmallIcon("tools-report-bug"), tr("Debug &NetworkModel"), coll,
                                        this, SLOT(on_actionDebugNetworkModel_triggered())));
+  coll->addAction("DebugMessageModel", new Action(SmallIcon("tools-report-bug"), tr("Debug &MessageModel"), coll,
+                                       this, SLOT(on_actionDebugMessageModel_triggered())));
   coll->addAction("DebugLog", new Action(SmallIcon("tools-report-bug"), tr("Debug &Log"), coll,
                                        this, SLOT(on_actionDebugLog_triggered())));
 }
@@ -234,6 +237,7 @@ void MainWin::setupMenus() {
   _helpMenu->addSeparator();
   _helpDebugMenu = _helpMenu->addMenu(SmallIcon("tools-report-bug"), tr("Debug"));
   _helpDebugMenu->addAction(coll->action("DebugNetworkModel"));
+  _helpDebugMenu->addAction(coll->action("DebugMessageModel"));
   _helpDebugMenu->addAction(coll->action("DebugLog"));
 }
 
@@ -737,6 +741,17 @@ void MainWin::on_actionDebugNetworkModel_triggered() {
   view->show();
 }
 
+void MainWin::on_actionDebugMessageModel_triggered() {
+  QTableView *view = new QTableView(0);
+  DebugMessageModelFilter *filter = new DebugMessageModelFilter(view);
+  filter->setSourceModel(Client::messageModel());
+  view->setModel(filter);
+  view->setAttribute(Qt::WA_DeleteOnClose, true);
+  view->verticalHeader()->hide();
+  view->horizontalHeader()->setStretchLastSection(true);
+  view->show();
+}
+
 void MainWin::on_actionDebugLog_triggered() {
   DebugLogWidget *logWidget = new DebugLogWidget(0);
   logWidget->show();