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

List:       kde-commits
Subject:    branches/work/kdelirc
From:       Michael Zanetti <michael_zanetti () gmx ! net>
Date:       2010-02-28 23:31:41
Message-ID: 1267399901.048009.30040.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 1097348 by mzanetti:

we can now pause remotes through the tray app


 M  +0 -1      TODO  
 M  +3 -1      kded/kremotecontroldaemon.cpp  
 M  +2 -0      kded/kremotecontroldaemon.h  
 M  +21 -5     krcdnotifieritem/krcdnotifieritem.cpp  
 M  +1 -1      krcdnotifieritem/krcdnotifieritem.h  
 M  +8 -9      libkremotecontrol/dbusinterface.cpp  


--- branches/work/kdelirc/TODO #1097347:1097348
@@ -8,7 +8,6 @@
 * test/fix behaviour on newly attached or removed remotes during runtime (mzanetti)
 * rework icons
 * button selection via buttonpress in kcm
-* mute kded by tray app
 * remove compiler warnings
 * check why profile stringlist default values are not reaaded from xml
 * knewstuff
--- branches/work/kdelirc/kded/kremotecontroldaemon.cpp #1097347:1097348
@@ -90,11 +90,13 @@
       };
     
       void ignoreButtonEvents(const QString& remote){   
-          m_ignoreNextButtonList << remote;
+          kDebug() << "muting remote" << remote;
+          m_ignoreNextButtonList.append(remote);
           m_ignoreNextButtonList.removeDuplicates();
       }
     
       void considerButtonEvents(const QString& remote){
+          kDebug() << "unmuting remote" << remote;
           m_ignoreNextButtonList.removeAll(remote);
       }
     
--- branches/work/kdelirc/kded/kremotecontroldaemon.h #1097347:1097348
@@ -61,7 +61,9 @@
     QStringList getModesForRemote(const QString &remoteName);
     QString getCurrentMode(const QString& remoteName);
     bool eventsIgnored(const QString& remoteName);
+
     
+    
    signals:
       void modeChanged(const QString &remoteName, const QString &modeName);
       void buttonPressed();
--- branches/work/kdelirc/krcdnotifieritem/krcdnotifieritem.cpp #1097347:1097348
@@ -39,6 +39,7 @@
     setStandardActionsEnabled(false); 
     updateContextMenu();
     QDBusConnection::sessionBus().connect("org.kde.kded", "/modules/kremotecontrol", \
"org.kde.krcd", "buttonPressed",  this, SLOT(flash())); +    \
QDBusConnection::sessionBus().connect("org.kde.kded", "/modules/kremotecontrol", \
"org.kde.krcd", "modeChanged",  this, SLOT(updateContextMenu()));  }
 
 void KrcdNotifierItem::updateTray() {
@@ -81,6 +82,13 @@
             }
             entry->setData(QStringList() << remote << mode);
         }
+        modeMenu->addSeparator();
+        QAction *entry = modeMenu->addAction(i18n("Pause remote"));
+        entry->setCheckable(true);
+        entry->setData(QStringList() << remote);
+        if(DBusInterface::getInstance()->eventsIgnored(remote)){
+            entry->setChecked(true);
+        }
         m_menu.addMenu(modeMenu);
         connect(modeMenu, SIGNAL(triggered(QAction*)), this, \
SLOT(slotModeSelected(QAction*)));  
@@ -91,11 +99,19 @@
     KToolInvocation::startServiceByDesktopName("kcm_remotecontrol");
 }
 
