diff options
Diffstat (limited to 'vdrtools.c')
-rw-r--r-- | vdrtools.c | 173 |
1 files changed, 173 insertions, 0 deletions
diff --git a/vdrtools.c b/vdrtools.c new file mode 100644 index 0000000..84c1d9b --- /dev/null +++ b/vdrtools.c @@ -0,0 +1,173 @@ +/* + * undelete: A plugin for the Video Disk Recorder + * + * See the README file for copyright information and how to reach the author. + * + * $Id: vdrtools.c 0.1 2004/10/08 02:03:31 hflor Exp $ + */ + +#include "vdrtools.h" +#include "undelete.h" +#include "i18n.h" +#include <vdr/menu.h> +#include <vdr/interface.h> + +char *SkipQuote(char *s) +{ + char c = *s; + strcpy(s, s + 1); + while (*s && *s != c) + { + if (*s == '\\') + strcpy(s, s + 1); + if (*s) + s++; + } + if (*s) + { + strcpy(s, s + 1); + return s; + } + esyslog("ERROR: missing closing %c", c); + return NULL; +} + +char *ExchangeChars(char *s, bool ToFileSystem) +{ +// ToFileSystem is not use, only for comatibility with 'ExchangeChars' from 'recording.c' + char *p = s; + while (*p) + { + switch (*p) + { + // mapped characters: + case '_': *p = ' '; + break; + case '/': *p = '~'; + break; + // encodes characters: + case '#': if (strlen(p) > 2) + { + char buf[3]; + sprintf(buf, "%c%c", *(p + 1), *(p + 2)); + unsigned char c = strtol(buf, NULL, 16); + *p = c; + memmove(p + 1, p + 3, strlen(p) - 2); + } + break; + // backwards compatibility: + case '\x01': *p = '\''; + break; + case '\x02': *p = '/'; + break; + case '\x03': *p = ':'; + break; + } + p++; + } + return s; +} + +#ifdef UND_Debug1 +const char *KeyName(eKeys Key) +{ + switch (RAWKEY(Key)) + { + case kUp: return tr("Up"); break; + case kDown: return tr("Down"); break; + case kMenu: return tr("Menu"); break; + case kOk: return tr("Ok"); break; + case kBack: return tr("Back"); break; + case kLeft: return tr("Left"); break; + case kRight: return tr("Right"); break; + case kRed: return tr("Red"); break; + case kGreen: return tr("Green"); break; + case kYellow: return tr("Yellow"); break; + case kBlue: return tr("Blue"); break; + case k0: return "0"; break; + case k1: return "1"; break; + case k2: return "2"; break; + case k3: return "3"; break; + case k4: return "4"; break; + case k5: return "5"; break; + case k6: return "6"; break; + case k7: return "7"; break; + case k8: return "8"; break; + case k9: return "9"; break; + case kPlay: return tr("Play"); break; + case kPause: return tr("Pause"); break; + case kStop: return tr("Stop"); break; + case kRecord: return tr("Record"); break; + case kFastFwd: return tr("FastFwd"); break; + case kFastRew: return tr("FastRew"); break; + case kPower: return tr("Power"); break; + case kChanUp: return tr("ChanUp"); break; + case kChanDn: return tr("ChanDn"); break; + case kVolUp: return tr("VolUp"); break; + case kVolDn: return tr("VolDn"); break; + case kMute: return tr("Mute"); break; + case kSchedule: return tr("Schedule"); break; + case kChannels: return tr("Channels"); break; + case kTimers: return tr("Timers"); break; + case kRecordings: return tr("Recordings"); break; + case kSetup: return tr("Setup"); break; + case kCommands: return tr("Commands"); break; + case kUser1: return tr("User1"); break; + case kUser2: return tr("User2"); break; + case kUser3: return tr("User3"); break; + case kUser4: return tr("User4"); break; + case kUser5: return tr("User5"); break; + case kUser6: return tr("User6"); break; + case kUser7: return tr("User7"); break; + case kUser8: return tr("User8"); break; + case kUser9: return tr("User9"); break; + case kNone: return tr("none"); break; + case kKbd: return tr("Kbd"); break; + case kUnDelRec: return tr("UnDelRec"); break; + case kDelRec: return tr("DelRec"); break; + case kHelpKeys: return tr("HelpKeys"); break; + default: return tr("unknow"); break; + } +} + +const char *OSStateName(eOSState OSState) +{ + switch (OSState) + { + case osUnknown: return "osUnknown"; + case osContinue: return "osContinue"; + case osSchedule: return "osSchedule"; + case osChannels: return "osChannels"; + case osTimers: return "osTimers"; + case osRecordings: return "osRecordings"; + case osPlugin: return "osPlugin"; + case osSetup: return "osSetup"; + case osCommands: return "osCommands"; + case osPause: return "osPause"; + case osRecord: return "osRecord"; + case osReplay: return "osReplay"; + case osStopRecord: return "osStopRecord"; + case osStopReplay: return "osStopReplay"; + case osCancelEdit: return "osCancelEdit"; + case osSwitchDvb: return "osSwitchDvb"; + case osBack: return "osBack"; + case osEnd: return "osEnd"; + case os_User: return "os_User"; + case osUser1: return "osUser1"; + case osUser2: return "osUser2"; + case osUser3: return "osUser3"; + case osUser4: return "osUser4"; + case osUser5: return "osUser5"; + case osUser6: return "osUser6"; + case osUser7: return "osUser7"; + case osUser8: return "osUser8"; + case osUser9: return "osUser9"; + case osUser10: return "osUser10"; +#if VDRVERSNUM < 10307 + case osUser11: return "osUser11"; +#endif + default: return "unknow"; + } + return ""; +} +#endif |