Replace virtual isModified method with a getter/setter/notifier

We have lacked the setter and dedicated notifier before.

Change-Id: I58845a48259d260c5cc90ae94b173c79cddcfef9
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
This commit is contained in:
Jarek Kobus
2016-10-07 15:58:40 +02:00
committed by Jarek Kobus
parent caf721430b
commit 59c90e00c1
28 changed files with 113 additions and 136 deletions

View File

@@ -94,7 +94,7 @@ bool ModelDocument::save(QString *errorString, const QString &name, bool autoSav
}
if (autoSave) {
d->documentController->projectController()->setModified();
d->documentController->projectController()->setModified(true);
} else {
setFilePath(Utils::FileName::fromString(d->documentController->projectController()->project()->fileName()));
emit changed();
@@ -108,11 +108,6 @@ bool ModelDocument::shouldAutoSave() const
return isModified();
}
bool ModelDocument::isModified() const
{
return d->documentController ? d->documentController->projectController()->isModified() : false;
}
bool ModelDocument::isSaveAsAllowed() const
{
return true;
@@ -140,6 +135,10 @@ Core::IDocument::OpenResult ModelDocument::load(QString *errorString, const QStr
{
d->documentController = ModelEditorPlugin::modelsManager()->createModel(this);
connect(d->documentController, &qmt::DocumentController::changed, this, &IDocument::changed);
connect(d->documentController, &qmt::DocumentController::modificationChanged, this, &IDocument::setModified);
connect(this, &IDocument::modificationChanged,
d->documentController->projectController(), &qmt::ProjectController::setModified);
setModified(d->documentController->projectController()->isModified());
try {
d->documentController->loadProject(fileName);