Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
O
OpenBoard
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lifo
Nicolas Ollinger
OpenBoard
Commits
b8e15166
Commit
b8e15166
authored
Jan 25, 2012
by
shibakaneki
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Backuping some rework on the teacherbar
parent
81e493ec
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
108 additions
and
32 deletions
+108
-32
UBTBPageEditWidget.cpp
src/gui/UBTBPageEditWidget.cpp
+31
-10
UBTBPageEditWidget.h
src/gui/UBTBPageEditWidget.h
+3
-0
UBTeacherBarPreviewWidget.cpp
src/gui/UBTeacherBarPreviewWidget.cpp
+56
-21
UBTeacherBarPreviewWidget.h
src/gui/UBTeacherBarPreviewWidget.h
+14
-0
UBTeacherBarWidget.cpp
src/gui/UBTeacherBarWidget.cpp
+4
-1
No files found.
src/gui/UBTBPageEditWidget.cpp
View file @
b8e15166
...
...
@@ -29,7 +29,7 @@ UBTBPageEditWidget::UBTBPageEditWidget(UBTeacherBarDataMgr *pDataMgr, QWidget *p
mUrls
.
clear
();
setAttribute
(
Qt
::
WA_StyledBackground
,
true
);
setStyleSheet
(
UBApplication
::
globalStyleSheet
());
mClearingFields
=
false
;
mLayout
.
setContentsMargins
(
0
,
0
,
0
,
0
);
setLayout
(
&
mLayout
);
...
...
@@ -120,14 +120,18 @@ UBTBPageEditWidget::~UBTBPageEditWidget()
void
UBTBPageEditWidget
::
onTitleChanged
()
{
mpDataMgr
->
setPageTitle
(
mpTitle
->
text
());
emit
valueChanged
();
if
(
!
mClearingFields
){
mpDataMgr
->
setPageTitle
(
mpTitle
->
text
());
emit
valueChanged
();
}
}
void
UBTBPageEditWidget
::
onCommentsChanged
()
{
mpDataMgr
->
setComments
(
mpComments
->
document
()
->
toPlainText
());
emit
valueChanged
();
if
(
!
mClearingFields
){
mpDataMgr
->
setComments
(
mpComments
->
document
()
->
toPlainText
());
emit
valueChanged
();
}
}
void
UBTBPageEditWidget
::
onActionButton
()
...
...
@@ -135,6 +139,7 @@ void UBTBPageEditWidget::onActionButton()
UBTeacherStudentAction
*
pAction
=
new
UBTeacherStudentAction
(
this
);
mActions
<<
pAction
;
mpActions
->
addWidget
(
pAction
);
emit
valueChanged
();
}
void
UBTBPageEditWidget
::
onLinkButton
()
...
...
@@ -142,6 +147,7 @@ void UBTBPageEditWidget::onLinkButton()
UBUrlWidget
*
pUrl
=
new
UBUrlWidget
(
this
);
mUrls
<<
pUrl
;
mpLinks
->
addWidget
(
pUrl
);
emit
valueChanged
();
}
void
UBTBPageEditWidget
::
onMediaDropped
(
const
QString
&
url
)
...
...
@@ -149,9 +155,12 @@ void UBTBPageEditWidget::onMediaDropped(const QString &url)
if
(
""
!=
url
){
QWidget
*
pMedia
=
mpMediaContainer
->
generateMediaWidget
(
url
);
if
(
NULL
!=
pMedia
){
mpDataMgr
->
medias
()
->
append
(
pMedia
);
mpDataMgr
->
addMediaUrl
(
url
);
mMedias
<<
pMedia
;
mMediaUrls
<<
url
;
//mpDataMgr->medias()->append(pMedia);
//mpDataMgr->addMediaUrl(url);
mpMediaContainer
->
addWidget
(
pMedia
);
emit
valueChanged
();
}
}
}
...
...
@@ -170,6 +179,8 @@ void UBTBPageEditWidget::saveFields()
{
mpDataMgr
->
actions
()
->
clear
();
mpDataMgr
->
urls
()
->
clear
();
mpDataMgr
->
mediaUrls
().
clear
();
mpDataMgr
->
medias
()
->
clear
();
foreach
(
UBTeacherStudentAction
*
pAct
,
mActions
){
sAction
action
;
...
...
@@ -183,6 +194,12 @@ void UBTBPageEditWidget::saveFields()
link
.
link
=
pUrl
->
url
();
mpDataMgr
->
urls
()
->
append
(
link
);
}
foreach
(
QString
url
,
mMediaUrls
){
mpDataMgr
->
mediaUrls
().
append
(
url
);
}
foreach
(
QWidget
*
pMedia
,
mMedias
){
mpDataMgr
->
medias
()
->
append
(
pMedia
);
}
}
void
UBTBPageEditWidget
::
updateFields
()
...
...
@@ -203,7 +220,7 @@ void UBTBPageEditWidget::updateFields()
continue
;
QWidget
*
pWidget
=
mpMediaContainer
->
generateMediaWidget
(
url
);
if
(
pWidget
!=
NULL
){
m
pDataMgr
->
medias
()
->
append
(
pWidget
)
;
m
Medias
<<
pWidget
;
mpMediaContainer
->
addWidget
(
pWidget
);
}
}
...
...
@@ -221,6 +238,7 @@ void UBTBPageEditWidget::updateFields()
void
UBTBPageEditWidget
::
clearFields
()
{
mClearingFields
=
true
;
// Title
mpTitle
->
setText
(
""
);
// Actions
...
...
@@ -230,13 +248,14 @@ void UBTBPageEditWidget::clearFields()
}
mActions
.
clear
();
// Medias
foreach
(
QWidget
*
pMedia
,
*
mpDataMgr
->
medias
()
){
foreach
(
QWidget
*
pMedia
,
mMedias
){
if
(
NULL
!=
pMedia
){
mpMediaContainer
->
removeWidget
(
pMedia
);
DELETEPTR
(
pMedia
);
}
}
mpDataMgr
->
mediaUrls
().
clear
();
mMedias
.
clear
();
mMediaUrls
.
clear
();
// Links
foreach
(
UBUrlWidget
*
pLink
,
mUrls
){
mpLinks
->
removeWidget
(
pLink
);
...
...
@@ -245,6 +264,8 @@ void UBTBPageEditWidget::clearFields()
mUrls
.
clear
();
// Comments
mpComments
->
setText
(
""
);
mClearingFields
=
false
;
}
// ---------------------------------------------------------------------------------------------
...
...
src/gui/UBTBPageEditWidget.h
View file @
b8e15166
...
...
@@ -133,6 +133,9 @@ private:
QVector
<
UBTeacherStudentAction
*>
mActions
;
QVector
<
UBUrlWidget
*>
mUrls
;
QVector
<
QWidget
*>
mMedias
;
QStringList
mMediaUrls
;
bool
mClearingFields
;
};
#endif // UBTBPAGEEDITWIDGET_H
src/gui/UBTeacherBarPreviewWidget.cpp
View file @
b8e15166
...
...
@@ -248,23 +248,13 @@ void UBTeacherBarPreviewWidget::onEdit()
void
UBTeacherBarPreviewWidget
::
updateFields
()
{
// First, remove the previous elements
if
(
!
mStoredWidgets
.
empty
()){
foreach
(
QWidget
*
pW
,
mStoredWidgets
){
mpContentContainer
->
removeWidget
(
pW
);
if
(
pW
->
objectName
()
==
"UBActionPreview"
||
pW
->
objectName
()
==
"UBLinkPreview"
||
pW
->
objectName
()
==
"UBCommentsPreview"
){
// Here we delete all preview widget excepting the media because they are handled by the data manager
delete
pW
;
pW
=
NULL
;
}
}
mStoredWidgets
.
clear
();
}
// Session Title
mpSessionTitle
->
setText
(
mpDataMgr
->
sessionTitle
());
if
(
""
!=
mpDataMgr
->
sessionTitle
()){
mpSessionTitle
->
setText
(
mpDataMgr
->
sessionTitle
());
mpSessionTitle
->
setVisible
(
true
);
}
else
{
mpSessionTitle
->
setVisible
(
false
);
}
// Page Title
if
(
""
!=
mpDataMgr
->
pageTitle
()){
...
...
@@ -279,7 +269,7 @@ void UBTeacherBarPreviewWidget::updateFields()
generateActions
();
// Media
generateMedias
();
//
generateMedias();
// Links
generateLinks
();
...
...
@@ -291,7 +281,20 @@ void UBTeacherBarPreviewWidget::updateFields()
void
UBTeacherBarPreviewWidget
::
clearFields
()
{
// Session Title
mpSessionTitle
->
setText
(
""
);
// Page Title
mpTitle
->
setText
(
""
);
// Medias
if
(
!
mStoredWidgets
.
empty
()){
foreach
(
QWidget
*
pW
,
mStoredWidgets
){
mpContentContainer
->
removeWidget
(
pW
);
DELETEPTR
(
pW
);
}
mStoredWidgets
.
clear
();
}
}
void
UBTeacherBarPreviewWidget
::
generateActions
()
...
...
@@ -309,10 +312,25 @@ void UBTeacherBarPreviewWidget::generateActions()
void
UBTeacherBarPreviewWidget
::
generateMedias
()
{
foreach
(
QWidget
*
pMedia
,
*
mpDataMgr
->
medias
()){
if
(
NULL
!=
pMedia
){
mpContentContainer
->
addWidget
(
pMedia
);
mStoredWidgets
<<
pMedia
;
if
(
isVisible
()){
foreach
(
QString
mediaUrl
,
mpDataMgr
->
mediaUrls
()){
QString
mimeType
=
UBFileSystemUtils
::
mimeTypeFromFileName
(
mediaUrl
);
if
(
mimeType
.
contains
(
"image"
)){
QPixmap
pix
=
QPixmap
(
mediaUrl
);
QLabel
*
label
=
new
QLabel
();
pix
.
scaledToWidth
(
label
->
width
());
label
->
resize
(
pix
.
width
(),
pix
.
height
());
label
->
setPixmap
(
pix
);
label
->
setScaledContents
(
true
);
mStoredWidgets
<<
label
;
mpContentContainer
->
addWidget
(
label
);
}
else
if
(
mimeType
.
contains
(
"video"
)
||
mimeType
.
contains
(
"audio"
)){
UBMediaWidget
*
mediaPlayer
=
new
UBMediaWidget
(
mimeType
.
contains
(
"audio"
)
?
eMediaType_Audio
:
eMediaType_Video
);
mediaPlayer
->
setFile
(
mediaUrl
);
mStoredWidgets
<<
mediaPlayer
;
mpContentContainer
->
addWidget
(
mediaPlayer
);
}
}
}
}
...
...
@@ -323,6 +341,7 @@ void UBTeacherBarPreviewWidget::generateLinks()
foreach
(
sLink
link
,
*
mpDataMgr
->
urls
()){
mpTmpLink
=
new
QLabel
(
QString
(
"<a href='%0'>%1</a>"
).
arg
(
link
.
link
).
arg
(
link
.
title
),
this
);
mpTmpLink
->
setObjectName
(
"UBLinkPreview"
);
mpTmpLink
->
setOpenExternalLinks
(
true
);
mpContentContainer
->
addWidget
(
mpTmpLink
);
mStoredWidgets
<<
mpTmpLink
;
}
...
...
@@ -340,3 +359,19 @@ void UBTeacherBarPreviewWidget::generateComments()
mStoredWidgets
<<
mpTmpComment
;
}
}
void
UBTeacherBarPreviewWidget
::
showEvent
(
QShowEvent
*
ev
)
{
//updateFields();
}
// -----------------------------------------------------------------------------------------------------
UBDraggableMedia
::
UBDraggableMedia
(
eMediaType
type
,
QWidget
*
parent
,
const
char
*
name
)
:
UBMediaWidget
(
type
,
parent
,
name
)
{
}
UBDraggableMedia
::~
UBDraggableMedia
()
{
}
src/gui/UBTeacherBarPreviewWidget.h
View file @
b8e15166
...
...
@@ -8,6 +8,7 @@
#include "core/UBPersistenceManager.h"
#include "customWidgets/UBWidgetList.h"
#include "customWidgets/UBMediaWidget.h"
#include "UBTeacherBarDataMgr.h"
class
UBTeacherBarPreviewMedia
:
public
QWidget
...
...
@@ -56,6 +57,14 @@ public:
~
UBTBPreviewSeparator
();
};
class
UBDraggableMedia
:
public
UBMediaWidget
{
public
:
UBDraggableMedia
(
eMediaType
type
=
eMediaType_Video
,
QWidget
*
parent
=
0
,
const
char
*
name
=
"UBDraggableMedia"
);
~
UBDraggableMedia
();
};
class
UBTeacherBarPreviewWidget
:
public
QWidget
{
Q_OBJECT
...
...
@@ -68,6 +77,9 @@ public:
signals
:
void
showEditMode
();
protected
:
void
showEvent
(
QShowEvent
*
ev
);
private
slots
:
void
onEdit
();
void
onActiveSceneChanged
();
...
...
@@ -111,6 +123,8 @@ private:
QLabel
*
mpTmpLink
;
/** A temporary comments field */
QTextEdit
*
mpTmpComment
;
/** A temporary media object */
UBDraggableMedia
*
mTmpMedia
;
};
#endif // UBTEACHERBARPREVIEWWIDGET_H
src/gui/UBTeacherBarWidget.cpp
View file @
b8e15166
...
...
@@ -148,7 +148,7 @@ bool UBTeacherBarWidget::isEmpty()
void
UBTeacherBarWidget
::
onShowEditMode
()
{
mpStackWidget
->
setCurrentWidget
(
mpPageEditWidge
t
);
onTBStateChanged
(
eTeacherBarState_PageEdi
t
);
}
void
UBTeacherBarWidget
::
onTBStateChanged
(
eTeacherBarState
state
)
...
...
@@ -163,10 +163,13 @@ void UBTeacherBarWidget::onTBStateChanged(eTeacherBarState state)
mpStackWidget
->
setCurrentWidget
(
mpDocPreviewWidget
);
break
;
case
eTeacherBarState_PageEdit
:
mpPageEditWidget
->
clearFields
();
mpPageEditWidget
->
updateFields
();
mpStackWidget
->
setCurrentWidget
(
mpPageEditWidget
);
break
;
case
eTeacherBarState_PagePreview
:
saveContent
();
mpPreview
->
clearFields
();
mpPreview
->
updateFields
();
mpStackWidget
->
setCurrentWidget
(
mpPreview
);
break
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment