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
6e181605
Commit
6e181605
authored
Oct 20, 2011
by
shibakaneki
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Added the teacherbar
parent
387f7540
Changes
14
Show whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
691 additions
and
5 deletions
+691
-5
teacher_close.png
resources/images/teacher_close.png
+0
-0
teacher_close_disabled.png
resources/images/teacher_close_disabled.png
+0
-0
teacher_open.png
resources/images/teacher_open.png
+0
-0
teacher_open_disabled.png
resources/images/teacher_open_disabled.png
+0
-0
sankore.qrc
resources/sankore.qrc
+5
-1
style.qss
resources/style.qss
+43
-1
UBBoardPaletteManager.cpp
src/board/UBBoardPaletteManager.cpp
+18
-0
UBBoardPaletteManager.h
src/board/UBBoardPaletteManager.h
+4
-0
UBPersistenceManager.cpp
src/core/UBPersistenceManager.cpp
+86
-0
UBPersistenceManager.h
src/core/UBPersistenceManager.h
+18
-0
UBDocumentNavigator.cpp
src/gui/UBDocumentNavigator.cpp
+4
-1
UBTeacherBarWidget.cpp
src/gui/UBTeacherBarWidget.cpp
+431
-0
UBTeacherBarWidget.h
src/gui/UBTeacherBarWidget.h
+78
-0
gui.pri
src/gui/gui.pri
+4
-2
No files found.
resources/images/teacher_close.png
0 → 100644
View file @
6e181605
1.02 KB
resources/images/teacher_close_disabled.png
0 → 100644
View file @
6e181605
1.02 KB
resources/images/teacher_open.png
0 → 100644
View file @
6e181605
1.01 KB
resources/images/teacher_open_disabled.png
0 → 100644
View file @
6e181605
1.01 KB
resources/sankore.qrc
View file @
6e181605
...
...
@@ -319,12 +319,16 @@
<file>images/pages_open.png</file>
<file>images/cache_close.png</file>
<file>images/cache_open.png</file>
<file>style.qss</file>
<file>images/cache_circle.png</file>
<file>images/cache_square.png</file>
<file>images/down_arrow.png</file>
<file>images/up_arrow.png</file>
<file>images/left_arrow.png</file>
<file>images/right_arrow.png</file>
<file>style.qss</file>
<file>images/teacher_close.png</file>
<file>images/teacher_close_disabled.png</file>
<file>images/teacher_open.png</file>
<file>images/teacher_open_disabled.png</file>
</qresource>
</RCC>
resources/style.qss
View file @
6e181605
QWidget#DockPaletteWidgetBox,
QWidget#documentNavigator,
QWidget#UBLibraryWidget,
QWidget#UBLibPathViewer
QWidget#UBLibPathViewer,
QWidget#UBTeacherStudentAction
{
background: #EEEEEE;
border-radius: 10px;
...
...
@@ -21,6 +22,40 @@ QLabel#DockPaletteWidgetTitle
font-weight:bold;
}
QLineEdit#DockPaletteWidgetLineEdit
{
background: white;
border-radius : 10px;
padding: 2px;
}
QComboBox#DockPaletteWidgetComboBox
{
background: white;
border-radius : 10px;
padding: 2px;
}
QComboBox#DockPaletteWidgetComboBox:drop-down
{
background: white;
width:1px;
height:1px;
margin: 9px 5px 0px 0px;
}
QComboBox#DockPaletteWidgetComboBox::down-arrow
{
image:url(:/images/down_arrow.png);
background:#BBBBBB;
border: 2px solid #999999;
height:16px;
width:16px;
padding: 0px 0px 0px 0px;
margin: 5px 10px 0px 0px;
border-radius: 10px;
}
QPushButton#DockPaletteWidgetButton
{
background-color : #DDDDDD;
...
...
@@ -31,6 +66,13 @@ QPushButton#DockPaletteWidgetButton
font-size : 12px;
}
QTextEdit#TeacherStudentBox
{
background: white;
border: 2px solid #999999;
border-radius: 10px;
}
QPushButton#DockPaletteWidgetButton::checked
{
background-color: #BBBBBB;
...
...
src/board/UBBoardPaletteManager.cpp
View file @
6e181605
...
...
@@ -76,6 +76,7 @@ UBBoardPaletteManager::UBBoardPaletteManager(QWidget* container, UBBoardControll
,
mpPageNavigWidget
(
NULL
)
,
mpLibWidget
(
NULL
)
,
mpCachePropWidget
(
NULL
)
,
mpTeacherBarWidget
(
NULL
)
,
mDesktopRightPalette
(
NULL
)
,
mpDesktopLibWidget
(
NULL
)
{
...
...
@@ -96,6 +97,11 @@ UBBoardPaletteManager::~UBBoardPaletteManager()
delete
mpLibWidget
;
mpLibWidget
=
NULL
;
}
if
(
NULL
!=
mpTeacherBarWidget
)
{
delete
mpTeacherBarWidget
;
mpTeacherBarWidget
=
NULL
;
}
if
(
NULL
!=
mpCachePropWidget
)
{
delete
mpCachePropWidget
;
...
...
@@ -155,8 +161,13 @@ void UBBoardPaletteManager::setupDockPaletteWidgets()
// RIGHT palette widgets
mRightPalette
->
registerWidget
(
mpLibWidget
);
mRightPalette
->
registerWidget
(
mpCachePropWidget
);
mRightPalette
->
registerWidget
(
mpTeacherBarWidget
);
mRightPalette
->
addTabWidget
(
mpLibWidget
);
mRightPalette
->
addTabWidget
(
mpTeacherBarWidget
);
mRightPalette
->
connectSignals
();
mLeftPalette
->
showTabWidget
(
0
);
mRightPalette
->
showTabWidget
(
0
);
}
void
UBBoardPaletteManager
::
setupPalettes
()
...
...
@@ -169,6 +180,7 @@ void UBBoardPaletteManager::setupPalettes()
mpPageNavigWidget
=
new
UBPageNavigationWidget
();
mpLibWidget
=
new
UBLibWidget
();
mpCachePropWidget
=
new
UBCachePropertiesWidget
();
mpTeacherBarWidget
=
new
UBTeacherBarWidget
();
setupDockPaletteWidgets
();
...
...
@@ -717,3 +729,9 @@ UBRightPalette* UBBoardPaletteManager::createDesktopRightPalette(QWidget* parent
return
mDesktopRightPalette
;
}
void
UBBoardPaletteManager
::
refreshPalettes
()
{
mRightPalette
->
update
();
mLeftPalette
->
update
();
}
src/board/UBBoardPaletteManager.h
View file @
6e181605
...
...
@@ -25,6 +25,7 @@
#include "gui/UBPageNavigationWidget.h"
#include "gui/UBLibWidget.h"
#include "gui/UBCachePropertiesWidget.h"
#include "gui/UBTeacherBarWidget.h"
class
UBStylusPalette
;
class
UBClockPalette
;
...
...
@@ -49,6 +50,7 @@ class UBBoardPaletteManager : public QObject
UBLeftPalette
*
leftPalette
(){
return
mLeftPalette
;}
void
showVirtualKeyboard
(
bool
show
=
true
);
void
initPalettesPosAtStartup
();
void
refreshPalettes
();
UBKeyboardPalette
*
mKeyboardPalette
;
UBRightPalette
*
createDesktopRightPalette
(
QWidget
*
parent
);
...
...
@@ -113,6 +115,8 @@ class UBBoardPaletteManager : public QObject
UBLibWidget
*
mpLibWidget
;
/** The cache properties widget */
UBCachePropertiesWidget
*
mpCachePropWidget
;
/** The teacherbar widget */
UBTeacherBarWidget
*
mpTeacherBarWidget
;
// HACK: here we duplicate the lib widget for the desktop mode
// we MUST refactor the architecture in order to use only one
...
...
src/core/UBPersistenceManager.cpp
View file @
6e181605
...
...
@@ -1056,3 +1056,89 @@ bool UBPersistenceManager::mayHaveWidget(UBDocumentProxy* pDocumentProxy)
return
widgetDir
.
exists
()
&&
widgetDir
.
entryInfoList
(
QDir
::
Dirs
).
length
()
>
0
;
}
void
UBPersistenceManager
::
persistTeacherBar
(
UBDocumentProxy
*
pDocumentProxy
,
int
page
,
sTeacherBarInfos
infos
)
{
if
(
NULL
!=
pDocumentProxy
)
{
QFile
f
(
pDocumentProxy
->
persistencePath
()
+
UBFileSystemUtils
::
digitFileFormat
(
"/page%1.svg"
,
page
+
1
));
if
(
f
.
exists
())
{
if
(
f
.
open
(
QIODevice
::
ReadOnly
))
{
QDomDocument
domDoc
;
if
(
domDoc
.
setContent
(
f
.
readAll
()))
{
f
.
close
();
if
(
f
.
open
(
QIODevice
::
WriteOnly
))
{
QDomElement
rootElem
=
domDoc
.
documentElement
();
QDomNode
teacherBarNode
=
domDoc
.
namedItem
(
"teacherBar"
);
if
(
teacherBarNode
.
isNull
())
{
// Create the element
QDomElement
teacherElem
=
domDoc
.
createElement
(
"teacherBar"
);
rootElem
.
appendChild
(
teacherElem
);
teacherBarNode
=
teacherElem
;
}
// Set the <teacherBar> element values
QDomElement
teacherBarElem
=
teacherBarNode
.
toElement
();
teacherBarElem
.
setAttribute
(
"title"
,
infos
.
title
);
teacherBarElem
.
setAttribute
(
"phasis"
,
infos
.
phasis
);
teacherBarElem
.
setAttribute
(
"duration"
,
infos
.
Duration
);
teacherBarElem
.
setAttribute
(
"equipment"
,
infos
.
material
);
teacherBarElem
.
setAttribute
(
"activity"
,
infos
.
activity
);
teacherBarElem
.
setAttribute
(
"action1Teacher"
,
infos
.
action1Master
);
teacherBarElem
.
setAttribute
(
"action1Student"
,
infos
.
action1Student
);
teacherBarElem
.
setAttribute
(
"action2Teacher"
,
infos
.
action2Master
);
teacherBarElem
.
setAttribute
(
"action2Student"
,
infos
.
action2Student
);
teacherBarElem
.
setAttribute
(
"action3Teacher"
,
infos
.
action3Master
);
teacherBarElem
.
setAttribute
(
"action3Student"
,
infos
.
action3Student
);
// Save the file
f
.
write
(
domDoc
.
toString
().
toAscii
());
f
.
close
();
}
}
f
.
close
();
}
}
}
}
sTeacherBarInfos
UBPersistenceManager
::
getTeacherBarInfos
(
UBDocumentProxy
*
pDocumentProxy
,
int
page
)
{
sTeacherBarInfos
infos
;
if
(
NULL
!=
pDocumentProxy
)
{
QFile
f
(
pDocumentProxy
->
persistencePath
()
+
UBFileSystemUtils
::
digitFileFormat
(
"/page%1.svg"
,
page
+
1
));
if
(
f
.
exists
())
{
if
(
f
.
open
(
QIODevice
::
ReadWrite
))
{
QDomDocument
domDoc
;
if
(
domDoc
.
setContent
(
f
.
readAll
()))
{
QDomElement
rootElem
=
domDoc
.
documentElement
();
QDomNode
teacherBarNode
=
rootElem
.
namedItem
(
"teacherBar"
);
infos
.
title
=
teacherBarNode
.
toElement
().
attributeNode
(
"title"
).
value
();
infos
.
phasis
=
teacherBarNode
.
toElement
().
attributeNode
(
"phasis"
).
value
().
toInt
();
infos
.
Duration
=
teacherBarNode
.
toElement
().
attributeNode
(
"duration"
).
value
().
toInt
();
infos
.
material
=
teacherBarNode
.
toElement
().
attributeNode
(
"equipment"
).
value
();
infos
.
activity
=
teacherBarNode
.
toElement
().
attributeNode
(
"activity"
).
value
().
toInt
();
infos
.
action1Master
=
teacherBarNode
.
toElement
().
attributeNode
(
"action1Teacher"
).
value
();
infos
.
action1Student
=
teacherBarNode
.
toElement
().
attributeNode
(
"action1Student"
).
value
();
infos
.
action2Master
=
teacherBarNode
.
toElement
().
attributeNode
(
"action2Teacher"
).
value
();
infos
.
action2Student
=
teacherBarNode
.
toElement
().
attributeNode
(
"action2Student"
).
value
();
infos
.
action3Master
=
teacherBarNode
.
toElement
().
attributeNode
(
"action3Teacher"
).
value
();
infos
.
action3Student
=
teacherBarNode
.
toElement
().
attributeNode
(
"action3Student"
).
value
();
}
f
.
close
();
}
}
}
return
infos
;
}
src/core/UBPersistenceManager.h
View file @
6e181605
...
...
@@ -20,6 +20,21 @@
#include "UBSceneCache.h"
struct
sTeacherBarInfos
{
QString
title
;
int
phasis
;
int
Duration
;
QString
material
;
int
activity
;
QString
action1Master
;
QString
action1Student
;
QString
action2Master
;
QString
action2Student
;
QString
action3Master
;
QString
action3Student
;
};
class
UBDocument
;
class
UBDocumentProxy
;
class
UBGraphicsScene
;
...
...
@@ -59,6 +74,9 @@ class UBPersistenceManager : public QObject
virtual
void
persistDocumentScene
(
UBDocumentProxy
*
pDocumentProxy
,
UBGraphicsScene
*
pScene
,
const
int
pSceneIndex
);
virtual
void
persistTeacherBar
(
UBDocumentProxy
*
pDocumentProxy
,
int
page
,
sTeacherBarInfos
infos
);
sTeacherBarInfos
getTeacherBarInfos
(
UBDocumentProxy
*
pDocumentProxy
,
int
page
);
virtual
UBGraphicsScene
*
createDocumentSceneAt
(
UBDocumentProxy
*
pDocumentProxy
,
int
index
);
...
...
src/gui/UBDocumentNavigator.cpp
View file @
6e181605
...
...
@@ -138,7 +138,10 @@ void UBDocumentNavigator::updateSpecificThumbnail(int iPage)
{
// Save the current state of the scene
pScene
->
setModified
(
true
);
UBSvgSubsetAdaptor
::
persistScene
(
mCrntDoc
,
pScene
,
iPage
);
if
(
UBApplication
::
boardController
)
{
UBApplication
::
boardController
->
persistCurrentScene
();
}
UBThumbnailAdaptor
::
persistScene
(
mCrntDoc
->
persistencePath
(),
pScene
,
iPage
);
...
...
src/gui/UBTeacherBarWidget.cpp
0 → 100644
View file @
6e181605
#include "UBTeacherBarWidget.h"
#include "core/UBApplication.h"
#include "core/UBPersistenceManager.h"
#include "document/UBDocumentController.h"
#include "document/UBDocumentProxy.h"
#include "board/UBBoardController.h"
#include "board/UBBoardPaletteManager.h"
UBTeacherBarWidget
::
UBTeacherBarWidget
(
QWidget
*
parent
,
const
char
*
name
)
:
UBDockPaletteWidget
(
parent
)
,
mpLayout
(
NULL
)
,
mpTitleLayout
(
NULL
)
,
mpPhasisLayout
(
NULL
)
,
mpDurationLayout
(
NULL
)
,
mpEquipmentLayout
(
NULL
)
,
mpActivityLayout
(
NULL
)
,
mpTitleLabel
(
NULL
)
,
mpPhasisLabel
(
NULL
)
,
mpDurationLabel
(
NULL
)
,
mpEquipmentLabel
(
NULL
)
,
mpActivityLabel
(
NULL
)
,
mpTitle
(
NULL
)
,
mpEquipment
(
NULL
)
,
mpPhasis
(
NULL
)
,
mpDuration
(
NULL
)
,
mpActivity
(
NULL
)
,
mpAction1
(
NULL
)
,
mpAction2
(
NULL
)
,
mpAction3
(
NULL
)
,
mpContainer
(
NULL
)
,
mpContainerLayout
(
NULL
)
{
setObjectName
(
name
);
mName
=
"TeacherBarWidget"
;
setAttribute
(
Qt
::
WA_StyledBackground
,
true
);
setStyleSheet
(
UBApplication
::
globalStyleSheet
());
mIconToLeft
=
QPixmap
(
":images/teacher_open.png"
);
mIconToRight
=
QPixmap
(
":images/teacher_close.png"
);
// Create the GUI
mpContainerLayout
=
new
QVBoxLayout
(
this
);
setLayout
(
mpContainerLayout
);
mpContainer
=
new
QWidget
(
this
);
mpContainer
->
setObjectName
(
"DockPaletteWidgetBox"
);
mpContainerLayout
->
addWidget
(
mpContainer
);
mpLayout
=
new
QVBoxLayout
(
mpContainer
);
mpContainer
->
setLayout
(
mpLayout
);
// Title
mpTitleLabel
=
new
QLabel
(
tr
(
"Title"
),
mpContainer
);
mpTitleLabel
->
setMinimumWidth
(
LABEL_MINWIDHT
);
mpTitleLabel
->
setAlignment
(
Qt
::
AlignRight
);
mpTitle
=
new
QLineEdit
(
mpContainer
);
mpTitle
->
setObjectName
(
"DockPaletteWidgetLineEdit"
);
mpTitleLayout
=
new
QHBoxLayout
();
mpTitleLayout
->
addWidget
(
mpTitleLabel
,
0
);
mpTitleLayout
->
addWidget
(
mpTitle
,
1
);
mpLayout
->
addLayout
(
mpTitleLayout
);
// Phasis
mpPhasisLabel
=
new
QLabel
(
tr
(
"Phasis"
),
mpContainer
);
mpPhasisLabel
->
setMinimumWidth
(
LABEL_MINWIDHT
);
mpPhasisLabel
->
setAlignment
(
Qt
::
AlignRight
);
mpPhasis
=
new
QComboBox
(
mpContainer
);
mpPhasis
->
setObjectName
(
"DockPaletteWidgetComboBox"
);
mpPhasisLayout
=
new
QHBoxLayout
();
mpPhasisLayout
->
addWidget
(
mpPhasisLabel
,
0
);
mpPhasisLayout
->
addWidget
(
mpPhasis
,
1
);
mpLayout
->
addLayout
(
mpPhasisLayout
);
// Duration
mpDurationLabel
=
new
QLabel
(
tr
(
"Duration"
),
mpContainer
);
mpDurationLabel
->
setMinimumWidth
(
LABEL_MINWIDHT
);
mpDurationLabel
->
setAlignment
(
Qt
::
AlignRight
);
mpDuration
=
new
QComboBox
(
mpContainer
);
mpDuration
->
setObjectName
(
"DockPaletteWidgetComboBox"
);
mpDurationLayout
=
new
QHBoxLayout
();
mpDurationLayout
->
addWidget
(
mpDurationLabel
,
0
);
mpDurationLayout
->
addWidget
(
mpDuration
,
1
);
mpLayout
->
addLayout
(
mpDurationLayout
);
// Equipment
mpEquipmentLabel
=
new
QLabel
(
tr
(
"Equipment"
),
mpContainer
);
mpEquipmentLabel
->
setMinimumWidth
(
LABEL_MINWIDHT
);
mpEquipmentLabel
->
setAlignment
(
Qt
::
AlignRight
);
mpEquipment
=
new
QLineEdit
(
mpContainer
);
mpEquipment
->
setObjectName
(
"DockPaletteWidgetLineEdit"
);
mpEquipmentLayout
=
new
QHBoxLayout
();
mpEquipmentLayout
->
addWidget
(
mpEquipmentLabel
,
0
);
mpEquipmentLayout
->
addWidget
(
mpEquipment
,
1
);
mpLayout
->
addLayout
(
mpEquipmentLayout
);
// Activity
mpActivityLabel
=
new
QLabel
(
tr
(
"Activity"
),
mpContainer
);
mpActivityLabel
->
setMinimumWidth
(
LABEL_MINWIDHT
);
mpActivityLabel
->
setAlignment
(
Qt
::
AlignRight
);
mpActivity
=
new
QComboBox
(
mpContainer
);
mpActivity
->
setObjectName
(
"DockPaletteWidgetComboBox"
);
mpActivityLayout
=
new
QHBoxLayout
();
mpActivityLayout
->
addWidget
(
mpActivityLabel
,
0
);
mpActivityLayout
->
addWidget
(
mpActivity
,
1
);
mpLayout
->
addLayout
(
mpActivityLayout
);
// Actions
mpAction1
=
new
UBTeacherStudentAction
(
1
,
mpContainer
);
mpAction2
=
new
UBTeacherStudentAction
(
2
,
mpContainer
);
mpAction3
=
new
UBTeacherStudentAction
(
3
,
mpContainer
);
mpLayout
->
addWidget
(
mpAction1
);
mpLayout
->
addWidget
(
mpAction2
);
mpLayout
->
addWidget
(
mpAction3
);
populateCombos
();
connect
(
UBApplication
::
boardController
,
SIGNAL
(
activeSceneWillChange
()),
this
,
SLOT
(
saveContent
()));
connect
(
UBApplication
::
boardController
,
SIGNAL
(
activeSceneChanged
()),
this
,
SLOT
(
loadContent
()));
connect
(
mpTitle
,
SIGNAL
(
textChanged
(
QString
)),
this
,
SLOT
(
onValueChanged
()));
connect
(
mpPhasis
,
SIGNAL
(
currentIndexChanged
(
int
)),
this
,
SLOT
(
onValueChanged
()));
connect
(
mpDuration
,
SIGNAL
(
currentIndexChanged
(
int
)),
this
,
SLOT
(
onValueChanged
()));
connect
(
mpEquipment
,
SIGNAL
(
textChanged
(
QString
)),
this
,
SLOT
(
onValueChanged
()));
connect
(
mpActivity
,
SIGNAL
(
currentIndexChanged
(
int
)),
this
,
SLOT
(
onValueChanged
()));
connect
(
mpAction1
->
teacher
(),
SIGNAL
(
textChanged
()),
this
,
SLOT
(
onValueChanged
()));
connect
(
mpAction1
->
student
(),
SIGNAL
(
textChanged
()),
this
,
SLOT
(
onValueChanged
()));
connect
(
mpAction2
->
teacher
(),
SIGNAL
(
textChanged
()),
this
,
SLOT
(
onValueChanged
()));
connect
(
mpAction2
->
student
(),
SIGNAL
(
textChanged
()),
this
,
SLOT
(
onValueChanged
()));
connect
(
mpAction3
->
teacher
(),
SIGNAL
(
textChanged
()),
this
,
SLOT
(
onValueChanged
()));
connect
(
mpAction3
->
student
(),
SIGNAL
(
textChanged
()),
this
,
SLOT
(
onValueChanged
()));
}
UBTeacherBarWidget
::~
UBTeacherBarWidget
()
{
if
(
NULL
!=
mpAction3
)
{
delete
mpAction3
;
mpAction3
=
NULL
;
}
if
(
NULL
!=
mpAction2
)
{
delete
mpAction2
;
mpAction2
=
NULL
;
}
if
(
NULL
!=
mpAction1
)
{
delete
mpAction1
;
mpAction1
=
NULL
;
}
if
(
NULL
!=
mpActivityLabel
)
{
delete
mpActivityLabel
;
mpActivityLabel
=
NULL
;
}
if
(
NULL
!=
mpActivity
)
{
delete
mpActivity
;
mpActivity
=
NULL
;
}
if
(
NULL
!=
mpActivityLayout
)
{
delete
mpActivityLayout
;
mpActivityLayout
=
NULL
;
}
if
(
NULL
!=
mpEquipmentLabel
)
{
delete
mpEquipmentLabel
;
mpEquipmentLabel
=
NULL
;
}
if
(
NULL
!=
mpEquipment
)
{
delete
mpEquipment
;
mpEquipment
=
NULL
;
}
if
(
NULL
!=
mpEquipmentLayout
)
{
delete
mpEquipmentLayout
;
mpEquipmentLayout
=
NULL
;
}
if
(
NULL
!=
mpDurationLabel
)
{
delete
mpDurationLabel
;
mpDurationLabel
=
NULL
;
}
if
(
NULL
!=
mpDuration
)
{
delete
mpDuration
;
mpDuration
=
NULL
;
}
if
(
NULL
!=
mpDurationLayout
)
{
delete
mpDurationLayout
;
mpDurationLayout
=
NULL
;
}
if
(
NULL
!=
mpPhasisLabel
)
{
delete
mpPhasisLabel
;
mpPhasisLabel
=
NULL
;
}
if
(
NULL
!=
mpPhasisLayout
)
{
delete
mpPhasisLayout
;
mpPhasisLayout
=
NULL
;
}
if
(
NULL
!=
mpTitleLabel
)
{
delete
mpTitleLabel
;
mpTitleLabel
=
NULL
;
}
if
(
NULL
!=
mpTitle
)
{
delete
mpTitle
;
mpTitle
=
NULL
;
}
if
(
NULL
!=
mpTitleLayout
)
{
delete
mpTitleLayout
;
mpTitleLayout
=
NULL
;
}
if
(
NULL
!=
mpLayout
)
{
delete
mpLayout
;
mpLayout
=
NULL
;
}
if
(
NULL
!=
mpContainer
)
{
delete
mpContainer
;
mpContainer
=
NULL
;
}
if
(
NULL
!=
mpContainerLayout
)
{
delete
mpContainerLayout
;
mpContainerLayout
=
NULL
;
}
}
void
UBTeacherBarWidget
::
populateCombos
()
{
QStringList
qslPhasis
;
qslPhasis
<<
tr
(
""
)
<<
tr
(
"I discover"
)
<<
tr
(
"I experiment"
)
<<
tr
(
"I train myself"
)
<<
tr
(
"I play"
)
<<
tr
(
"I memorize"
);
mpPhasis
->
insertItems
(
0
,
qslPhasis
);
mpPhasis
->
setCurrentIndex
(
0
);
QStringList
qslDuration
;
qslDuration
<<
tr
(
""
)
<<
tr
(
"Short"
)
<<
tr
(
"Middle"
)
<<
tr
(
"Long"
);
mpDuration
->
insertItems
(
0
,
qslDuration
);
mpDuration
->
setCurrentIndex
(
0
);
QStringList
qslActivity
;
qslActivity
<<
tr
(
""
)
<<
tr
(
"Alone"
)
<<
tr
(
"By Group"
)
<<
tr
(
"All together"
);
mpActivity
->
insertItems
(
0
,
qslActivity
);
mpActivity
->
setCurrentIndex
(
0
);
}
void
UBTeacherBarWidget
::
saveContent
()
{
sTeacherBarInfos
infos
;
infos
.
title
=
mpTitle
->
text
();
infos
.
phasis
=
mpPhasis
->
currentIndex
();
infos
.
Duration
=
mpDuration
->
currentIndex
();
infos
.
material
=
mpEquipment
->
text
();
infos
.
activity
=
mpActivity
->
currentIndex
();
infos
.
action1Master
=
mpAction1
->
teacherText
();
infos
.
action1Student
=
mpAction1
->
studentText
();
infos
.
action2Master
=
mpAction2
->
teacherText
();
infos
.
action2Student
=
mpAction2
->
studentText
();
infos
.
action3Master
=
mpAction3
->
teacherText
();
infos
.
action3Student
=
mpAction3
->
studentText
();
UBPersistenceManager
::
persistenceManager
()
->
persistTeacherBar
(
UBApplication
::
boardController
->
activeDocument
(),
UBApplication
::
boardController
->
activeSceneIndex
(),
infos
);
}
void
UBTeacherBarWidget
::
loadContent
()
{
sTeacherBarInfos
nextInfos
=
UBPersistenceManager
::
persistenceManager
()
->
getTeacherBarInfos
(
UBApplication
::
boardController
->
activeDocument
(),
UBApplication
::
boardController
->
activeSceneIndex
());
mpTitle
->
setText
(
nextInfos
.
title
);
mpPhasis
->
setCurrentIndex
(
nextInfos
.
phasis
);
mpDuration
->
setCurrentIndex
(
nextInfos
.
Duration
);
mpEquipment
->
setText
(
nextInfos
.
material
);
mpActivity
->
setCurrentIndex
(
nextInfos
.
activity
);
mpAction1
->
setTeacherText
(
nextInfos
.
action1Master
);
mpAction1
->
setStudentText
(
nextInfos
.
action1Student
);
mpAction2
->
setTeacherText
(
nextInfos
.
action2Master
);
mpAction2
->
setStudentText
(
nextInfos
.
action2Student
);
mpAction3
->
setTeacherText
(
nextInfos
.
action3Master
);
mpAction3
->
setStudentText
(
nextInfos
.
action3Student
);
}
void
UBTeacherBarWidget
::
onValueChanged
()
{
if
(
mpTitle
->
text
()
==
""
&&
mpDuration
->
currentIndex
()
==
0
&&
mpPhasis
->
currentIndex
()
==
0
&&
mpEquipment
->
text
()
==
""
&&
mpActivity
->
currentIndex
()
==
0
&&
mpAction1
->
teacherText
()
==
""
&&
mpAction1
->
studentText
()
==
""
&&
mpAction2
->
teacherText
()
==
""
&&
mpAction2
->
studentText
()
==
""
&&
mpAction3
->
teacherText
()
==
""
&&
mpAction3
->
studentText
()
==
""
)
{
mIconToLeft
=
QPixmap
(
":images/teacher_open_disabled.png"
);
mIconToRight
=
QPixmap
(
":images/teacher_close_disabled.png"
);
}
else
{
mIconToLeft
=
QPixmap
(
":images/teacher_open.png"
);
mIconToRight
=
QPixmap
(
":images/teacher_close.png"
);
}
UBApplication
::
boardController
->
paletteManager
()
->
refreshPalettes
();
}
UBTeacherStudentAction
::
UBTeacherStudentAction
(
int
actionNumber
,
QWidget
*
parent
,
const
char
*
name
)
:
QWidget
(
parent
)
,
mpActionLabel
(
NULL
)
,
mpTeacherLabel
(
NULL
)
,
mpStudentLabel
(
NULL
)
,
mpTeacher
(
NULL
)
,
mpStudent
(
NULL
)
,
mpLayout
(
NULL
)
,
mpTeacherLayout
(
NULL
)
,
mpStudentLayout
(
NULL
)
{
setObjectName
(
name
);
mActionNumber
=
actionNumber
;
setAttribute
(
Qt
::
WA_StyledBackground
,
true
);
setStyleSheet
(
UBApplication
::
globalStyleSheet
());
// Create the GUI
mpLayout
=
new
QVBoxLayout
(
this
);
setLayout
(
mpLayout
);
mpActionLabel
=
new
QLabel
(
tr
(
"Action %0"
).
arg
(
mActionNumber
),
this
);
mpLayout
->
addWidget
(
mpActionLabel
,
0
);
mpTeacherLayout
=
new
QHBoxLayout
();
mpTeacherLabel
=
new
QLabel
(
tr
(
"Teacher"
),
this
);
mpTeacherLabel
->
setAlignment
(
Qt
::
AlignTop
);
mpTeacher
=
new
QTextEdit
(
this
);
mpTeacher
->
setObjectName
(
"TeacherStudentBox"
);
mpTeacherLayout
->
addWidget
(
mpTeacherLabel
,
0
);
mpTeacherLayout
->
addWidget
(
mpTeacher
,
1
);
mpLayout
->
addLayout
(
mpTeacherLayout
,
1
);
mpStudentLayout
=
new
QHBoxLayout
();
mpStudentLabel
=
new
QLabel
(
tr
(
"Student"
),
this
);
mpStudentLabel
->
setAlignment
(
Qt
::
AlignTop
);
mpStudent
=
new
QTextEdit
(
this
);
mpStudent
->
setObjectName
(
"TeacherStudentBox"
);
mpStudentLayout
->
addWidget
(
mpStudentLabel
,
0
);
mpStudentLayout
->
addWidget
(
mpStudent
,
1
);
mpLayout
->
addLayout
(
mpStudentLayout
,
1
);
}
UBTeacherStudentAction
::~
UBTeacherStudentAction
()
{
if
(
NULL
!=
mpActionLabel
)
{
delete
mpActionLabel
;
mpActionLabel
=
NULL
;
}
if
(
NULL
!=
mpTeacherLabel
)
{
delete
mpTeacherLabel
;
mpTeacherLabel
=
NULL
;
}
if
(
NULL
!=
mpTeacher
)
{
delete
mpTeacher
;
mpTeacher
=
NULL
;
}
if
(
NULL
!=
mpTeacherLayout
)
{
delete
mpTeacherLayout
;
mpTeacherLayout
=
NULL
;
}
if
(
NULL
!=
mpStudentLabel
)
{
delete
mpStudentLabel
;
mpStudentLabel
=
NULL
;
}
if
(
NULL
!=
mpStudent
)
{
delete
mpStudent
;
mpStudent
=
NULL
;
}
if
(
NULL
!=
mpStudentLayout
)
{
delete
mpStudentLayout
;
mpStudentLayout
=
NULL
;
}
if
(
NULL
!=
mpLayout
)
{
delete
mpLayout
;
mpLayout
=
NULL
;
}
}
QString
UBTeacherStudentAction
::
teacherText
()
{
return
mpTeacher
->
document
()
->
toPlainText
();
}
QString
UBTeacherStudentAction
::
studentText
()
{
return
mpStudent
->
document
()
->
toPlainText
();
}
void
UBTeacherStudentAction
::
setTeacherText
(
QString
text
)
{
mpTeacher
->
setText
(
text
);
}
void
UBTeacherStudentAction
::
setStudentText
(
QString
text
)
{
mpStudent
->
setText
(
text
);
}
QTextEdit
*
UBTeacherStudentAction
::
teacher
()
{
return
mpTeacher
;
}
QTextEdit
*
UBTeacherStudentAction
::
student
()
{
return
mpStudent
;
}
src/gui/UBTeacherBarWidget.h
0 → 100644
View file @
6e181605
#ifndef UBTEACHERBARWIDGET_H
#define UBTEACHERBARWIDGET_H
#include <QWidget>
#include <QVBoxLayout>
#include <QHBoxLayout>
#include <QLabel>
#include <QTextEdit>
#include <QLineEdit>
#include <QComboBox>
#include "UBDockPaletteWidget.h"
#define LABEL_MINWIDHT 80
class
UBTeacherStudentAction
:
public
QWidget
{
public
:
UBTeacherStudentAction
(
int
actionNumber
,
QWidget
*
parent
=
0
,
const
char
*
name
=
"UBTeacherStudentAction"
);
~
UBTeacherStudentAction
();
QString
teacherText
();
QString
studentText
();
void
setTeacherText
(
QString
text
);
void
setStudentText
(
QString
text
);
QTextEdit
*
teacher
();
QTextEdit
*
student
();
private
:
int
mActionNumber
;
QLabel
*
mpActionLabel
;
QLabel
*
mpTeacherLabel
;
QLabel
*
mpStudentLabel
;
QTextEdit
*
mpTeacher
;
QTextEdit
*
mpStudent
;
QVBoxLayout
*
mpLayout
;
QHBoxLayout
*
mpTeacherLayout
;
QHBoxLayout
*
mpStudentLayout
;
};
class
UBTeacherBarWidget
:
public
UBDockPaletteWidget
{
Q_OBJECT
public
:
UBTeacherBarWidget
(
QWidget
*
parent
=
0
,
const
char
*
name
=
"UBTeacherBarWidget"
);
~
UBTeacherBarWidget
();
private
slots
:
void
saveContent
();
void
loadContent
();
void
onValueChanged
();
private
:
void
populateCombos
();
QVBoxLayout
*
mpLayout
;
QHBoxLayout
*
mpTitleLayout
;
QHBoxLayout
*
mpPhasisLayout
;
QHBoxLayout
*
mpDurationLayout
;
QHBoxLayout
*
mpEquipmentLayout
;
QHBoxLayout
*
mpActivityLayout
;
QLabel
*
mpTitleLabel
;
QLabel
*
mpPhasisLabel
;
QLabel
*
mpDurationLabel
;
QLabel
*
mpEquipmentLabel
;
QLabel
*
mpActivityLabel
;
QLineEdit
*
mpTitle
;
QLineEdit
*
mpEquipment
;
QComboBox
*
mpPhasis
;
QComboBox
*
mpDuration
;
QComboBox
*
mpActivity
;
UBTeacherStudentAction
*
mpAction1
;
UBTeacherStudentAction
*
mpAction2
;
UBTeacherStudentAction
*
mpAction3
;
QWidget
*
mpContainer
;
QVBoxLayout
*
mpContainerLayout
;
};
#endif // UBTEACHERBARWIDGET_H
src/gui/gui.pri
View file @
6e181605
...
...
@@ -42,7 +42,8 @@ HEADERS += src/gui/UBThumbnailView.h \
src/gui/UBPageNavigationWidget.h \
src/gui/UBLibWidget.h \
src/gui/UBMagnifer.h \
src/gui/UBCachePropertiesWidget.h
src/gui/UBCachePropertiesWidget.h \
src/gui/UBTeacherBarWidget.h
SOURCES += src/gui/UBThumbnailView.cpp \
src/gui/UBFloatingPalette.cpp \
...
...
@@ -87,7 +88,8 @@ SOURCES += src/gui/UBThumbnailView.cpp \
src/gui/UBPageNavigationWidget.cpp \
src/gui/UBLibWidget.cpp \
src/gui/UBMagnifer.cpp \
src/gui/UBCachePropertiesWidget.cpp
src/gui/UBCachePropertiesWidget.cpp \
src/gui/UBTeacherBarWidget.cpp
win32 {
...
...
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