diff options
author | Jochen Becher <jochen_becher@gmx.de> | 2018-08-10 10:49:05 +0200 |
---|---|---|
committer | Jochen Becher <jochen_becher@gmx.de> | 2018-09-05 18:05:29 +0000 |
commit | f4a7d02c0929fe5d1e3fe1549614bbd00eca6726 (patch) | |
tree | ffaf20bc1b36474e69432a95b59176893cc057a2 /src/plugins/modeleditor | |
parent | 2c2faf8749f21817f906af4457c6c40e50633478 (diff) | |
download | qt-creator-f4a7d02c0929fe5d1e3fe1549614bbd00eca6726.tar.gz |
ModelEditor: Reload documents
Task-number: QTCREATORBUG-20612
Change-Id: Ie4a89f17e9f062ab273b58f19b8c5d6193cedacc
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Diffstat (limited to 'src/plugins/modeleditor')
-rw-r--r-- | src/plugins/modeleditor/modeldocument.cpp | 13 | ||||
-rw-r--r-- | src/plugins/modeleditor/modeleditor.cpp | 6 |
2 files changed, 14 insertions, 5 deletions
diff --git a/src/plugins/modeleditor/modeldocument.cpp b/src/plugins/modeleditor/modeldocument.cpp index eef5ce60dc..e47c0d1a97 100644 --- a/src/plugins/modeleditor/modeldocument.cpp +++ b/src/plugins/modeleditor/modeldocument.cpp @@ -127,8 +127,17 @@ bool ModelDocument::reload(QString *errorString, Core::IDocument::ReloadFlag fla emit changed(); return true; } - *errorString = tr("Cannot reload model file."); - return false; + try { + d->documentController->loadProject(filePath().toString()); + } catch (const qmt::FileNotFoundException &ex) { + *errorString = ex.errorMessage(); + return false; + } catch (const qmt::Exception &ex) { + *errorString = tr("Could not open \"%1\" for reading: %2.").arg(filePath().toString()).arg(ex.errorMessage()); + return false; + } + emit contentSet(); + return true; } ExtDocumentController *ModelDocument::documentController() const diff --git a/src/plugins/modeleditor/modeleditor.cpp b/src/plugins/modeleditor/modeleditor.cpp index a95737c68c..d18ebec17c 100644 --- a/src/plugins/modeleditor/modeleditor.cpp +++ b/src/plugins/modeleditor/modeleditor.cpp @@ -369,16 +369,16 @@ void ModelEditor::init(QWidget *parent) void ModelEditor::initDocument() { + if (d->diagramsViewManager) + return; + initToolbars(); ExtDocumentController *documentController = d->document->documentController(); d->diagramView->setPxNodeController(documentController->pxNodeController()); - QMT_CHECK(!d->diagramsViewManager); d->diagramsViewManager = new DiagramsViewManager(this); - //connect(diagramsViewManager, &DiagramsViewManager::someDiagramOpened, - // documentController->diagramsManager(), &qmt::DiagramsManager::someDiagramOpened); connect(d->diagramsViewManager, &DiagramsViewManager::openNewDiagram, this, &ModelEditor::showDiagram); connect(d->diagramsViewManager, &DiagramsViewManager::closeOpenDiagram, |