From a379eb714f7f5ef9a12efbe7588bb3509faba056 Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Sun, 8 Oct 2000 18:00:00 +0200 Subject: Version 0.66 - Remote control data is now received in a separate thread, which makes things a lot smoother. - Repeat and release of remote control keys is now explicitly distinguished. - In replay mode the search forward/back and skip functions now have two modes: Pressing the key shortly and releasing it starts the function, and pressing it again stops it. Pressing and holding down the key starts the function and releasing the key stops it. - The '@' character that marks an "instant recording" can now be turned off in the "Setup" menu (thanks to Matthias Schniedermeyer). - Pressing the "Back" button while replaying now stops replaying and brings up the "Recordings" menu (suggested by Carsten Koch). This can be used to easily delete a recording after watching it, or to switch to a different recording. - The "Recordings" menu now places the cursor on the last replayed recording, if that file still exists. - The "Blue" button in the "Main" menu can now be used to "Resume" a previously stopped replay session (suggested by Martin Hammerschmid). - The low and high LNB frequencies can now be changed in the "Setup" menu. --- osd.c | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) (limited to 'osd.c') diff --git a/osd.c b/osd.c index e1c99b4..75d9ead 100644 --- a/osd.c +++ b/osd.c @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: osd.c 1.7 2000/09/10 08:24:50 kls Exp $ + * $Id: osd.c 1.9 2000/10/08 12:20:34 kls Exp $ */ #include "osd.h" @@ -64,7 +64,7 @@ void cOsdItem::Display(int Offset, eDvbColor FgColor, eDvbColor BgColor) if (Offset >= 0) offset = Offset; if (offset >= 0) - Interface.WriteText(0, offset + 2, text, userColor ? fgColor : FgColor, userColor ? bgColor : BgColor); + Interface->WriteText(0, offset + 2, text, userColor ? fgColor : FgColor, userColor ? bgColor : BgColor); } eOSState cOsdItem::ProcessKey(eKeys Key) @@ -88,7 +88,7 @@ cOsdMenu::cOsdMenu(char *Title, int c0, int c1, int c2, int c3, int c4) subMenu = NULL; helpRed = helpGreen = helpYellow = helpBlue = NULL; status = NULL; - Interface.Open(); + Interface->Open(); } cOsdMenu::~cOsdMenu() @@ -96,8 +96,8 @@ cOsdMenu::~cOsdMenu() delete title; delete subMenu; delete status; - Interface.Clear(); - Interface.Close(); + Interface->Clear(); + Interface->Close(); } void cOsdMenu::SetStatus(const char *s) @@ -105,7 +105,7 @@ void cOsdMenu::SetStatus(const char *s) delete status; status = s ? strdup(s) : NULL; if (visible) - Interface.Status(status); + Interface->Status(status); } void cOsdMenu::SetHelp(const char *Red, const char *Green, const char *Yellow, const char *Blue) @@ -117,7 +117,7 @@ void cOsdMenu::SetHelp(const char *Red, const char *Green, const char *Yellow, c helpBlue = Blue; if (visible) Display(); - //XXX Interface.Help(helpRed, helpGreen, helpYellow, helpBlue); + //XXX Interface->Help(helpRed, helpGreen, helpYellow, helpBlue); //XXX must clear unused button areas! } @@ -140,10 +140,10 @@ void cOsdMenu::Add(cOsdItem *Item, bool Current) void cOsdMenu::Display(void) { visible = true; - Interface.Clear(); - Interface.SetCols(cols); - Interface.Title(title); - Interface.Help(helpRed, helpGreen, helpYellow, helpBlue); + Interface->Clear(); + Interface->SetCols(cols); + Interface->Title(title); + Interface->Help(helpRed, helpGreen, helpYellow, helpBlue); int count = Count(); if (count > 0) { if (current < 0) @@ -164,7 +164,7 @@ void cOsdMenu::Display(void) break; } } - Interface.Status(status); + Interface->Status(status); } void cOsdMenu::RefreshCurrent(void) @@ -274,7 +274,9 @@ eOSState cOsdMenu::ProcessKey(eKeys Key) return state; } switch (Key) { + case kUp|k_Repeat: case kUp: CursorUp(); break; + case kDown|k_Repeat: case kDown: CursorDown(); break; case kBack: return osBack; case kOk: if (marked >= 0) { -- cgit v1.2.3