Make tabcompletion key configurable via shortcuts. fixes 1018
[quassel.git] / src / qtui / statusnotifieritemdbus.cpp
index 28f5dda..893b24d 100644 (file)
@@ -4,9 +4,9 @@
  *   Quasselfied 2010 by Manuel Nickschas <sputnick@quassel-irc.org>       *
  *                                                                         *
  *   This file 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) any later version.                                   *
+ *   it under the terms of the GNU Library General Public License (LGPL)   *
+ *   as published by the Free Software Foundation; either version 2 of the *
+ *   License, or (at your option) any later version.                       *
  *                                                                         *
  *   This program is distributed in the hope that it will be useful,       *
  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
 #include "statusnotifierwatcher.h"
 #include "statusnotifieritemadaptor.h"
 
-#ifdef Q_OS_WIN64    
-__inline int toInt(WId wid) 
+#ifdef Q_OS_WIN64
+__inline int toInt(WId wid)
 {
         return (int)((__int64)wid);
 }
 
 #else
-__inline int toInt(WId wid) 
+__inline int toInt(WId wid)
 {
         return (int)wid;
 }
-#endif        
+#endif
 
 // Marshall the ImageStruct data into a D-BUS argument
 const QDBusArgument &operator<<(QDBusArgument &argument, const DBusImageStruct &icon)
@@ -162,7 +162,6 @@ StatusNotifierItemDBus::StatusNotifierItemDBus(StatusNotifierItem *parent)
    new StatusNotifierItemAdaptor(this);
    //qDebug() << "service is" << m_service;
    registerService();
-   m_dbus.registerObject("/StatusNotifierItem", this);
 }
 
 StatusNotifierItemDBus::~StatusNotifierItemDBus()
@@ -170,12 +169,18 @@ StatusNotifierItemDBus::~StatusNotifierItemDBus()
     unregisterService();
 }
 
+QDBusConnection StatusNotifierItemDBus::dbusConnection() const
+{
+    return m_dbus;
+}
+
 // FIXME: prevent double registrations, also test this on platforms != KDE
 //
 void StatusNotifierItemDBus::registerService()
 {
     //qDebug() << "registering to" << m_service;
     m_dbus.registerService(m_service);
+    m_dbus.registerObject("/StatusNotifierItem", this);
 }
 
 // FIXME: see above
@@ -183,6 +188,7 @@ void StatusNotifierItemDBus::unregisterService()
 {
     //qDebug() << "unregistering from" << m_service;
     if(m_dbus.isConnected()) {
+        m_dbus.unregisterObject("/StatusNotifierItem");
         m_dbus.unregisterService(m_service);
     }
 }
@@ -275,6 +281,19 @@ DBusToolTipStruct StatusNotifierItemDBus::ToolTip() const
     return toolTip;
 }
 
+QString StatusNotifierItemDBus::IconThemePath() const
+{
+    return m_statusNotifierItem->iconThemePath();
+}
+
+//Menu
+
+QDBusObjectPath StatusNotifierItemDBus::Menu() const
+{
+    return QDBusObjectPath(m_statusNotifierItem->menuObjectPath());
+}
+
+
 //Interaction
 
 void StatusNotifierItemDBus::ContextMenu(int x, int y)