From b0509b5182b6e0d04f05e6b3d5676b0d21f51966 Mon Sep 17 00:00:00 2001 From: louis Date: Sat, 27 Sep 2014 09:25:14 +0200 Subject: initial commit version 0.0.1 --- views/displayaudiotracksview.c | 79 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 views/displayaudiotracksview.c (limited to 'views/displayaudiotracksview.c') diff --git a/views/displayaudiotracksview.c b/views/displayaudiotracksview.c new file mode 100644 index 0000000..c4b9f9a --- /dev/null +++ b/views/displayaudiotracksview.c @@ -0,0 +1,79 @@ +#define __STL_CONFIG_H +#include +#include "displayaudiotracksview.h" + +cDisplayAudiotracksView::cDisplayAudiotracksView(int numTracks, cTemplateView *tmplView) : cView(tmplView) { + DeleteOsdOnExit(); + SetFadeTime(tmplView->GetNumericParameter(ptFadeTime)); + + this->numTracks = numTracks; + + cTemplateViewList *tmplMenuItems = tmplView->GetViewList(vlMenuItem); + listView = NULL; + if (tmplMenuItems) { + listView = new cDisplayMenuListView(tmplMenuItems, numTracks); + } +} + +cDisplayAudiotracksView::~cDisplayAudiotracksView() { + if (listView) + delete listView; + CancelSave(); + FadeOut(); +} + +bool cDisplayAudiotracksView::createOsd(void) { + cRect osdSize = tmplView->GetOsdSize(); + bool ok = CreateOsd(cOsd::OsdLeft() + osdSize.X(), + cOsd::OsdTop() + osdSize.Y(), + osdSize.Width(), + osdSize.Height()); + return ok; +} + +void cDisplayAudiotracksView::DrawBackground(void) { + if (!ViewElementImplemented(veBackground)) { + return; + } + + map < string, string > stringTokens; + map < string, int > intTokens; + + intTokens.insert(pair("numtracks", numTracks)); + + DrawViewElement(veBackground, &stringTokens, &intTokens); +} + +void cDisplayAudiotracksView::DrawHeader(const char *title, int audioChannel) { + if (!ViewElementImplemented(veHeader)) { + return; + } + + map < string, string > stringTokens; + map < string, int > intTokens; + + intTokens.insert(pair("numtracks", numTracks)); + if (audioChannel < 0) { + intTokens.insert(pair("isac3", true)); + intTokens.insert(pair("isstereo", false)); + } else { + intTokens.insert(pair("isac3", false)); + intTokens.insert(pair("isstereo", true)); + } + stringTokens.insert(pair("title", title)); + + ClearViewElement(veHeader); + DrawViewElement(veHeader, &stringTokens, &intTokens); +} + +void cDisplayAudiotracksView::RenderMenuItems(void) { + if (listView) + listView->Render(); +} + +void cDisplayAudiotracksView::Action(void) { + SetInitFinished(); + FadeIn(); + DoFlush(); + cView::Action(); +} -- cgit v1.2.3