[SCM] ktp-contact-applet packaging branch, master, updated. debian/15.12.1-1-966-gde83ac5

Maximiliano Curia maxy at moszumanska.debian.org
Sat May 28 00:12:05 UTC 2016


Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-desktop-applets.git;a=commitdiff;h=65e05bd

The following commit has been merged in the master branch:
commit 65e05bd092013aabcb2db21f6922fd11961d7fe8
Author: Francesco Nwokeka <francesco.nwokeka at gmail.com>
Date:   Sun Dec 11 23:58:46 2011 +0100

    add context menu for presence changing
---
 presence/src/presence-applet.cpp | 37 ++++++++++++++++++++++++++++++++++++-
 presence/src/presence-applet.h   |  2 ++
 2 files changed, 38 insertions(+), 1 deletion(-)

diff --git a/presence/src/presence-applet.cpp b/presence/src/presence-applet.cpp
index 9e6075c..68ba824 100644
--- a/presence/src/presence-applet.cpp
+++ b/presence/src/presence-applet.cpp
@@ -20,6 +20,8 @@
 #include "globalpresencewrapper.h"
 #include "presenceapplet.h"
 
+#include <KAction>
+#include <KActionMenu>
 #include <KStandardDirs>
 
 #include <KTelepathy/global-presence.h>
@@ -55,6 +57,40 @@ int TelepathyPresenceApplet::appletWidth() const
     return geometry().width();
 }
 
+QList< QAction* > TelepathyPresenceApplet::contextualActions()
+{
+    QList<QAction*>contextActions;
+
+    KActionMenu *presenceMenu = new KActionMenu(i18n("Set presence"), this);
+    KAction *goOnlineAction = new KAction(KIcon("user-online"), i18n("Online"), this);
+    KAction *goBusyAction = new KAction(KIcon("user-busy"), i18n("Busy"), this);
+    KAction *goAwayAction = new KAction(KIcon("user-away"), i18n("Away"), this);
+    KAction *goExtendedAwayAction = new KAction(KIcon("user-away-extended"), i18n("Not Available"), this);
+    KAction *goHiddenAction = new KAction(KIcon("user-invisible"), i18n("Invisible"), this);
+    KAction *goOfflineAction = new KAction(KIcon("user-offline"), i18n("Offline"), this);
+
+    // connect actions
+    connect(goOnlineAction, SIGNAL(triggered()), m_globalPresenceWrapper, SLOT(setPresenceOnline()));
+    connect(goBusyAction, SIGNAL(triggered()), m_globalPresenceWrapper, SLOT(setPresenceBusy()));
+    connect(goAwayAction, SIGNAL(triggered()), m_globalPresenceWrapper, SLOT(setPresenceAway()));
+    connect(goExtendedAwayAction, SIGNAL(triggered()), m_globalPresenceWrapper, SLOT(setPresenceXa()));
+    connect(goHiddenAction, SIGNAL(triggered()), m_globalPresenceWrapper, SLOT(setPresenceHidden()));
+    connect(goOfflineAction, SIGNAL(triggered()), m_globalPresenceWrapper, SLOT(setPresenceOffline()));
+
+    presenceMenu->addAction(goOnlineAction);
+    presenceMenu->addAction(goBusyAction);
+    presenceMenu->addAction(goAwayAction);
+    presenceMenu->addAction(goExtendedAwayAction);
+    presenceMenu->addAction(goHiddenAction);
+    presenceMenu->addAction(goOfflineAction);
+    presenceMenu->addSeparator();
+
+    contextActions.append(presenceMenu);
+    contextActions.append(presenceMenu->addSeparator());
+
+    return contextActions;
+}
+
 void TelepathyPresenceApplet::init()
 {
     Plasma::Applet::init();
@@ -84,7 +120,6 @@ void TelepathyPresenceApplet::paintInterface(QPainter* p, const QStyleOptionGrap
 }
 
 
-
 // This is the command that links your applet to the .desktop file
 K_EXPORT_PLASMA_APPLET(telepathy-kde-presence-applet, TelepathyPresenceApplet)
 
diff --git a/presence/src/presence-applet.h b/presence/src/presence-applet.h
index 7d29586..8a7ac10 100644
--- a/presence/src/presence-applet.h
+++ b/presence/src/presence-applet.h
@@ -24,6 +24,7 @@
 #include <Plasma/DeclarativeWidget>
 
 class GlobalPresenceWrapper;
+class QAction;
 
 class TelepathyPresenceApplet: public Plasma::Applet
 {
@@ -39,6 +40,7 @@ public:
     int appletHeight() const;
     int appletWidth() const;
 
+    QList<QAction*>contextualActions();
     void init();
     void paintInterface(QPainter *p, const QStyleOptionGraphicsItem *option, const QRect& contentsRect);
 

-- 
ktp-contact-applet packaging



More information about the pkg-kde-commits mailing list