diff --git a/src/gui/UBDockPalette.cpp b/src/gui/UBDockPalette.cpp index a302d847..38f375be 100644 --- a/src/gui/UBDockPalette.cpp +++ b/src/gui/UBDockPalette.cpp @@ -17,12 +17,16 @@ #include #include "UBDockPalette.h" -#include "core/UBSettings.h" + #include "frameworks/UBPlatformUtils.h" + +#include "core/UBSettings.h" #include "core/UBApplication.h" #include "core/UBPreferencesController.h" #include "core/UBDownloadManager.h" +#include "board/UBBoardController.h" + #include "core/memcheck.h" /** @@ -79,6 +83,8 @@ UBDockPalette::UBDockPalette(eUBDockPaletteType paletteType, QWidget *parent, co onToolbarPosUpdated(); connect(UBSettings::settings()->appToolBarPositionedAtTop, SIGNAL(changed(QVariant)), this, SLOT(onToolbarPosUpdated())); connect(UBDownloadManager::downloadManager(), SIGNAL(allDownloadsFinished()), this, SLOT(onAllDownloadsFinished())); + + connect(UBApplication::boardController,SIGNAL(documentSet(UBDocumentProxy*)),this,SLOT(onDocumentSet(UBDocumentProxy*))); } /** @@ -98,6 +104,11 @@ UBDockPalette::~UBDockPalette() } } +void UBDockPalette::onDocumentSet(UBDocumentProxy* documentProxy) +{ + Q_UNUSED(documentProxy); +} + /** * \brief Get the current orientation * @return the current orientation diff --git a/src/gui/UBDockPalette.h b/src/gui/UBDockPalette.h index f1c6f323..2dac9e08 100644 --- a/src/gui/UBDockPalette.h +++ b/src/gui/UBDockPalette.h @@ -15,6 +15,8 @@ #ifndef UBDOCKPALETTE_H #define UBDOCKPALETTE_H +class UBDocumentProxy; + #include #include #include @@ -131,6 +133,7 @@ public slots: void onShowTabWidget(UBDockPaletteWidget* widget); void onHideTabWidget(UBDockPaletteWidget* widget); void onAllDownloadsFinished(); + virtual void onDocumentSet(UBDocumentProxy* documentProxy); protected: virtual int border(); diff --git a/src/gui/UBLeftPalette.cpp b/src/gui/UBLeftPalette.cpp index 7f79ff18..ffb93f90 100644 --- a/src/gui/UBLeftPalette.cpp +++ b/src/gui/UBLeftPalette.cpp @@ -51,6 +51,14 @@ UBLeftPalette::~UBLeftPalette() } + +void UBLeftPalette::onDocumentSet(UBDocumentProxy* documentProxy) +{ + //This is necessary to force the teacher guide to be showed in priority each time a document is set + if(documentProxy && UBSettings::settings()->teacherGuidePageZeroActivated->get().toBool()) + mLastOpenedTabForMode.insert(eUBDockPaletteWidget_BOARD, 1); +} + /** * \brief Update the maximum width */ diff --git a/src/gui/UBLeftPalette.h b/src/gui/UBLeftPalette.h index 43f472ab..72e4fc1a 100644 --- a/src/gui/UBLeftPalette.h +++ b/src/gui/UBLeftPalette.h @@ -25,6 +25,9 @@ public: bool switchMode(eUBDockPaletteWidgetMode mode); +public slots: + void onDocumentSet(UBDocumentProxy* documentProxy); + protected: void updateMaxWidth(); void resizeEvent(QResizeEvent *event); diff --git a/src/gui/UBTeacherGuideWidget.cpp b/src/gui/UBTeacherGuideWidget.cpp index cb2b912d..ee81836e 100644 --- a/src/gui/UBTeacherGuideWidget.cpp +++ b/src/gui/UBTeacherGuideWidget.cpp @@ -1149,7 +1149,6 @@ void UBTeacherGuideWidget::onActiveSceneChanged() mpPageZeroWidget->switchToMode(tUBTGZeroPageMode_EDITION); setCurrentWidget(mpPageZeroWidget); - } else{ if(mpEditionWidget->isModified()){