From 4e6a17b6b9fc0ffcde3e1469d51f1f0e9149bf46 Mon Sep 17 00:00:00 2001 From: shibakaneki Date: Mon, 23 Jan 2012 10:54:49 +0100 Subject: [PATCH] Added the save / load media in the teacherbar --- src/gui/UBTBPageEditWidget.cpp | 36 ++++++++++++++++++++++------------ 1 file changed, 24 insertions(+), 12 deletions(-) diff --git a/src/gui/UBTBPageEditWidget.cpp b/src/gui/UBTBPageEditWidget.cpp index d1ba3c31..5e512d52 100644 --- a/src/gui/UBTBPageEditWidget.cpp +++ b/src/gui/UBTBPageEditWidget.cpp @@ -171,6 +171,7 @@ void UBTBPageEditWidget::saveFields() { mpDataMgr->actions()->clear(); mpDataMgr->urls()->clear(); + foreach(UBTeacherStudentAction* pAct, mActions){ sAction action; action.type = pAct->comboValue().toInt(); @@ -183,14 +184,13 @@ void UBTBPageEditWidget::saveFields() link.link = pUrl->url(); mpDataMgr->urls()->append(link); } - - // TODO : Medias } void UBTBPageEditWidget::updateFields() { + // Title mpTitle->setText(mpDataMgr->pageTitle()); - + // Actions foreach(sAction action, *mpDataMgr->actions()){ UBTeacherStudentAction* pAction = new UBTeacherStudentAction(this); pAction->setComboValue(action.type); @@ -198,7 +198,13 @@ void UBTBPageEditWidget::updateFields() mActions << pAction; mpActions->addWidget(pAction); } - + // Medias + foreach(QString url, mpDataMgr->mediaUrls()){ + QWidget* pWidget = mpMediaContainer->generateMediaWidget(url); + mpDataMgr->medias()->append(pWidget); + mpMediaContainer->addWidget(pWidget); + } + // Links foreach(sLink link, *mpDataMgr->urls()){ UBUrlWidget* urlWidget = new UBUrlWidget(this); urlWidget->setTitle(link.title); @@ -206,30 +212,36 @@ void UBTBPageEditWidget::updateFields() mUrls << urlWidget; mpLinks->addWidget(urlWidget); } - - // TODO: add the medias - + // Comments mpComments->document()->setPlainText(mpDataMgr->comments()); } void UBTBPageEditWidget::clearFields() { + // Title mpTitle->setText(""); - mpComments->setText(""); + // Actions foreach(UBTeacherStudentAction* pAction, mActions){ mpActions->removeWidget(pAction); DELETEPTR(pAction); } mActions.clear(); - + // Medias + foreach(QWidget* pMedia, *mpDataMgr->medias()){ + if(NULL != pMedia){ + mpMediaContainer->removeWidget(pMedia); + DELETEPTR(pMedia); + } + } + mpDataMgr->mediaUrls().clear(); + // Links foreach(UBUrlWidget* pLink, mUrls){ mpLinks->removeWidget(pLink); DELETEPTR(pLink); } mUrls.clear(); - - mpMediaContainer->cleanMedias(); - + // Comments + mpComments->setText(""); } // ---------------------------------------------------------------------------------------------