client: Port old HighlightRule to ExpressionMatch
[quassel.git] / src / qtui / statusnotifieritemdbus.h
index 670a7c7..6276ca2 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        *
@@ -16,7 +16,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.         *
  ***************************************************************************/
 
 #ifndef STATUSNOTIFIERITEMDBUS_H_
@@ -63,12 +63,29 @@ class StatusNotifierItemDBus : public QObject
     Q_PROPERTY(DBusImageVector AttentionIconPixmap READ AttentionIconPixmap)
     Q_PROPERTY(QString AttentionMovieName READ AttentionMovieName)
     Q_PROPERTY(DBusToolTipStruct ToolTip READ ToolTip)
+    Q_PROPERTY(QString IconThemePath READ IconThemePath)
+    Q_PROPERTY(QDBusObjectPath Menu READ Menu)
 
     friend class StatusNotifierItem;
 public:
     StatusNotifierItemDBus(StatusNotifierItem *parent);
     ~StatusNotifierItemDBus();
 
+    /**
+     * @return the dbus connection used by this object
+     */
+    QDBusConnection dbusConnection() const;
+
+    /**
+     * Register the StatusNotifierItem to DBus
+     */
+    void registerTrayIcon();
+
+    /**
+     * Unregister the StatusNotifierItem from DBus
+     */
+    void unregisterTrayIcon();
+
     /**
      * @return the service this object is registered on the bus under
      */
@@ -145,6 +162,15 @@ public:
      */
     DBusToolTipStruct ToolTip() const;
 
+    /**
+     * @return path to extra icon theme, to load application specific icons
+     */
+    QString IconThemePath() const;
+
+    /**
+     * @return object path to the dbusmenu object
+     */
+    QDBusObjectPath Menu() const;
 
 public Q_SLOTS:
     //interaction
@@ -201,7 +227,6 @@ Q_SIGNALS:
 
 private:
     StatusNotifierItem *m_statusNotifierItem;
-    QString m_service;
     QDBusConnection m_dbus;
     static int s_serviceCount;
 };