X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtui%2Fmainwin.cpp;h=93909198826c0b8b3c25bd4503234fbbba99bbc0;hb=04e9d8b2eb741052d53d6f5aa484d93b17a21099;hp=925c64f71a7da5e155a80e390039a8757c58ffef;hpb=d1b2699b8a77947f1b7dd67841c6ecb4ea1fce1e;p=quassel.git diff --git a/src/qtui/mainwin.cpp b/src/qtui/mainwin.cpp index 925c64f7..93909198 100644 --- a/src/qtui/mainwin.cpp +++ b/src/qtui/mainwin.cpp @@ -25,6 +25,7 @@ #include "bufferviewconfig.h" #include "bufferviewfilter.h" #include "bufferviewmanager.h" +#include "channellistdlg.h" #include "client.h" #include "clientbacklogmanager.h" #include "coreconnectdlg.h" @@ -36,6 +37,7 @@ #include "signalproxy.h" #include "topicwidget.h" #include "inputwidget.h" +#include "irclistmodel.h" #include "verticaldock.h" #include "uisettings.h" #include "qtuisettings.h" @@ -72,6 +74,7 @@ MainWin::MainWin(QtUi *_gui, QWidget *parent) offlineTrayIcon(":/icons/quassel-icon-offline.png"), trayIconActive(false), timer(new QTimer(this)), + channelListDlg(new ChannelListDlg(this)), settingsDlg(new SettingsDlg(this)), debugConsole(new DebugConsole(this)) { @@ -191,6 +194,8 @@ void MainWin::addBufferView(BufferViewConfig *config) { view->setFilteredModel(Client::bufferModel(), config); view->show(); + connect(&view->showChannelList, SIGNAL(triggered()), this, SLOT(showChannelList())); + Client::bufferModel()->synchronizeView(view); dock->setWidget(view); @@ -496,6 +501,16 @@ void MainWin::coreConnectionDlgFinished(int /*code*/) { //exit(1); } +void MainWin::showChannelList(NetworkId netId) { + if(!netId.isValid()) { + QAction *action = qobject_cast(sender()); + if(action) + netId = action->data().value(); + } + channelListDlg->setNetwork(netId); + channelListDlg->show(); +} + void MainWin::showSettingsDlg() { settingsDlg->show(); }