diff options
-rw-r--r-- | CONTRIBUTORS | 2 | ||||
-rw-r--r-- | HISTORY | 5 | ||||
-rw-r--r-- | menu.c | 16 | ||||
-rw-r--r-- | menu.h | 6 |
4 files changed, 22 insertions, 7 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS index d3921311..e0b92d02 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -184,7 +184,7 @@ Stefan Huelswitt <huels@iname.com> for creating mutexes with PTHREAD_MUTEX_ERRORCHECK_NP, which made the 'lockingTid' stuff obsolete for suggesting to move the declaration of cMenuText to VDR/menu.h to make it - available to plugins + available to plugins, and to add a SetText() function Ulrich Röder <roeder@efr-net.de> for pointing out that there are channels that have a symbol rate higher than @@ -2827,5 +2827,6 @@ Video Disk Recorder Revision History 'Transfer Mode' (thanks to Michal Dobrzynski for reporting this one). - Fixed a memory leak in NIT processing (thanks to Marcel Wiesweg). - Added a few missing initializations (thanks to Marcel Wiesweg). -- Moved the declaration of cMenuText to VDR/menu.h to make it available to plugins - (suggested by Stefan Huelswitt). +- Moved the declaration of cMenuText to VDR/menu.h to make it available to plugins. + It now also has a SetText() function that can be used to dynamically set the text + in an already existing cMenuText (both suggested by Stefan Huelswitt). @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: menu.c 1.303 2004/05/23 09:39:09 kls Exp $ + * $Id: menu.c 1.304 2004/05/23 09:47:14 kls Exp $ */ #include "menu.h" @@ -502,7 +502,19 @@ eOSState cMenuChannels::ProcessKey(eKeys Key) cMenuText::cMenuText(const char *Title, const char *Text, eDvbFont Font) :cOsdMenu(Title) { - text = Text; + text = NULL; + SetText(Text); +} + +cMenuText::~cMenuText() +{ + free(text); +} + +void cMenuText::SetText(const char *Text) +{ + free(text); + text = strdup(Text); } void cMenuText::Display(void) @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: menu.h 1.62 2004/05/23 09:39:02 kls Exp $ + * $Id: menu.h 1.63 2004/05/23 09:47:26 kls Exp $ */ #ifndef __MENU_H @@ -21,9 +21,11 @@ class cMenuText : public cOsdMenu { private: - const char *text; + char *text; public: cMenuText(const char *Title, const char *Text, eDvbFont Font = fontOsd); + virtual ~cMenuText(); + void SetText(const char *Text); virtual void Display(void); virtual eOSState ProcessKey(eKeys Key); }; |