diff --git a/sources/projectview.cpp b/sources/projectview.cpp index 69735f1ca..7d0682c3b 100644 --- a/sources/projectview.cpp +++ b/sources/projectview.cpp @@ -103,8 +103,8 @@ void ProjectView::setProject(QETProject *project) { if (!project_) { project_ = project; connect(project_, SIGNAL(projectTitleChanged(QETProject *, const QString &)), this, SLOT(updateWindowTitle())); - connect(project_, SIGNAL(readOnlyChanged (QETProject *, bool)), this, SLOT(updateWindowTitle())); - updateWindowTitle(); + connect(project_, SIGNAL(readOnlyChanged (QETProject *, bool)), this, SLOT(adjustReadOnlyState())); + adjustReadOnlyState(); loadDiagrams(); } } @@ -747,6 +747,18 @@ void ProjectView::updateWindowTitle() { setWindowTitle(title); } +/** + Effectue les actions necessaires lorsque le projet visualise entre ou sort + du mode lecture seule. +*/ +void ProjectView::adjustReadOnlyState() { + // on empeche l'utilisateur de deplacer les onglets + tabs_ -> setMovable(!(project_ -> isReadOnly())); + + // on met a jour le titre du widget, qui reflete l'etat de lecture seule + updateWindowTitle(); +} + /** Met a jour le titre d'un onglet @param diagram Schema diff --git a/sources/projectview.h b/sources/projectview.h index b36d70ef5..437166b6c 100644 --- a/sources/projectview.h +++ b/sources/projectview.h @@ -93,6 +93,7 @@ class ProjectView : public QWidget { void firstTabInserted(); void lastTabRemoved(); void setDisplayFallbackWidget(bool); + void adjustReadOnlyState(); // attributs private: