The Recordings menu can now be called with a cRecordingFilter

This commit is contained in:
Klaus Schmidinger
2013-12-25 12:13:00 +01:00
parent b936cb366f
commit f6283b8e91
4 changed files with 19 additions and 5 deletions

12
menu.h
View File

@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: menu.h 3.4 2013/10/30 14:32:13 kls Exp $
* $Id: menu.h 3.5 2013/12/25 12:06:03 kls Exp $
*/
#ifndef __MENU_H
@@ -191,6 +191,13 @@ public:
cOsdObject *CamControl(void);
bool CamMenuActive(void);
class cRecordingFilter {
public:
virtual ~cRecordingFilter(void) {};
virtual bool Filter(const cRecording *Recording) const = 0;
///< Returns true if the given Recording shall be displayed in the Recordings menu.
};
class cMenuRecordingItem;
class cMenuRecordings : public cOsdMenu {
@@ -199,6 +206,7 @@ private:
int level;
int recordingsState;
int helpKeys;
const cRecordingFilter *filter;
static cString path;
static cString fileName;
void SetHelpKeys(void);
@@ -213,7 +221,7 @@ private:
protected:
cString DirectoryName(void);
public:
cMenuRecordings(const char *Base = NULL, int Level = 0, bool OpenSubMenus = false);
cMenuRecordings(const char *Base = NULL, int Level = 0, bool OpenSubMenus = false, const cRecordingFilter *Filter = NULL);
~cMenuRecordings();
virtual eOSState ProcessKey(eKeys Key);
static void SetPath(const char *Path);