From 57bd7eeed1c1aa84316f8299e1528b3bc63d7623 Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Sun, 27 Oct 2002 17:00:00 +0100 Subject: =?UTF-8?q?Version=201.1.14=20-=20Fixed=20some=20faulty=20default?= =?UTF-8?q?=20parameter=20initializations=20(thanks=20to=20Robert=20Schiel?= =?UTF-8?q?e).=20-=20Added=20further=20satellites=20to=20'sources.conf'=20?= =?UTF-8?q?(thanks=20to=20Reinhard=20Walter=20Buchner=20=20=20and=20Oliver?= =?UTF-8?q?=20Endriss).=20-=20Updated=20Finnish=20OSD=20texts=20(thanks=20?= =?UTF-8?q?to=20Jaakko=20Hyv=C3=A4tti).=20-=20Fixed=20a=20small=20glitch?= =?UTF-8?q?=20when=20switching=20channels=20(thanks=20to=20Dennis=20Noords?= =?UTF-8?q?ij=20for=20=20=20reporting=20this=20one).=20-=20Fixed=20handlin?= =?UTF-8?q?g=20multiple=20'CaCaps'=20entries=20in=20'setup.conf'.=20-=20Gr?= =?UTF-8?q?oup=20separators=20in=20'channels.conf'=20may=20now=20be=20give?= =?UTF-8?q?n=20like=20':@201=20My=20Channels',=20=20=20where=20'@201'=20in?= =?UTF-8?q?dicates=20the=20number=20to=20be=20given=20to=20the=20next=20ch?= =?UTF-8?q?annel.=20This=20can=20be=20=20=20used=20to=20create=20'gaps'=20?= =?UTF-8?q?in=20the=20channel=20numbering=20(see=20'man=205=20vdr').=20BE?= =?UTF-8?q?=20CAREFUL=20=20=20TO=20UPDATE=20YOUR=20'timers.conf'=20ACCORDI?= =?UTF-8?q?NGLY=20IF=20INSERTING=20THIS=20NEW=20FEATURE=20INTO=20YOUR=20?= =?UTF-8?q?=20=20'channels.conf'=20FILE!=20-=20Timers=20now=20internally?= =?UTF-8?q?=20have=20a=20pointer=20to=20their=20channel=20(this=20is=20nec?= =?UTF-8?q?essary=20to=20=20=20handle=20gaps=20in=20channel=20numbers,=20a?= =?UTF-8?q?nd=20in=20preparation=20for=20unique=20channel=20ids).=20-=20Fi?= =?UTF-8?q?xed=20slow=20reaction=20on=20SVDRP=20input=20(thanks=20to=20Gui?= =?UTF-8?q?do=20Fiala=20for=20reporting=20this=20one).=20-=20Added=20KI.KA?= =?UTF-8?q?=20to=20channels.conf.cable=20(thanks=20to=20Robert=20Schiele).?= =?UTF-8?q?=20-=20Frequency=20values=20for=20cable=20and=20terrestrial=20c?= =?UTF-8?q?hannels=20in=20'channels.conf'=20can=20=20=20now=20be=20given?= =?UTF-8?q?=20either=20in=20MHz,=20kHz=20or=20Hz.=20The=20actual=20value?= =?UTF-8?q?=20given=20will=20be=20multiplied=20=20=20by=201000=20until=20i?= =?UTF-8?q?t=20is=20larger=20than=201000000.=20-=20Fixed=20skipping=20unav?= =?UTF-8?q?ailable=20channels=20when=20zapping=20downwards.=20-=20Fixed=20?= =?UTF-8?q?checking=20the=20Ca()=20status=20of=20a=20cDevice=20(thanks=20t?= =?UTF-8?q?o=20Stefan=20Huelswitt).=20-=20Fixed=20switching=20audio=20trac?= =?UTF-8?q?ks=20in=20'Transfer=20Mode'=20on=20the=20primary=20DVB=20device?= =?UTF-8?q?=20=20=20(thanks=20to=20Steffen=20Barszus=20and=20Stefan=20Huel?= =?UTF-8?q?switt=20for=20reporting=20this=20one=20and=20=20=20helping=20to?= =?UTF-8?q?=20fix=20it).=20-=20Fixed=20channel=20switching=20in=20case=20o?= =?UTF-8?q?f=20an=20active=20'Transfer=20Mode'=20on=20the=20primary=20=20?= =?UTF-8?q?=20device=20('Transfer=20Mode'=20is=20now=20launched=20with=20p?= =?UTF-8?q?riority=20'-1').=20-=20Fixed=20a=20ternary=20expression=20in=20?= =?UTF-8?q?dvbspu.c.=20-=20Fixed=20handling=20'Transfer=20Mode'=20on=20sin?= =?UTF-8?q?gle=20device=20systems=20when=20recording=20an=20=20=20encrypte?= =?UTF-8?q?d=20channel=20(thanks=20to=20Stefan=20Huelswitt).=20-=20Fixed?= =?UTF-8?q?=20blocking=20replaying=20in=20case=20an=20encrypted=20channel?= =?UTF-8?q?=20is=20being=20recorded=20on=20=20=20the=20primary=20device.?= =?UTF-8?q?=20-=20Now=20the=20name=20of=20the=20remote=20control=20is=20di?= =?UTF-8?q?splayed=20when=20learning=20the=20keys.=20-=20Fixed=20learning?= =?UTF-8?q?=20remote=20control=20keys=20in=20case=20there=20is=20more=20th?= =?UTF-8?q?an=20one=20remote=20=20=20control=20(thanks=20to=20Oliver=20End?= =?UTF-8?q?riss=20for=20reporting=20this=20one).=20-=20Implemented=20addit?= =?UTF-8?q?ional=20dedicated=20keys=20for=20"Play",=20"Pause",=20"Stop",?= =?UTF-8?q?=20"Record",=20=20=20"FastFwd",=20"FastRew",=20"Channel+"=20and?= =?UTF-8?q?=20"Channel-".=20If=20your=20remote=20control=20supports=20=20?= =?UTF-8?q?=20any=20of=20these=20keys=20you=20can=20delete=20your=20'remot?= =?UTF-8?q?e.conf'=20file=20and=20restart=20VDR=20to=20=20=20go=20through?= =?UTF-8?q?=20the=20key=20learning=20procedure=20again=20in=20order=20to?= =?UTF-8?q?=20assign=20these=20new=20keys.=20=20=20See=20MANUAL=20for=20mo?= =?UTF-8?q?re=20information.=20=20=20Authors=20of=20player=20plugins=20sho?= =?UTF-8?q?uld=20update=20their=20ProcessKey()=20functions=20so=20that=20?= =?UTF-8?q?=20=20the=20new=20player=20keys=20have=20the=20same=20functiona?= =?UTF-8?q?lity=20as=20the=20"Up",=20"Down",=20"Left",=20=20=20"Right"=20a?= =?UTF-8?q?nd=20"Blue"=20keys,=20respectively.=20Note=20that=20the=20exist?= =?UTF-8?q?ing=20functionality=20=20=20of=20these=20keys=20should=20by=20a?= =?UTF-8?q?ll=20means=20be=20retained,=20since=20VDR=20(and=20any=20plugin?= =?UTF-8?q?s)=20=20=20shall=20be=20fully=20usable=20with=20just=20the=20ba?= =?UTF-8?q?sic=20set=20of=20keys.=20These=20new=20keys=20are=20only=20=20?= =?UTF-8?q?=20for=20additional=20comfort=20in=20case=20the=20remote=20cont?= =?UTF-8?q?rol=20in=20use=20supports=20them.=20-=20Implemented=20new=20key?= =?UTF-8?q?s=20to=20directly=20access=20the=20VDR=20main=20menu=20function?= =?UTF-8?q?s=20"Schedule",=20=20=20"Channels",=20"Timers",=20"Recordings",?= =?UTF-8?q?=20"Setup"=20and=20"Commands".=20If=20your=20remote=20=20=20con?= =?UTF-8?q?trol=20provides=20keys=20you=20want=20to=20assign=20these=20fun?= =?UTF-8?q?ctions=20to,=20you=20can=20delete=20=20=20your=20'remote.cof'?= =?UTF-8?q?=20file=20and=20restart=20VDR=20to=20=20go=20through=20the=20ke?= =?UTF-8?q?y=20learning=20procedure=20=20=20again=20in=20order=20to=20assi?= =?UTF-8?q?gn=20these=20new=20keys.=20See=20MANUAL=20for=20more=20informat?= =?UTF-8?q?ion.=20-=20The=20new=20configuration=20file=20'keymacros.conf'?= =?UTF-8?q?=20can=20be=20used=20to=20assign=20macros=20to=20=20=20the=20co?= =?UTF-8?q?lor=20buttons=20in=20normal=20viewing=20mode,=20as=20well=20as?= =?UTF-8?q?=20to=20up=20to=209=20user=20defined=20=20=20keys.=20See=20MANU?= =?UTF-8?q?AL=20and=20man=20vdr(5)=20for=20more=20information.=20The=20def?= =?UTF-8?q?ault=20'keymacros.conf'=20=20=20implements=20the=20functionalit?= =?UTF-8?q?y=20of=20the=20"color=20button=20patch".=20-=20Fixed=20a=20cras?= =?UTF-8?q?h=20when=20learning=20the=20keys=20of=20several=20remote=20cont?= =?UTF-8?q?rols=20and=20pressing=20=20=20buttons=20of=20those=20that=20hav?= =?UTF-8?q?e=20already=20been=20learned=20(thanks=20to=20Oliver=20Endriss?= =?UTF-8?q?=20for=20=20=20reporting=20this=20one).?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- keys.h | 42 ++++++++++++++++++++++++++++++++++++++---- 1 file changed, 38 insertions(+), 4 deletions(-) (limited to 'keys.h') diff --git a/keys.h b/keys.h index d5ecbbc..ceb2d1c 100644 --- a/keys.h +++ b/keys.h @@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: keys.h 1.1 2002/09/29 09:55:52 kls Exp $ + * $Id: keys.h 1.3 2002/10/27 15:18:21 kls Exp $ */ #ifndef __KEYS_H @@ -26,10 +26,25 @@ enum eKeys { // "Up" and "Down" must be the first two keys! kYellow, kBlue, k0, k1, k2, k3, k4, k5, k6, k7, k8, k9, + kPlay, + kPause, + kStop, + kRecord, + kFastFwd, + kFastRew, kPower, + kChanUp, + kChanDn, kVolUp, kVolDn, kMute, + kSchedule, + kChannels, + kTimers, + kRecordings, + kSetup, + kCommands, + kUser1, kUser2, kUser3, kUser4, kUser5, kUser6, kUser7, kUser8, kUser9, kNone, k_Setup, // The following flags are OR'd with the above codes: @@ -47,9 +62,10 @@ enum eKeys { // "Up" and "Down" must be the first two keys! #define kEditCut k2 #define kEditTest k8 -#define RAWKEY(k) (eKeys((k) & ~k_Flags)) -#define ISRAWKEY(k) ((k) != kNone && ((k) & k_Flags) == 0) -#define NORMALKEY(k) (eKeys((k) & ~k_Repeat)) +#define RAWKEY(k) (eKeys((k) & ~k_Flags)) +#define ISRAWKEY(k) ((k) != kNone && ((k) & k_Flags) == 0) +#define NORMALKEY(k) (eKeys((k) & ~k_Repeat)) +#define ISMODELESSKEY(k) (RAWKEY(k) > k9) struct tKey { eKeys type; @@ -84,4 +100,22 @@ public: extern cKeys Keys; +#define MAXKEYSINMACRO 16 + +class cKeyMacro : public cListObject { +private: + eKeys macro[MAXKEYSINMACRO]; +public: + cKeyMacro(void); + bool Parse(char *s); + const eKeys *Macro(void) const { return macro; } + }; + +class cKeyMacros : public cConfig { +public: + const cKeyMacro *Get(eKeys Key); + }; + +extern cKeyMacros KeyMacros; + #endif //__KEYS_H -- cgit v1.2.3