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

List:       kde-commits
Subject:    branches/KDE/4.4/kdebase/runtime/plasma/scriptengines/javascript
From:       Aaron J. Seigo <aseigo () kde ! org>
Date:       2010-02-13 0:45:13
Message-ID: 1266021913.093344.31479.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 1089371 by aseigo:

make DataEngine::serviceForSource work with the bindings


 M  +41 -2     simplebindings/qscriptbookkeeping.cpp  
 M  +0 -7      simplejavascriptapplet.cpp  


--- branches/KDE/4.4/kdebase/runtime/plasma/scriptengines/javascript/simplebindings/qscriptbookkeeping.cpp \
#1089370:1089371 @@ -185,6 +185,42 @@
     extender = static_cast<Plasma::Extender *>(obj);
 }
 
+typedef Plasma::Service *ServicePtr;
+QScriptValue qScriptValueFromService(QScriptEngine *engine, const ServicePtr \
&service) +{
+    return engine->newQObject(const_cast<Plasma::Service *>(service), \
QScriptEngine::AutoOwnership, QScriptEngine::PreferExistingWrapperObject); +}
+
+void serviceFromQScriptValue(const QScriptValue &scriptValue, ServicePtr &service)
+{
+    QObject *obj = scriptValue.toQObject();
+    service = static_cast<Plasma::Service *>(obj);
+}
+
+typedef Plasma::DataEngine *DataEnginePtr;
+QScriptValue qScriptValueFromDataEngine(QScriptEngine *engine, const DataEnginePtr \
&dataEngine) +{
+    return engine->newQObject(const_cast<Plasma::DataEngine *>(dataEngine), \
QScriptEngine::AutoOwnership, QScriptEngine::PreferExistingWrapperObject); +}
+
+void dataEngineFromQScriptValue(const QScriptValue &scriptValue, DataEnginePtr \
&dataEngine) +{
+    QObject *obj = scriptValue.toQObject();
+    dataEngine = static_cast<Plasma::DataEngine *>(obj);
+}
+
+typedef Plasma::ServiceJob *ServiceJobPtr;
+QScriptValue qScriptValueFromServiceJob(QScriptEngine *engine, const ServiceJobPtr \
&serviceJob) +{
+    return engine->newQObject(const_cast<Plasma::ServiceJob *>(serviceJob), \
QScriptEngine::AutoOwnership, QScriptEngine::PreferExistingWrapperObject); +}
+
+void serviceJobFromQScriptValue(const QScriptValue &scriptValue, ServiceJobPtr \
&serviceJob) +{
+    QObject *obj = scriptValue.toQObject();
+    serviceJob = static_cast<Plasma::ServiceJob *>(obj);
+}
+
 void registerSimpleAppletMetaTypes(QScriptEngine *engine)
 {
     qScriptRegisterMetaType<QGraphicsWidget*>(engine, \
qScriptValueFromQGraphicsWidget, qGraphicsWidgetFromQScriptValue); @@ -194,9 +230,12 \
                @@
     qScriptRegisterMetaType<KIO::Job *>(engine, qScriptValueFromKIOJob, \
qKIOJobFromQScriptValue);  
     qScriptRegisterMetaType<Plasma::Animation *>(engine, qScriptValueFromAnimation, \
abstractAnimationFromQScriptValue); +    qScriptRegisterMetaType<Plasma::Extender \
*>(engine, qScriptValueFromExtender , extenderFromQScriptValue); +    \
qScriptRegisterMetaType<Plasma::VideoWidget::Controls>(engine, \
qScriptValueFromControls, controlsFromScriptValue, QScriptValue());  \
qRegisterMetaType<DataEngine::Data>("Plasma::DataEngine::Data");  \
qRegisterMetaType<DataEngine::Data>("DataEngine::Data");  \
                qScriptRegisterMapMetaType<DataEngine::Data>(engine);
-    qScriptRegisterMetaType<Plasma::Extender *>(engine, qScriptValueFromExtender , \
                extenderFromQScriptValue);
-    qScriptRegisterMetaType<Plasma::VideoWidget::Controls>(engine, \
qScriptValueFromControls, controlsFromScriptValue, QScriptValue()); +    \
qScriptRegisterMetaType<Plasma::Service *>(engine, qScriptValueFromService, \
serviceFromQScriptValue); +    qScriptRegisterMetaType<Plasma::DataEngine *>(engine, \
qScriptValueFromDataEngine, dataEngineFromQScriptValue); +    \
qScriptRegisterMetaType<Plasma::ServiceJob *>(engine, qScriptValueFromServiceJob, \
serviceJobFromQScriptValue);  }
--- branches/KDE/4.4/kdebase/runtime/plasma/scriptengines/javascript/simplejavascriptapplet.cpp \
#1089370:1089371 @@ -534,13 +534,6 @@
     global.setProperty("AnimationGroup", \
                m_engine->newFunction(SimpleJavaScriptApplet::animationGroup));
     global.setProperty("ParallelAnimationGroup", \
m_engine->newFunction(SimpleJavaScriptApplet::parallelAnimationGroup));  
-    // Bindings for data engine
-    m_engine->setDefaultPrototype(qMetaTypeId<DataEngine*>(), \
                m_engine->newQObject(new DataEngine(), \
                QScriptEngine::ScriptOwnership));
-    m_engine->setDefaultPrototype(qMetaTypeId<Service*>(), m_engine->newQObject(new \
                DummyService(), QScriptEngine::ScriptOwnership));
-    m_engine->setDefaultPrototype(qMetaTypeId<ServiceJob*>(),
-                                  m_engine->newQObject(new ServiceJob(QString(), \
                QString(), QMap<QString, QVariant>()),
-                                                       \
                QScriptEngine::ScriptOwnership ));
-
     bindI18N(m_engine);
     global.setProperty("dataEngine", \
                m_engine->newFunction(SimpleJavaScriptApplet::dataEngine));
     global.setProperty("service", \
m_engine->newFunction(SimpleJavaScriptApplet::service));


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

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