diff options
Diffstat (limited to 'undelete.h')
-rw-r--r-- | undelete.h | 134 |
1 files changed, 96 insertions, 38 deletions
@@ -3,33 +3,86 @@ * * See the README file for copyright information and how to reach the author. * - * $Id: undelete.h 0.2 2004/10/10 12:23:20 hflor Exp $ + * $Id: undelete.h 0.5 2005/11/17 21:05:05 hflor Exp $ */ #ifndef __UNDELETE_H #define __UNDELETE_H +#include "vdrtools.h" #include <vdr/config.h> #include <vdr/recording.h> #include <vdr/plugin.h> -#define FREENULL(T) { if (T) { free(T); T = NULL; } } -#if VDRVERSNUM >= 10307 -#define MAXOSDTEXTWIDTH 45 -#define AKTOSDTEXTWIDTH 45 -#define ERROR(E) Skins.Message(mtError, E) -#define INFO(I) Skins.Message(mtInfo, I) -#define STATUS(S) Skins.Message(mtStatus, S) +#define freenull(T) { if (T) { free(T); T = NULL; } } +#if VDRVERSNUM > 10307 + #define MAXOSDTEXTWIDTH 45 + #define AKTOSDTEXTWIDTH 45 + #define ERROR(E) Skins.Message(mtError, E) + #define INFO(I) Skins.Message(mtInfo, I) + #define STATUS(S) Skins.Message(mtStatus, S) +#elif VDRVERSNUM == 10307 + #error "cMenuText is in VDR 1.3.7 not in menu.h" #else -#define MAXOSDTEXTWIDTH MAXOSDWIDTH -#define AKTOSDTEXTWIDTH Setup.OSDwidth -#define ERROR(E) Interface->Error(E) -#define INFO(I) Interface->Info(I) + #define MAXOSDTEXTWIDTH MAXOSDWIDTH + #define AKTOSDTEXTWIDTH Setup.OSDwidth + #define ERROR(E) Interface->Error(E) + #define INFO(I) Interface->Info(I) + #ifdef HAVE_ELCHI + #define STATUS(S) { Interface->Status(S, Setup.Theme == themeVanilla ? clrBlack : (eDvbColor)fginfofont, Setup.Theme == themeVanilla ? clrCyan : clrInfoLine); Interface->Flush(); } + #else + #define STATUS(S) { Interface->Status(S); Interface->Flush(); } + #endif #endif -#define kUnDelRec (kNone + 110) -#define kDelRec (kNone + 111) -#define kHelpKeys (kNone + 112) +#ifdef UND_Debug +extern int cMenuRecordingSelectItem_nextID; +extern int cMenuRecordingSelect_nextID; +extern int cMenuUndelete_nextID; +extern int cMenuSetupUndelete_nextID; +extern int cMenuDispKey_nextID; +#endif + +#ifdef UND_Debug1 + #define d1syslog(p, t, a...) dsyslog("%s: %-50s ID=%05d " t, plugin_name, p, objID, a) + #define d1syslogi(p, t, a...) dsyslog("%s: %-50s " t, plugin_name, p, a) + #define d1listlog(p) for (cOsdItem *item = First(); item; item = Next(item)) \ + d1syslog(p, "Index=%02d Osditem=%s", item->Index() + 1, item->Text()) +#else + #define d1syslog(p, t, a...) {} + #define d1syslogi(p, t, a...) {} + #define d1listlog(p) {} +#endif +#ifdef UND_Debug2 + #define d2syslog(p, t, a...) dsyslog("%s: %-50s ID=%05d " t, plugin_name, p, objID, a) + #define d2syslogi(p, t, a...) dsyslog("%s: %-50s " t, plugin_name, p, a) +#else + #define d2syslog(p, t, a...) {} + #define d2syslogi(p, t, a...) {} +#endif +#ifdef UND_Debug3 + #define d3syslog(p, t, a...) dsyslog("%s: %-50s ID=%05d " t, plugin_name, p, objID, a) + #define d3ProcessKey1(p) bool noneKey = Key == kNone; \ + if (!noneKey) \ + d3syslog(p, "Key=%s", KeyName(Key)) + #define d3ProcessKey2(p) if (!noneKey || (state != osUnknown && state != osContinue)) \ + { \ + d3syslog(p, "OSState=%s", OSStateName(state)); \ + noneKey = false; \ + } + #define d3ProcessKey3(p) if (!noneKey || (state != osUnknown && state != osContinue)) \ + d3syslog(p, "returned OSState=%s", OSStateName(state)) +#else + #define d3syslog(p, t, a...) {} + #define d3ProcessKey1(p) {} + #define d3ProcessKey2(p) {} + #define d3ProcessKey3(p) {} +#endif + +#define kSalvageRec (kNone + 110) +#define kPurgeRec (kNone + 111) +#define kDelLine (kNone + 112) +#define kHelpKeys (kNone + 113) // Global variables that control the overall behaviour: @@ -65,43 +118,48 @@ struct tParamFile { }; // var pos1 - extern tParamInt commandline_preference; -extern tParamInt confirmdel; -extern tParamInt confirmdeldir; -extern tParamInt confirmundel; -extern tParamInt confirmundeldir; +extern tParamInt confirmpurge; +extern tParamInt confirmpurgedir; +extern tParamInt confirmpurgeall; +extern tParamInt confirmsalvage; +extern tParamInt confirmsalvagedir; +extern tParamInt confirmsalvageall; +extern tParamInt firstsalvage; +extern tParamInt functionkey[]; extern tParamFile mainmenu_name; extern tParamInt mainmenu_visible; +extern tParamInt numkey; +extern tParamInt okkey; +extern tParamInt functionline_b_e[]; +extern tParamInt functionline_num[]; extern tParamInt verbose; extern char plugin_name[]; +extern cPlugin *plugin; extern bool PurgeRecording; extern bool SalvageRecording; extern cRecordings DeletedRecordings; +extern bool MenuIsOpen; +extern char *SVDRP_Process; extern char *WorkFilename; +extern int KeyState; +extern const char *FunctionLine[]; +#define MaxFunctionName 11 +extern const char *FunctionName[]; +extern const char *FunctionHotKey[]; +#define MaxKeysName 28 +extern const char *KeysName[]; void ExpandEnvironment(tParamFile *FileStruc); -// --- cPluginUndelete ---------------------------------------------------------- - -class cPluginUndelete : public cPlugin { -private: - // Add any member variables or functions you may need here. - bool ProcessArg(int argc, char *argv[]); - +class cRemoveThread : public cThread { +protected: + virtual void Action(void); public: - cPluginUndelete(void); - virtual ~cPluginUndelete(); - virtual const char *Version(void); - virtual const char *Description(void); - virtual const char *CommandLineHelp(void); - virtual bool ProcessArgs(int argc, char *argv[]); - virtual bool Start(void); - virtual const char *MainMenuEntry(void); - virtual cOsdObject *MainMenuAction(void); - virtual cMenuSetupPage *SetupMenu(void); - virtual bool SetupParse(const char *Name, const char *Value); + bool ActiveWithCancel(void); }; +extern cRemoveThread oRemoveThread; + #endif //__UNDELETE_H |