summaryrefslogtreecommitdiff
path: root/displaymessage.c
diff options
context:
space:
mode:
Diffstat (limited to 'displaymessage.c')
-rw-r--r--displaymessage.c41
1 files changed, 10 insertions, 31 deletions
diff --git a/displaymessage.c b/displaymessage.c
index c125fd3..535f6d5 100644
--- a/displaymessage.c
+++ b/displaymessage.c
@@ -1,46 +1,25 @@
#include "displaymessage.h"
-cSDDisplayMessage::cSDDisplayMessage(cTemplate *messageTemplate) {
- messageView = NULL;
- doOutput = true;
- initial = true;
- if (!messageTemplate) {
- doOutput = false;
- esyslog("skindesigner: displayMessage no valid template - aborting");
- return;
- }
- messageView = new cDisplayMessageView(messageTemplate->GetRootView());
- if (!messageView->createOsd()) {
- doOutput = false;
- return;
- }
- messageView->DrawDebugGrid();
- messageView->DrawBackground();
+cSDDisplayMessage::cSDDisplayMessage(cViewMessage *messageView) {
+ view = messageView;
+ ok = view->Init();
+ if (!ok)
+ esyslog("skindesigner: Error initiating displaymessage view - aborting");
}
cSDDisplayMessage::~cSDDisplayMessage() {
- if (messageView)
- delete messageView;
+ view->Close();
}
void cSDDisplayMessage::SetMessage(eMessageType Type, const char *Text) {
- if (!doOutput)
- return;
- messageView->ClearMessage();
- if (!Text) {
+ if (!ok)
return;
- }
- messageView->DrawMessage(Type, Text);
+ view->SetMessage(Type, Text);
}
void cSDDisplayMessage::Flush(void) {
- if (!doOutput)
+ if (!ok)
return;
- if (initial) {
- messageView->DoFadeIn();
- initial = false;
- } else {
- messageView->Flush();
- }
+ view->Flush();
}