Fix includes
[quassel.git] / src / qtui / taskbarnotificationbackend.cpp
index 9fda55b..46e562b 100644 (file)
@@ -1,28 +1,32 @@
 /***************************************************************************
-*   Copyright (C) 2005-09 by the Quassel Project                          *
-*   devel@quassel-irc.org                                                 *
-*                                                                         *
-*   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) version 3.                                           *
-*                                                                         *
-*   This program is distributed in the hope that it will be useful,       *
-*   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
-*   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
-*   GNU General Public License for more details.                          *
-*                                                                         *
-*   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.             *
-***************************************************************************/
+ *   Copyright (C) 2005-2012 by the Quassel Project                        *
+ *   devel@quassel-irc.org                                                 *
+ *                                                                         *
+ *   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) version 3.                                           *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   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.             *
+ ***************************************************************************/
+
+#include <QApplication>
+#include <QCheckBox>
+#include <QHBoxLayout>
+#include <QSpinBox>
 
 #include "taskbarnotificationbackend.h"
 
-#include <QtGui>
-
 #include "clientsettings.h"
+#include "iconloader.h"
 #include "mainwin.h"
 #include "qtui.h"
 
@@ -31,15 +35,14 @@ TaskbarNotificationBackend::TaskbarNotificationBackend(QObject *parent)
 {
   NotificationSettings notificationSettings;
   _enabled = notificationSettings.value("Taskbar/Enabled", true).toBool();
-  _timeout = notificationSettings.value("Taskbar/Timeout", 0).toBool();
+  _timeout = notificationSettings.value("Taskbar/Timeout", 0).toInt();
 
   notificationSettings.notify("Taskbar/Enabled", this, SLOT(enabledChanged(const QVariant &)));
   notificationSettings.notify("Taskbar/Timeout", this, SLOT(timeoutChanged(const QVariant &)));
 }
 
 void TaskbarNotificationBackend::notify(const Notification &notification) {
-  Q_UNUSED(notification)
-  if(_enabled) {
+  if(_enabled && (notification.type == Highlight || notification.type == PrivMsg)) {
     QApplication::alert(QtUi::mainWindow(), _timeout);
   }
 }
@@ -69,15 +72,19 @@ TaskbarNotificationBackend::ConfigWidget::ConfigWidget(QWidget *parent) : Settin
 #else
   layout->addWidget(enabledBox = new QCheckBox(tr("Mark taskbar entry, timeout:"), this));
 #endif
+  enabledBox->setIcon(SmallIcon("flag-blue"));
+  enabledBox->setEnabled(true);
+
   timeoutBox = new QSpinBox(this);
-  timeoutBox->setMinimum(0);
+  timeoutBox->setMinimum(1);
   timeoutBox->setMaximum(99);
   timeoutBox->setSpecialValueText(tr("Unlimited"));
-  timeoutBox->setSuffix(tr(" s"));
+  timeoutBox->setSuffix(tr(" seconds"));
   layout->addWidget(timeoutBox);
-  layout->addStretch(1);
+  layout->addStretch(20);
 
   connect(enabledBox, SIGNAL(toggled(bool)), SLOT(widgetChanged()));
+  connect(enabledBox, SIGNAL(toggled(bool)), timeoutBox, SLOT(setEnabled(bool)));
   connect(timeoutBox, SIGNAL(valueChanged(int)), SLOT(widgetChanged()));
 }