mirror of
https://github.com/fralx/LimeReport.git
synced 2025-11-25 08:28:06 +03:00
QJSEngine -> QQmlEngine
This commit is contained in:
@@ -167,17 +167,29 @@ void ReportRender::setScriptContext(ScriptEngineContext* scriptContext)
|
||||
|
||||
bool ReportRender::runInitScript(){
|
||||
if (m_scriptEngineContext){
|
||||
QScriptEngine* engine = ScriptEngineManager::instance().scriptEngine();
|
||||
ScriptEngineType* engine = ScriptEngineManager::instance().scriptEngine();
|
||||
#ifndef USE_QJSENGINE
|
||||
engine->pushContext();
|
||||
QScriptValue res = engine->evaluate(m_scriptEngineContext->initScript());
|
||||
#endif
|
||||
ScriptValueType res = engine->evaluate(m_scriptEngineContext->initScript());
|
||||
if (res.isBool()) return res.toBool();
|
||||
#ifdef USE_QJSENGINE
|
||||
if (res.isError()){
|
||||
QMessageBox::critical(0,tr("Error"),
|
||||
QString("Line %1: %2 ").arg(res.property("lineNumber").toString())
|
||||
.arg(res.toString())
|
||||
);
|
||||
return false;
|
||||
}
|
||||
#else
|
||||
if (engine->hasUncaughtException()) {
|
||||
QMessageBox::critical(0,tr("Error"),
|
||||
QString("Line %1: %2 ").arg(engine->uncaughtExceptionLineNumber())
|
||||
.arg(engine->uncaughtException().toString())
|
||||
);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
return true;
|
||||
}
|
||||
@@ -269,8 +281,9 @@ void ReportRender::renderPage(PageDesignIntf* patternPage)
|
||||
renderBand(tearOffBand, 0, StartNewPageAsNeeded);
|
||||
|
||||
savePage(true);
|
||||
|
||||
#ifndef USE_QJSENGINE
|
||||
ScriptEngineManager::instance().scriptEngine()->popContext();
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1262,18 +1275,26 @@ void ReportRender::baseDesignIntfToScript(BaseDesignIntf *item)
|
||||
if (item->metaObject()->indexOfSignal("afterRender()")!=-1)
|
||||
item->disconnect(SIGNAL(afterRender()));
|
||||
|
||||
QScriptEngine* engine = ScriptEngineManager::instance().scriptEngine();
|
||||
QScriptValue sItem = engine->globalObject().property(item->patternName());
|
||||
ScriptEngineType* engine = ScriptEngineManager::instance().scriptEngine();
|
||||
|
||||
#ifdef USE_QJSENGINE
|
||||
//sItem = engine->newQObject(item);
|
||||
ScriptValueType sItem = getCppOwnedJSValue(*engine, item);
|
||||
engine->globalObject().setProperty(item->patternName(), sItem);
|
||||
#else
|
||||
ScriptValueType sItem = engine->globalObject().property(item->patternName());
|
||||
if (sItem.isValid()){
|
||||
engine->newQObject(sItem, item);
|
||||
} else {
|
||||
sItem = engine->newQObject(item);
|
||||
engine->globalObject().setProperty(item->patternName(),sItem);
|
||||
}
|
||||
#endif
|
||||
foreach(BaseDesignIntf* child, item->childBaseItems()){
|
||||
baseDesignIntfToScript(child);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user