0
0
mirror of https://github.com/fralx/LimeReport.git synced 2025-10-09 05:57:14 +03:00

Script editor has been finishes

This commit is contained in:
Arin Alexander
2017-09-20 00:51:17 +03:00
parent 219b4ad678
commit 4764334940
7 changed files with 191 additions and 129 deletions

View File

@@ -184,6 +184,7 @@ void ReportDesignWidget::saveState(QSettings* settings)
settings->setValue("vGridStep",m_verticalGridStep);
settings->setValue("defaultFont",m_defaultFont);
settings->setValue("useGrid",m_useGrid);
settings->setValue("ScriptEditorState", m_scriptEditor->saveState());
settings->endGroup();
}
@@ -216,6 +217,12 @@ void ReportDesignWidget::loadState(QSettings* settings)
if (v.isValid()){
m_useGrid = v.toBool();
}
v = settings->value("ScriptEditorState");
if (v.isValid()){
m_scriptEditor->restoreState(v.toByteArray());
}
settings->endGroup();
applySettings();
}
@@ -242,17 +249,12 @@ void ReportDesignWidget::createTabs(){
this, SLOT(slotPagePropertyObjectNameChanged(QString,QString)));
}
m_scriptEditor = new QTextEdit(this);
m_scriptEditor = new ScriptEditor(this);
m_scriptEditor->setReportEngine(m_report);
pageIndex = m_tabWidget->addTab(m_scriptEditor,QIcon(),tr("Script"));
m_tabWidget->setTabWhatsThis(pageIndex,"script");
m_tabWidget->setCurrentIndex(0);
m_newScriptEditor = new ScriptEditor(this);
m_newScriptEditor->setReportEngine(m_report);
pageIndex = m_tabWidget->addTab(m_newScriptEditor,QIcon(),tr("New Script Editor"));
m_tabWidget->setTabWhatsThis(pageIndex,"script");
m_tabWidget->setCurrentIndex(0);
#ifdef HAVE_QTDESIGNER_INTEGRATION
QWidget* dialogDesigner;
foreach(DialogDescriber::Ptr dialogDesc, m_report->scriptContext()->dialogDescribers()){
@@ -442,9 +444,11 @@ bool ReportDesignWidget::save()
bool ReportDesignWidget::loadFromFile(const QString &fileName)
{
if (m_report->loadFromFile(fileName,false)){
QByteArray editorState = m_scriptEditor->saveState();
createTabs();
//connectPage(m_report->pageAt(0));
m_scriptEditor->setPlainText(m_report->scriptContext()->initScript());
m_scriptEditor->restoreState(editorState);
emit loaded();
m_dialogChanged = false;
return true;
@@ -796,7 +800,8 @@ void ReportDesignWidget::slotCurrentTabChanged(int index)
}
if (activeTabType() == Script){
m_newScriptEditor->initCompleter();
m_scriptEditor->initCompleter();
m_scriptEditor->setFocus();
}
emit activePageChanged();