All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines
Signals | Public Member Functions
GeopsyCore::SignalHeaderScript Class Reference

Brief description of class still missing. More...

#include <SignalHeaderScript.h>

List of all members.

Signals

void dataChanged (Signal *sig)

Public Member Functions

bool run (const QString &script)
 SignalHeaderScript (SubSignalPool *subPool)

Detailed Description

Brief description of class still missing.

Full description of class still missing


Constructor & Destructor Documentation

Description of constructor still missing

References GeopsyCore::ScriptContext::add(), GeopsyCore::SubSignalPool::count(), GeopsyCore::MetaDataFactory::instance(), GeopsyCore::MetaDataFactory::registerScriptTypes(), and TRACE.

  {
    TRACE;
    _engine=new QScriptEngine(this);
    MetaDataFactory::instance()->registerScriptTypes(_engine);

    int n=subPool->count();
    QScriptValue list, sig;
    list=_engine->newArray(n);
    _engine->globalObject().setProperty("signals", list);
    /*for(int i=0; i<n; i++) {
      SignalHeaderObject * sigObject=new SignalHeaderObject(subPool->at(i), this);
      MetaDataFactory::instance()->addScriptProperties(sigObject);
      connect(sigObject, SIGNAL(dataChanged(Signal*)), this, SIGNAL(dataChanged(Signal *)));
      sig=_engine->newQObject(sigObject,
                              QScriptEngine::QtOwnership,
                              QScriptEngine::ExcludeSuperClassContents |
                              QScriptEngine::ExcludeDeleteLater |
                              QScriptEngine::SkipMethodsInEnumeration);
      list.setProperty(i, sig);
    }*/
    ScriptContext::add(_engine);
  }

Member Function Documentation

bool GeopsyCore::SignalHeaderScript::run ( const QString &  script)

References QGpCoreTools::endl(), and TRACE.

  {
    TRACE;
    _engine->evaluate(script);
    if(_engine->hasUncaughtException()) {
      App::stream() << _engine->uncaughtException().toString() << endl;
      App::stream() << _engine->uncaughtExceptionBacktrace().join("\n") << endl;
      return false;
    } else {
      return true;
    }
  }

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines