1
0
mirror of https://github.com/VDR4Arch/vdr.git synced 2023-10-10 13:36:52 +02:00

Fixed handling rc key learning in case cRemote::Initialize() returns 'false'

This commit is contained in:
Klaus Schmidinger 2003-10-05 09:51:02 +02:00
parent e4c3316bd2
commit f163e785fb
4 changed files with 15 additions and 6 deletions

View File

@ -495,6 +495,7 @@ Oliver Endriss <o.endriss@gmx.de>
recording that is still going on recording that is still going on
for fixing checking for VIDEO_STREAM_S in cRemux::SetBrokenLink() for fixing checking for VIDEO_STREAM_S in cRemux::SetBrokenLink()
for suggesting to add 'repeat' function keys '7' and '9' for suggesting to add 'repeat' function keys '7' and '9'
for fixing handling rc key learning in case cRemote::Initialize() returns 'false'
Reinhard Walter Buchner <rw.buchner@freenet.de> Reinhard Walter Buchner <rw.buchner@freenet.de>
for adding some satellites to 'sources.conf' for adding some satellites to 'sources.conf'

View File

@ -2414,3 +2414,5 @@ Video Disk Recorder Revision History
- Fixed detecting the /dev/videoN devices for GRAB in case there are others - Fixed detecting the /dev/videoN devices for GRAB in case there are others
before the DVB devices (thanks to Andreas Kool). before the DVB devices (thanks to Andreas Kool).
- Updated 'channels.conf.terr' for Berlin (thanks to Markus Hardt). - Updated 'channels.conf.terr' for Berlin (thanks to Markus Hardt).
- Fixed handling rc key learning in case cRemote::Initialize() returns 'false'
(thanks to Oliver Endriss).

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and * See the main source file 'vdr.c' for copyright information and
* how to reach the author. * how to reach the author.
* *
* $Id: interface.c 1.64 2003/04/27 12:08:52 kls Exp $ * $Id: interface.c 1.65 2003/10/05 09:48:13 kls Exp $
*/ */
#include "interface.h" #include "interface.h"
@ -329,7 +329,7 @@ void cInterface::Help(const char *Red, const char *Green, const char *Yellow, co
cStatus::MsgOsdHelpKeys(Red, Green, Yellow, Blue); cStatus::MsgOsdHelpKeys(Red, Green, Yellow, Blue);
} }
void cInterface::QueryKeys(cRemote *Remote) bool cInterface::QueryKeys(cRemote *Remote)
{ {
WriteText(1, 3, tr("Phase 1: Detecting RC code type")); WriteText(1, 3, tr("Phase 1: Detecting RC code type"));
WriteText(1, 5, tr("Press any key on the RC unit")); WriteText(1, 5, tr("Press any key on the RC unit"));
@ -372,7 +372,7 @@ void cInterface::QueryKeys(cRemote *Remote)
Key = cRemote::Get(100); Key = cRemote::Get(100);
if (Key == kUp) { if (Key == kUp) {
Clear(); Clear();
return; return true;
} }
else if (Key == kDown) { else if (Key == kDown) {
ClearEol(0, 6); ClearEol(0, 6);
@ -406,7 +406,9 @@ void cInterface::QueryKeys(cRemote *Remote)
else else
ClearEol(0, 9); ClearEol(0, 9);
} }
return true;
} }
return false;
} }
void cInterface::LearnKeys(void) void cInterface::LearnKeys(void)
@ -426,9 +428,13 @@ void cInterface::LearnKeys(void)
cRemote::Clear(); cRemote::Clear();
WriteText(1, 1, Headline); WriteText(1, 1, Headline);
cRemote::SetLearning(Remote); cRemote::SetLearning(Remote);
QueryKeys(Remote); bool rc = QueryKeys(Remote);
cRemote::SetLearning(NULL); cRemote::SetLearning(NULL);
Clear(); Clear();
if (!rc) {
Close();
return;
}
WriteText(1, 1, Headline); WriteText(1, 1, Headline);
WriteText(1, 3, tr("Phase 3: Saving key codes")); WriteText(1, 3, tr("Phase 3: Saving key codes"));
WriteText(1, 5, tr("Press 'Up' to save, 'Down' to cancel")); WriteText(1, 5, tr("Press 'Up' to save, 'Down' to cancel"));

View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and * See the main source file 'vdr.c' for copyright information and
* how to reach the author. * how to reach the author.
* *
* $Id: interface.h 1.29 2002/11/30 14:37:04 kls Exp $ * $Id: interface.h 1.30 2003/10/05 09:42:53 kls Exp $
*/ */
#ifndef __INTERFACE_H #ifndef __INTERFACE_H
@ -24,7 +24,7 @@ private:
int cols[MaxCols]; int cols[MaxCols];
bool interrupted; bool interrupted;
cSVDRP *SVDRP; cSVDRP *SVDRP;
void QueryKeys(cRemote *Remote); bool QueryKeys(cRemote *Remote);
void HelpButton(int Index, const char *Text, eDvbColor FgColor, eDvbColor BgColor); void HelpButton(int Index, const char *Text, eDvbColor FgColor, eDvbColor BgColor);
eKeys Wait(int Seconds = 0, bool KeepChar = false); eKeys Wait(int Seconds = 0, bool KeepChar = false);
public: public: