summaryrefslogtreecommitdiff
path: root/displayreplay.c
diff options
context:
space:
mode:
authorlouis <louis.braun@gmx.de>2014-02-01 14:08:09 +0100
committerlouis <louis.braun@gmx.de>2014-02-01 14:08:09 +0100
commit31c7bd5756155eff46d24ffecb03afa61554ffc9 (patch)
tree2ea7bb5cd6248f65d1c9b6de8350a25b618e45f8 /displayreplay.c
parent5ab9ad2ed362150cd7c06b4782d444495495f2db (diff)
downloadskin-nopacity-31c7bd5756155eff46d24ffecb03afa61554ffc9.tar.gz
skin-nopacity-31c7bd5756155eff46d24ffecb03afa61554ffc9.tar.bz2
Fixed bug that messages are not displayed during replay of a recording if DisplayReplay is active
Diffstat (limited to 'displayreplay.c')
-rw-r--r--displayreplay.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/displayreplay.c b/displayreplay.c
index 4ffb537..6e42cea 100644
--- a/displayreplay.c
+++ b/displayreplay.c
@@ -31,6 +31,7 @@ cNopacityDisplayReplay::~cNopacityDisplayReplay() {
osd->DestroyPixmap(pixmapScreenResBackground);
osd->DestroyPixmap(pixmapScreenRes);
osd->DestroyPixmap(pixmapJump);
+ osd->DestroyPixmap(pixmapMessage);
}
osd->DestroyPixmap(pixmapControls);
osd->DestroyPixmap(pixmapRew);
@@ -102,6 +103,10 @@ void cNopacityDisplayReplay::CreatePixmaps(void) {
geoManager->replayJumpY,
geoManager->replayJumpWidth,
geoManager->replayJumpHeight));
+ pixmapMessage = osd->CreatePixmap(4, cRect(0,
+ geoManager->replayMessageY,
+ geoManager->replayMessageWidth,
+ geoManager->replayMessageHeight));
}
int controlY = geoManager->replayHeaderHeight
@@ -154,6 +159,7 @@ void cNopacityDisplayReplay::CreatePixmaps(void) {
pixmapScreenResBackground->SetAlpha(0);
pixmapScreenRes->SetAlpha(0);
pixmapJump->SetAlpha(0);
+ pixmapMessage->SetAlpha(0);
}
pixmapControls->SetAlpha(0);
pixmapRew->SetAlpha(0);
@@ -212,6 +218,7 @@ void cNopacityDisplayReplay::DrawBackground(void) {
pixmapScreenResBackground->Fill(clrTransparent);
pixmapScreenRes->Fill(clrTransparent);
pixmapJump->Fill(clrTransparent);
+ pixmapMessage->Fill(clrTransparent);
} else {
pixmapControls->Fill(Theme.Color(clrMenuBorder));
pixmapControls->DrawRectangle(cRect(2, 2, pixmapControls->ViewPort().Width() - 4, pixmapControls->ViewPort().Height() - 4),Theme.Color(clrReplayBackground));
@@ -462,6 +469,14 @@ void cNopacityDisplayReplay::SetJump(const char *Jump) {
}
void cNopacityDisplayReplay::SetMessage(eMessageType Type, const char *Text) {
+ pixmapMessage->Fill(clrTransparent);
+ if (!Text)
+ return;
+ pixmapMessage->DrawText(cPoint(geoManager->replayMessageHeight/2, 0),
+ Text,
+ Theme.Color(clrReplayHead),
+ clrTransparent,
+ fontManager->replayHeader);
}
void cNopacityDisplayReplay::Flush(void) {
@@ -496,6 +511,8 @@ void cNopacityDisplayReplay::Action(void) {
pixmapScreenResBackground->SetAlpha(Alpha);
pixmapScreenRes->SetAlpha(Alpha);
pixmapJump->SetAlpha(Alpha);
+ pixmapMessage->SetAlpha(Alpha);
+
}
pixmapControls->SetAlpha(Alpha);
pixmapRew->SetAlpha(Alpha);