-void KrcdNotifierItem::slotModeSelected ( QAction* action ) {
-    QString remote = action->data().toStringList().first();
-    QString mode = action->data().toStringList().last();
-    DBusInterface::getInstance()->changeMode(remote, mode);
-    action->setChecked(true);
+void KrcdNotifierItem::slotModeSelected(QAction* action) {
+    if(action->data().toStringList().count() > 1){
+        QString remote = action->data().toStringList().first();
+        QString mode = action->data().toStringList().last();
+        DBusInterface::getInstance()->changeMode(remote, mode);
+        action->setChecked(true);
+    } else {
+        if(action->isChecked()){
+            DBusInterface::getInstance()->ignoreButtonEvents(action->data().toStringList().first());
 +        } else {
+            DBusInterface::getInstance()->considerButtonEvents(action->data().toStringList().first()); \
 +        }
+    }
     updateTray();
 }
 
--- branches/work/kdelirc/krcdnotifieritem/krcdnotifieritem.h #1097347:1097348
@@ -34,13 +34,13 @@
         KMenu m_menu;
         
         void updateTray();
-        void updateContextMenu();
         
     private slots:
         void slotConfigure();
         void slotModeSelected(QAction *action);
         void flash();
         void flashOff();
+        void updateContextMenu();
 };
 
 #endif // KRCDNOTIFICATIONITEM_H
--- branches/work/kdelirc/libkremotecontrol/dbusinterface.cpp #1097347:1097348
@@ -219,7 +219,7 @@
 
 QStringList DBusInterface::getConfiguredRemotes() {
     QStringList remotes;
-      QDBusMessage m = QDBusMessage::createMethodCall("org.kde.kded", \
"/modules/kremotecontrol", +    QDBusMessage m = \
QDBusMessage::createMethodCall("org.kde.kded", "/modules/kremotecontrol",  \
"org.kde.krcd", "getConfiguredRemotes");      QDBusMessage response = \
QDBusConnection::sessionBus().call(m);  if (response.type() == \
QDBusMessage::ErrorMessage) { @@ -233,7 +233,7 @@
 void DBusInterface::considerButtonEvents(const QString& remoteName) {
    QDBusMessage m = QDBusMessage::createMethodCall("org.kde.kded", \
"/modules/kremotecontrol",  "org.kde.krcd", "considerButtonEvents");
-    m.arguments().append(remoteName);
+    m << remoteName;
     QDBusMessage response = QDBusConnection::sessionBus().call(m);
     if (response.type() == QDBusMessage::ErrorMessage) {
         kDebug() << response.errorMessage();
@@ -243,7 +243,7 @@
 void DBusInterface::ignoreButtonEvents(const QString& remoteName) {
    QDBusMessage m = QDBusMessage::createMethodCall("org.kde.kded", \
"/modules/kremotecontrol",  "org.kde.krcd", "ignoreButtonEvents");  
-    m.arguments().append(remoteName);
+    m << remoteName;
     QDBusMessage response = QDBusConnection::sessionBus().call(m);
     if (response.type() == QDBusMessage::ErrorMessage) {
         kDebug() << response.errorMessage();
@@ -399,7 +399,6 @@
                 kDebug() << "Got argument:" << arg.value().type() << "value" << \
arg.value();  m << arg.value();
             }
-            //   theDC->send(program.utf8(), action.object().utf8(), \
                action.method().prototypeNR().utf8(), data);
             QDBusMessage response = QDBusConnection::sessionBus().call(m);
             if (response.type() == QDBusMessage::ErrorMessage) {
                 kDebug() << response.errorMessage();
@@ -410,16 +409,16 @@
 
 
 void DBusInterface::changeMode(const QString& remoteName, const QString& modeName) { \
                
-      QDBusMessage m = QDBusMessage::createMethodCall("org.kde.kded", \
                "/modules/kremotecontrol",
-                     "org.kde.krcd", "changeMode");    		      
+    QDBusMessage m = QDBusMessage::createMethodCall("org.kde.kded", \
"/modules/kremotecontrol", +                     "org.kde.krcd", "changeMode");
     m << remoteName;
     m << modeName;
     QDBusMessage response = QDBusConnection::sessionBus().call(m);
     QDBusReply<bool> reply = QDBusConnection::sessionBus().call(m);
     if(reply.isValid()){      
-      if(!reply){
-	kDebug() << "Couldn't change to mode " << modeName << " on remote " << remoteName;
-      }
+        if(!reply){
+            kDebug() << "Couldn't change to mode " << modeName << " on remote " << \
remoteName; +        }
     }else{
         kDebug() << response.errorMessage();
     }


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

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