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/viewelementsdisplaytracks.c | 84 ++++++++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 coreengine/viewelementsdisplaytracks.c (limited to 'coreengine/viewelementsdisplaytracks.c') diff --git a/coreengine/viewelementsdisplaytracks.c b/coreengine/viewelementsdisplaytracks.c new file mode 100644 index 0000000..d5ef124 --- /dev/null +++ b/coreengine/viewelementsdisplaytracks.c @@ -0,0 +1,84 @@ +#include "viewelementsdisplaytracks.h" + +/****************************************************************** +* cVeDtBackground +******************************************************************/ +cVeDtBackground::cVeDtBackground(void) { + numTracks = 0; +} + +cVeDtBackground::~cVeDtBackground(void) { +} + +void cVeDtBackground::SetTokenContainer(void) { + tokenContainer = new skindesignerapi::cTokenContainer(); + tokenContainer->DefineIntToken("{numtracks}", (int)eDTBackgroundIT::numtracks); + InheritTokenContainer(); +} + +void cVeDtBackground::Set(int numTracks) { + this->numTracks = numTracks; +} + +bool cVeDtBackground::Parse(bool forced) { + if (!cViewElement::Parse(forced)) + return false; + tokenContainer->Clear(); + tokenContainer->AddIntToken((int)eDTBackgroundIT::numtracks, numTracks); + SetDirty(); + return true; +} + +/****************************************************************** +* cVeDtHeader +******************************************************************/ +cVeDtHeader::cVeDtHeader(void) { + title = NULL; + audioChannel = 0; + numTracks = 0; + changed = true; +} + +cVeDtHeader::~cVeDtHeader(void) { + free(title); +} + +void cVeDtHeader::SetTokenContainer(void) { + tokenContainer = new skindesignerapi::cTokenContainer(); + tokenContainer->DefineIntToken("{numtracks}", (int)eDTHeaderIT::numtracks); + tokenContainer->DefineIntToken("{isstereo}", (int)eDTHeaderIT::isstereo); + tokenContainer->DefineIntToken("{isac3}", (int)eDTHeaderIT::isac3); + tokenContainer->DefineStringToken("{title}", (int)eDTHeaderST::title); + InheritTokenContainer(); +} + +void cVeDtHeader::SetTitle(const char *title) { + if (!title) + return; + free(this->title); + this->title = strdup(title); + changed = true; +} + +void cVeDtHeader::SetNumtracks(int numTracks) { + this->numTracks = numTracks; + changed = true; +} + +void cVeDtHeader::SetAudiochannel(int audioChannel) { + this->audioChannel = audioChannel; + changed = true; +} + +bool cVeDtHeader::Parse(bool forced) { + if (!cViewElement::Parse(forced) || !changed) + return false; + + tokenContainer->Clear(); + tokenContainer->AddIntToken((int)eDTHeaderIT::numtracks, numTracks); + tokenContainer->AddIntToken((int)eDTHeaderIT::isstereo, (audioChannel < 0) ? false : true); + tokenContainer->AddIntToken((int)eDTHeaderIT::isac3, (audioChannel < 0) ? true : false); + tokenContainer->AddStringToken((int)eDTHeaderST::title, title); + SetDirty(); + return true; +} \ No newline at end of file -- cgit v1.2.3