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

List:       kde-commits
Subject:    koffice/kexi/scripting
From:       Sebastian Sauer <mail () dipe ! org>
Date:       2005-03-22 16:24:28
Message-ID: 20050322162428.11F903C3 () office ! kde ! org
[Download RAW message or body]

CVS commit by sebsauer: 

ScriptContainer::connect() and disconnect() are working now.


  M +7 -6      api/signalhandler.cpp   1.3
  M +4 -1      api/signalhandler.h   1.3
  M +1 -1      main/scriptcontainer.h   1.3


--- koffice/kexi/scripting/api/signalhandler.cpp  #1.2:1.3
@@ -34,10 +34,12 @@ using namespace Kross::Api;
 SignalHandler::SignalHandler(QtObject* qtobj)
     : QObject(qtobj->m_object)
+    , m_scriptcontainer(0)
     , m_qtobj(qtobj)
 {
 }
 
-SignalHandler::SignalHandler(QObject* obj)
-    : QObject(obj)
+SignalHandler::SignalHandler(ScriptContainer* scriptcontainer)
+    : QObject(scriptcontainer)
+    , m_scriptcontainer(scriptcontainer)
     , m_qtobj(0)
 {
@@ -59,5 +61,5 @@ bool SignalHandler::connect(QObject *sen
 }
 
-bool SignalHandler::disconnect(QObject *sender, const char *signal, const QString& functionname)
+bool SignalHandler::disconnect(QObject *sender, const char *signal, const QString& /*functionname*/)
 {
     for(QValueList<Connection>::Iterator it = m_connections.begin(); it != m_connections.end(); ++it) {
@@ -65,5 +67,5 @@ bool SignalHandler::disconnect(QObject *
         if((QObject*)conn.sender == sender
            && qstrcmp(conn.signal, signal) == 0
-           //&& qstrcmp(conn.function, functionname) == 0
+           //&& qstrcmp(conn.function, functionname) == 0 //TODO
         ) {
             if(! disconnect(conn)) return false;
@@ -130,6 +132,5 @@ void SignalHandler::callback()
 
 //TODO
-//m_qtobj->m_scriptcontainer->execute();
-
+if(m_scriptcontainer) m_scriptcontainer->callFunction(conn.function);
         }
     }

--- koffice/kexi/scripting/api/signalhandler.h  #1.2:1.3
@@ -32,4 +32,6 @@
 namespace Kross { namespace Api {
 
+    // Forward declarations.
+    class ScriptContainer;
     class QtObject;
 
@@ -40,5 +42,5 @@ namespace Kross { namespace Api {
         public:
             explicit SignalHandler(QtObject* qtobj);
-            explicit SignalHandler(QObject* obj);
+            explicit SignalHandler(ScriptContainer* scriptcontainer);
             ~SignalHandler();
 
@@ -63,4 +65,5 @@ namespace Kross { namespace Api {
 
         private:
+            ScriptContainer* m_scriptcontainer;
             QtObject* m_qtobj;
 

--- koffice/kexi/scripting/main/scriptcontainer.h  #1.2:1.3
@@ -40,5 +40,5 @@ namespace Kross { namespace Api {
      * The ScriptContainer class represents a single scriptfile.
      */
-    class /*KROSS_MAIN_EXPORT*/ ScriptContainer : private QObject
+    class /*KROSS_MAIN_EXPORT*/ ScriptContainer : public QObject
     {
             Q_OBJECT


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

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