diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2003-05-03 14:55:17 +0200 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2003-05-03 14:55:17 +0200 |
commit | f1e5b591bd28c8acd852cad723459991c81d89b9 (patch) | |
tree | 2fbc47ef69af85c35d2e61beeaf32455b44f44c9 | |
parent | 2cd7928fc6dcffa61298d15d0bde21cd6d856868 (diff) | |
download | vdr-f1e5b591bd28c8acd852cad723459991c81d89b9.tar.gz vdr-f1e5b591bd28c8acd852cad723459991c81d89b9.tar.bz2 |
Added cStatus::OsdItem() to provide the entire list of menu items to a plugin
-rw-r--r-- | CONTRIBUTORS | 3 | ||||
-rw-r--r-- | HISTORY | 2 | ||||
-rw-r--r-- | osd.c | 7 | ||||
-rw-r--r-- | status.c | 8 | ||||
-rw-r--r-- | status.h | 5 |
5 files changed, 22 insertions, 3 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS index da92b79f..f96e444f 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -627,3 +627,6 @@ Olivier Jacques <jacquesolivier@hotmail.com>) Kai Moeller <moeller.ki@gmx.de> for reporting a double call to MainMenuAction() of a plugin if invoked via a hotkey + +Carsten Siebholz <c.siebholz@t-online.de> + for adding cStatus::OsdItem() to provide the entire list of menu items to a plugin @@ -2104,3 +2104,5 @@ Video Disk Recorder Revision History If all devices are busy and none of them can provide the current channel, the message "Channel not available!" will be displayed. - Removed the (no longer necessary) 'panic' stuff from cThread. +- Added cStatus::OsdItem() to provide the entire list of menu items to a plugin + (thanks to Carsten Siebholz). @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: osd.c 1.41 2003/05/02 10:46:13 kls Exp $ + * $Id: osd.c 1.42 2003/05/03 14:46:38 kls Exp $ */ #include "osd.h" @@ -423,6 +423,11 @@ void cOsdMenu::Display(void) Interface->Help(helpRed, helpGreen, helpYellow, helpBlue); int count = Count(); if (count > 0) { + for (int i = 0; i < count; i++) { + cOsdItem *item = Get(i); + if (item) + cStatus::MsgOsdItem(item->Text(), i); + } if (current < 0) current = 0; // just for safety - there HAS to be a current item! int n = 0; @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: status.c 1.4 2002/07/13 10:49:34 kls Exp $ + * $Id: status.c 1.5 2003/05/03 14:47:44 kls Exp $ */ #include "status.h" @@ -71,6 +71,12 @@ void cStatus::MsgOsdHelpKeys(const char *Red, const char *Green, const char *Yel sm->OsdHelpKeys(Red, Green, Yellow, Blue); } +void cStatus::MsgOsdItem(const char *Text, int Index) +{ + for (cStatus *sm = statusMonitors.First(); sm; sm = statusMonitors.Next(sm)) + sm->OsdItem(Text, Index); +} + void cStatus::MsgOsdCurrentItem(const char *Text) { for (cStatus *sm = statusMonitors.First(); sm; sm = statusMonitors.Next(sm)) @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: status.h 1.5 2002/07/14 10:54:39 kls Exp $ + * $Id: status.h 1.6 2003/05/03 14:43:18 kls Exp $ */ #ifndef __STATUS_H @@ -45,6 +45,8 @@ protected: // If Message is NULL, the status line has been cleared. virtual void OsdHelpKeys(const char *Red, const char *Green, const char *Yellow, const char *Blue) {} // The help keys have been set to the given values (may be NULL). + virtual void OsdItem(const char *Text, int Index) {} + // The OSD displays the given single line Text as menu item at Index. virtual void OsdCurrentItem(const char *Text) {} // The OSD displays the given single line Text as the current menu item. virtual void OsdTextItem(const char *Text, bool Scroll) {} @@ -69,6 +71,7 @@ public: static void MsgOsdTitle(const char *Title); static void MsgOsdStatusMessage(const char *Message); static void MsgOsdHelpKeys(const char *Red, const char *Green, const char *Yellow, const char *Blue); + static void MsgOsdItem(const char *Text, int Index); static void MsgOsdCurrentItem(const char *Text); static void MsgOsdTextItem(const char *Text, bool Scroll = false); static void MsgOsdChannel(const char *Text); |