summaryrefslogtreecommitdiff
path: root/coreengine/viewelementsdisplaymenu.c
diff options
context:
space:
mode:
authorlouis <louis.braun@gmx.de>2016-02-17 18:08:38 +0100
committerlouis <louis.braun@gmx.de>2016-02-17 18:08:38 +0100
commit21732b177721386ab23ac6a3fa1d145e0049aee4 (patch)
tree41207336e453c1b7dce0b96816049cf2e0dc56e7 /coreengine/viewelementsdisplaymenu.c
parentc22ba065c418ec5f277a1c57489097dac46e1133 (diff)
downloadvdr-plugin-skindesigner-21732b177721386ab23ac6a3fa1d145e0049aee4.tar.gz
vdr-plugin-skindesigner-21732b177721386ab23ac6a3fa1d145e0049aee4.tar.bz2
fixed display of header in schedules menu
Diffstat (limited to 'coreengine/viewelementsdisplaymenu.c')
-rw-r--r--coreengine/viewelementsdisplaymenu.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/coreengine/viewelementsdisplaymenu.c b/coreengine/viewelementsdisplaymenu.c
index b7c20e9..cfe0540 100644
--- a/coreengine/viewelementsdisplaymenu.c
+++ b/coreengine/viewelementsdisplaymenu.c
@@ -11,6 +11,7 @@
* cVeDmHeader
******************************************************************/
cVeDmHeader::cVeDmHeader(void) {
+ changed = false;
title = NULL;
channelName = NULL;
channelNumber = 0;
@@ -48,12 +49,11 @@ void cVeDmHeader::SetTokenContainer(void) {
}
void cVeDmHeader::SetTitle(const char *title) {
+ if (this->title && !strcmp(this->title, title))
+ return;
+ free(this->title);
this->title = strdup(title);
- free(channelName);
- channelName = NULL;
- channelNumber = 0;
- free(channelId);
- channelId = NULL;
+ changed = true;
}
void cVeDmHeader::SetChannel(const cChannel *channel) {
@@ -65,6 +65,8 @@ void cVeDmHeader::SetChannel(const cChannel *channel) {
}
void cVeDmHeader::Set(eMenuCategory menuCat) {
+ if (!changed)
+ return;
tokenContainer->Clear();
tokenContainer->AddStringToken((int)eDMHeaderST::title, title);
tokenContainer->AddStringToken((int)eDMHeaderST::vdrversion, VDRVERSION);
@@ -101,6 +103,7 @@ void cVeDmHeader::Set(eMenuCategory menuCat) {
tokenContainer->AddIntToken((int)eDMHeaderIT::channelnumber, channelNumber);
tokenContainer->AddIntToken((int)eDMHeaderIT::channellogoexists, imgCache->LogoExists(channelId));
}
+ changed = false;
SetDirty();
}