Ported to libindicate 0.2.1.
authorAurelien Gateau <aurelien.gateau@canonical.com>
Wed, 16 Sep 2009 13:34:59 +0000 (15:34 +0200)
committerManuel Nickschas <sputnick@quassel-irc.org>
Wed, 16 Sep 2009 21:45:22 +0000 (23:45 +0200)
CMakeLists.txt
src/CMakeLists.txt
src/qtui/CMakeLists.txt
src/qtui/indicatornotificationbackend.cpp
src/qtui/indicatornotificationbackend.h

index ba4dab8..f44c02e 100644 (file)
@@ -237,7 +237,7 @@ endif(NOT HAVE_KDE)
 if(WITH_LIBINDICATE)
   find_package(PkgConfig QUIET)
   if(PKG_CONFIG_FOUND)
 if(WITH_LIBINDICATE)
   find_package(PkgConfig QUIET)
   if(PKG_CONFIG_FOUND)
-    pkg_check_modules(INDICATEQT indicate-qt)
+    pkg_check_modules(INDICATEQT indicate-qt>=0.2.1)
     if(INDICATEQT_FOUND)
       add_definitions(-DHAVE_INDICATEQT)
     endif(INDICATEQT_FOUND)
     if(INDICATEQT_FOUND)
       add_definitions(-DHAVE_INDICATEQT)
     endif(INDICATEQT_FOUND)
index 01eb0ca..43a853a 100644 (file)
@@ -34,6 +34,10 @@ qt4_add_resources(CLIENT_DEPS ${CLIENT_RCS})
 qt4_add_resources(CORE_DEPS ${CORE_RCS})
 qt4_add_resources(COMMON_DEPS ${COMMON_RCS})
 
 qt4_add_resources(CORE_DEPS ${CORE_RCS})
 qt4_add_resources(COMMON_DEPS ${COMMON_RCS})
 
+if(INDICATEQT_FOUND)
+  link_directories(${INDICATEQT_LIBRARY_DIRS})
+endif(INDICATEQT_FOUND)
+
 if(WANT_CORE)
   setup_qt4_variables(NETWORK SCRIPT SQL)
   add_executable(quasselcore common/main.cpp ${COMMON_DEPS} ${CORE_DEPS})
 if(WANT_CORE)
   setup_qt4_variables(NETWORK SCRIPT SQL)
   add_executable(quasselcore common/main.cpp ${COMMON_DEPS} ${CORE_DEPS})
index 801d8ee..a0d1665 100644 (file)
@@ -7,7 +7,6 @@ include(${QT_USE_FILE})
 
 if(INDICATEQT_FOUND)
   include_directories(${INDICATEQT_INCLUDE_DIRS})
 
 if(INDICATEQT_FOUND)
   include_directories(${INDICATEQT_INCLUDE_DIRS})
