[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    playground/base/plasma/applets/presence
From:       Abner Silva <abner.silva () kdemail ! net>
Date:       2009-08-05 15:20:42
Message-ID: 1249485642.276417.23740.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 1007347 by abnerf:

Now listening to global presence signals.

 M  +19 -0     presence.cpp  
 M  +2 -0      presence.h  


--- trunk/playground/base/plasma/applets/presence/presence.cpp #1007346:1007347
@@ -114,6 +114,13 @@
         m_globalWidget->setLayout (m_globalLayout);
 
         m_global = new GlobalPresenceWidget(this);
+
+        // Listening for global changes
+        connect(m_global, SIGNAL(presenceStatusChanged(const QString&)),
+                this, SLOT(onGlobalPresenceStatusChanged(const QString&)));
+        connect(m_global, SIGNAL(presenceMessageChanged(const QString&)),
+                this, SLOT(onGlobalPresenceMessageChanged(const QString&)));
+
         m_globalLayout->addItem(m_global);
         item->setWidget(m_globalWidget);
         item->setTitle(i18n("Global Presence"));
@@ -349,6 +356,18 @@
         service->deleteLater();
 }
 
+void PresenceApplet::onGlobalPresenceStatusChanged(const QString &status)
+{
+    foreach (AccountWidget *account, m_accounts.values())
+        setSourcePresence(account->id(), status, account->presenceMessage());
+}
+
+void PresenceApplet::onGlobalPresenceMessageChanged(const QString &msg)
+{
+    foreach (AccountWidget *account, m_accounts.values())
+        setSourcePresence(account->id(), account->presenceStatus(), msg);
+}
+
 void PresenceApplet::updateSize()
 {
     ExtenderItem *item = extender()->item("Accounts");
--- trunk/playground/base/plasma/applets/presence/presence.h #1007346:1007347
@@ -57,6 +57,8 @@
     void onPresenceChanged(const QString &presence,
             const QString &msg);
     void onJobCompleted();
+    void onGlobalPresenceStatusChanged(const QString &status);
+    void onGlobalPresenceMessageChanged(const QString &msg);
 
 protected:
     void initExtenderItem(Plasma::ExtenderItem *item);
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic