From 809fbda03c5014ba9cd361f5113d1d717cd41ea6 Mon Sep 17 00:00:00 2001 From: louis Date: Tue, 26 Jan 2016 18:32:38 +0100 Subject: Version 0.8.0 beta --- coreengine/viewdisplaymessage.c | 54 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 coreengine/viewdisplaymessage.c (limited to 'coreengine/viewdisplaymessage.c') diff --git a/coreengine/viewdisplaymessage.c b/coreengine/viewdisplaymessage.c new file mode 100644 index 0000000..a9613fa --- /dev/null +++ b/coreengine/viewdisplaymessage.c @@ -0,0 +1,54 @@ +#include "viewdisplaymessage.h" +#include "../config.h" + +/************************************************************************************ +* cViewMessage +************************************************************************************/ + +cViewMessage::cViewMessage(void) { + ClearVariables(); + viewId = eViewType::DisplayMessage; + viewName = strdup("displaymessage"); + numViewElements = (int)eVeDisplayMessage::count; + viewElements = new cViewElement*[numViewElements]; + for (int i=0; i < numViewElements; i++) { + viewElements[i] = NULL; + } + SetViewElements(); + veMessage = NULL; +} + +cViewMessage::~cViewMessage() { +} + +void cViewMessage::SetViewElements(void) { + viewElementNames.insert(pair("background", (int)eVeDisplayMessage::background)); + viewElementNames.insert(pair("message", (int)eVeDisplayMessage::message)); +} + +void cViewMessage::SetViewElementObjects(void) { + if (!viewElements[(int)eVeDisplayMessage::message]) + return; + veMessage = dynamic_cast(viewElements[(int)eVeDisplayMessage::message]); +} + +void cViewMessage::ClearVariables(void) { + init = true; +} + +void cViewMessage::SetMessage(eMessageType type, const char *text) { + if (!text) + veMessage->Clear(); + else + veMessage->Set(type, text); +} + +void cViewMessage::Flush(void) { + if (init) { + sdOsd.LockFlush(); + Render((int)eVeDisplayMessage::background); + } + Render((int)eVeDisplayMessage::message); + cView::Flush(); +} + -- cgit v1.2.3