qtui: Clean up SystemTray
[quassel.git] / src / qtui / nicklistwidget.cpp
index 1b4b73c..dace390 100644 (file)
@@ -1,5 +1,5 @@
 /***************************************************************************
- *   Copyright (C) 2005-09 by the Quassel Project                          *
+ *   Copyright (C) 2005-2018 by the Quassel Project                        *
  *   devel@quassel-irc.org                                                 *
  *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
@@ -15,7 +15,7 @@
  *   You should have received a copy of the GNU General Public License     *
  *   along with this program; if not, write to the                         *
  *   Free Software Foundation, Inc.,                                       *
- *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.         *
  ***************************************************************************/
 
 #include "nicklistwidget.h"
@@ -84,6 +84,19 @@ void NickListWidget::showWidget(bool visible)
     }
 }
 
+void NickListWidget::setVisible(bool visible)
+{
+    QWidget::setVisible(visible);
+    QDockWidget *dock_ = dock();
+    if (!dock_)
+        return;
+
+    if (visible)
+        dock_->show();
+    else
+        dock_->close();
+}
+
 
 void NickListWidget::currentChanged(const QModelIndex &current, const QModelIndex &previous)
 {
@@ -175,7 +188,7 @@ void NickListWidget::rowsAboutToBeRemoved(const QModelIndex &parent, int start,
             if (!variant.isValid())
                 continue;
 
-            BufferId bufferId = qVariantValue<BufferId>(variant);
+            BufferId bufferId = variant.value<BufferId>();
             removeBuffer(bufferId);
         }
     }
@@ -228,6 +241,14 @@ NickListDock::NickListDock(const QString &title, QWidget *parent)
 //   }
 }
 
+void NickListDock::setLocked(bool locked) {
+    if (locked) {
+        setFeatures(0);
+    }
+    else {
+        setFeatures(QDockWidget::DockWidgetClosable | QDockWidget::DockWidgetMovable | QDockWidget::DockWidgetFloatable);
+    }
+}
 
 // NickListDock::~NickListDock() {
 //   QtUiSettings().setValue("ShowNickList", toggleViewAction()->isChecked());