Merge branch 'seezer'
[quassel.git] / src / qtui / mainwin.cpp
index cbf50ad..9390919 100644 (file)
 #include "bufferviewconfig.h"
 #include "bufferviewfilter.h"
 #include "bufferviewmanager.h"
-#ifdef SPUTDEV
-# include "chatline.h"
-#else
-# include "chatline-old.h"
-#endif
+#include "channellistdlg.h"
 #include "client.h"
 #include "clientbacklogmanager.h"
 #include "coreconnectdlg.h"
@@ -41,6 +37,7 @@
 #include "signalproxy.h"
 #include "topicwidget.h"
 #include "inputwidget.h"
+#include "irclistmodel.h"
 #include "verticaldock.h"
 #include "uisettings.h"
 #include "qtuisettings.h"
@@ -77,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))
 {
@@ -196,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);
@@ -501,6 +501,16 @@ void MainWin::coreConnectionDlgFinished(int /*code*/) {
   //exit(1);
 }
 
+void MainWin::showChannelList(NetworkId netId) {
+  if(!netId.isValid()) {
+    QAction *action = qobject_cast<QAction *>(sender());
+    if(action)
+      netId = action->data().value<NetworkId>();
+  }
+  channelListDlg->setNetwork(netId);
+  channelListDlg->show();
+}
+
 void MainWin::showSettingsDlg() {
   settingsDlg->show();
 }
@@ -525,7 +535,7 @@ void MainWin::closeEvent(QCloseEvent *event) {
 }
 
 void MainWin::systrayActivated( QSystemTrayIcon::ActivationReason activationReason) {
-  if (activationReason == QSystemTrayIcon::Trigger) {
+  if(activationReason == QSystemTrayIcon::Trigger) {
     toggleVisibility();
   }
 }
@@ -533,11 +543,12 @@ void MainWin::systrayActivated( QSystemTrayIcon::ActivationReason activationReas
 void MainWin::toggleVisibility() {
   if(isHidden() /*|| !isActiveWindow()*/) {
     show();
-    if(isMinimized())
-      if (isMaximized())
+    if(isMinimized()) {
+      if(isMaximized())
         showMaximized();
       else
         showNormal();
+    }
 
     raise();
     activateWindow();
@@ -575,7 +586,7 @@ void MainWin::receiveMessage(const Message &msg) {
 #ifndef SPUTDEV
     if(uiSettings.value("DisplayPopupMessages", QVariant(true)).toBool()) {
       // FIXME don't invoke style engine for this!
-      QString text = QtUi::style()->styleString(Message::mircToInternal(msg.text())).text;
+      QString text = QtUi::style()->styleString(Message::mircToInternal(msg.contents())).plainText;
       displayTrayIconMessage(title, text);
     }
 #endif