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

List:       kde-commits
Subject:    extragear/utils/yakuake
From:       Eike Hein <hein () kde ! org>
Date:       2009-03-18 18:52:51
Message-ID: 1237402371.535113.32185.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 941047 by hein:

Add the frequently-requested 'sessionIdForTerminalId(int terminalId)' 
and 'terminalIdsForSessionId(int sessionId)' D-Bus interfaces.


 M  +2 -0      ChangeLog  
 M  +5 -0      app/session.cpp  
 M  +1 -0      app/session.h  
 M  +28 -1     app/sessionstack.cpp  
 M  +3 -0      app/sessionstack.h  


--- trunk/extragear/utils/yakuake/ChangeLog #941046:941047
@@ -8,6 +8,8 @@
 * Slightly improved options layout on the Behavior page of the configura-
   tion dialog.
 * Added support for moving tabs on the tab bar by drag and drop.
+* Added the frequently-requested 'sessionIdForTerminalId(int terminalId)'
+  and 'terminalIdsForSessionId(int sessionId)' D-Bus interfaces.
 
 
 Changes in 2.9.4:
--- trunk/extragear/utils/yakuake/app/session.cpp #941046:941047
@@ -355,6 +355,11 @@
     return idList.join(",");
 }
 
+bool Session::hasTerminal(int terminalId)
+{
+    return (m_terminals.contains(terminalId));
+}
+
 void Session::runCommand(const QString& command, int terminalId)
 {
     if (terminalId == -1) terminalId = m_activeTerminalId;
--- trunk/extragear/utils/yakuake/app/session.h #941046:941047
@@ -48,6 +48,7 @@
 
         int activeTerminalId() { return m_activeTerminalId; }
         const QString terminalIdList();
+        bool hasTerminal(int terminalId);
 
 
     public slots:
--- trunk/extragear/utils/yakuake/app/sessionstack.cpp #941046:941047
@@ -175,7 +175,7 @@
 
     QHashIterator<int, Session*> it(m_sessions);
 
-    while (it.hasNext()) 
+    while (it.hasNext())
     {
         it.next();
 
@@ -185,6 +185,33 @@
     return idList.join(",");
 }
 
+const QString SessionStack::sessionIdForTerminalId(int terminalId)
+{
+    int sessionId = -1;
+
+    QHashIterator<int, Session*> it(m_sessions);
+
+    while (it.hasNext())
+    {
+        it.next();
+
+        if (it.value()->hasTerminal(terminalId))
+        {
+            sessionId = it.key();
+            break;
+        }
+    }
+
+    return QString::number(sessionId);
+}
+
+const QString SessionStack::terminalIdsForSessionId(int sessionId)
+{
+    if (!m_sessions.contains(sessionId)) return QString::number(-1);
+
+    return m_sessions[sessionId]->terminalIdList();
+}
+
 void SessionStack::runCommand(const QString& command)
 {
     if (m_activeSessionId == -1) return;
--- trunk/extragear/utils/yakuake/app/sessionstack.h #941046:941047
@@ -64,8 +64,11 @@
 
         Q_SCRIPTABLE int activeSessionId() { return m_activeSessionId; }
         Q_SCRIPTABLE int activeTerminalId();
+
         Q_SCRIPTABLE const QString sessionIdList();
         Q_SCRIPTABLE const QString terminalIdList();
+        Q_SCRIPTABLE const QString sessionIdForTerminalId(int terminalId);
+        Q_SCRIPTABLE const QString terminalIdsForSessionId(int sessionId);
 
         Q_SCRIPTABLE void runCommand(const QString& command);
         Q_SCRIPTABLE void runCommandInTerminal(int terminalId, const QString& command);
[prev in list] [next in list] [prev in thread] [next in thread] 

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