-  link_directories(${INDICATEQT_LIBRARY_DIRS})
 endif(INDICATEQT_FOUND)
 
 set(SOURCES
 endif(INDICATEQT_FOUND)
 
 set(SOURCES
index 3b808dd..26d3a4f 100644 (file)
@@ -21,7 +21,7 @@
 #include "indicatornotificationbackend.h"
 
 #include <qindicateserver.h>
 #include "indicatornotificationbackend.h"
 
 #include <qindicateserver.h>
-#include <qindicateindicatormessage.h>
+#include <qindicateindicator.h>
 
 #include "client.h"
 #include "clientsettings.h"
 
 #include "client.h"
 #include "clientsettings.h"
@@ -29,7 +29,7 @@
 #include "networkmodel.h"
 #include "qtui.h"
 
 #include "networkmodel.h"
 #include "qtui.h"
 
-class Indicator : public QIndicate::IndicatorMessage {
+class Indicator : public QIndicate::Indicator {
 public:
   uint lastNotificationId;
 };
 public:
   uint lastNotificationId;
 };
@@ -43,7 +43,7 @@ IndicatorNotificationBackend::IndicatorNotificationBackend(QObject *parent)
   notificationSettings.notify("Indicator/Enabled", this, SLOT(enabledChanged(const QVariant &)));
 
   _server = QIndicate::Server::defaultInstance();
   notificationSettings.notify("Indicator/Enabled", this, SLOT(enabledChanged(const QVariant &)));
 
   _server = QIndicate::Server::defaultInstance();
-  _server->setType("message.im");
+  _server->setType("messaging");
   _server->setDesktopFile(DESKTOP_FILE);
   connect(_server, SIGNAL(serverDisplay()), QtUi::mainWindow(), SLOT(forceActivated()));
 
   _server->setDesktopFile(DESKTOP_FILE);
   connect(_server, SIGNAL(serverDisplay()), QtUi::mainWindow(), SLOT(forceActivated()));
 
@@ -68,31 +68,32 @@ void IndicatorNotificationBackend::notify(const Notification &notification) {
   if(!indicator) {
     indicator = new Indicator;
     _indicatorHash.insert(bufferId, indicator);
   if(!indicator) {
     indicator = new Indicator;
     _indicatorHash.insert(bufferId, indicator);
-    connect(indicator, SIGNAL(display()),
-      SLOT(indicatorDisplayed()));
+    connect(indicator, SIGNAL(display(QIndicate::Indicator*)),
+      SLOT(indicatorDisplayed(QIndicate::Indicator*)));
   }
   indicator->lastNotificationId = notification.notificationId;
 
   BufferInfo::Type type = Client::networkModel()->bufferType(bufferId);
   }
   indicator->lastNotificationId = notification.notificationId;
 
   BufferInfo::Type type = Client::networkModel()->bufferType(bufferId);
-  QString sender;
+  QString name;
   if (type == BufferInfo::QueryBuffer) {
   if (type == BufferInfo::QueryBuffer) {
-    sender = notification.sender;
+    name = notification.sender;
   } else {
   } else {
-    sender = QString("%1 (%2)")
+    name = QString("%1 (%2)")
       .arg(Client::networkModel()->bufferName(bufferId))
       .arg(notification.sender);
   }
       .arg(Client::networkModel()->bufferName(bufferId))
       .arg(notification.sender);
   }
-  indicator->setProperty("sender", sender);
+  indicator->setNameProperty(name);
 
 
-  indicator->setProperty("time", QTime::currentTime());
+  indicator->setTimeProperty(QDateTime::currentDateTime());
 
   QModelIndex index = Client::networkModel()->bufferIndex(bufferId);
   QVariant icon = QtUi::style()->bufferViewItemData(index, Qt::DecorationRole);
   if (icon.canConvert<QPixmap>()) {
     QImage image = icon.value<QPixmap>().toImage();
 
   QModelIndex index = Client::networkModel()->bufferIndex(bufferId);
   QVariant icon = QtUi::style()->bufferViewItemData(index, Qt::DecorationRole);
   if (icon.canConvert<QPixmap>()) {
     QImage image = icon.value<QPixmap>().toImage();
-    indicator->setProperty("icon", image);
+    indicator->setIconProperty(image);
   }
 
   }
 
+  indicator->setDrawAttentionProperty(true);
   indicator->show();
 }
 
   indicator->show();
 }
 
@@ -128,8 +129,8 @@ void IndicatorNotificationBackend::enabledChanged(const QVariant &v) {
   }
 }
 
   }
 }
 
-void IndicatorNotificationBackend::indicatorDisplayed() {
-  Indicator *indicator = static_cast<Indicator*>(sender());
+void IndicatorNotificationBackend::indicatorDisplayed(QIndicate::Indicator *_indicator) {
+  Indicator *indicator = static_cast<Indicator *>(_indicator);
   emit activated(indicator->lastNotificationId);
 }
 
   emit activated(indicator->lastNotificationId);
 }
 
index 2188566..d187ff1 100644 (file)
@@ -30,6 +30,7 @@
 
 namespace QIndicate {
 class Server;
 
 namespace QIndicate {
 class Server;
+class Indicator;
 }
 
 class Indicator;
 }
 
 class Indicator;
@@ -49,7 +50,7 @@ public:
 
 private slots:
   void enabledChanged(const QVariant &);
 
 private slots:
   void enabledChanged(const QVariant &);
-  void indicatorDisplayed();
+  void indicatorDisplayed(QIndicate::Indicator *);
 
 private:
   class ConfigWidget;
 
 private:
   class ConfigWidget;