vdr-plugin-skindesigner/coreengine/viewelementsdisplayreplay.h

236 lines
6.9 KiB
C++

#ifndef __VIEWELEMENTSDR_H
#define __VIEWELEMENTSDR_H
#include "viewelement.h"
#include "../extensions/scrapmanager.h"
// define recordingtypes
enum eRecType_t {
NoRec = 0,
NormalRec,
TimeshiftRec
};
/******************************************************************
* cVeDrRecTitle
******************************************************************/
class cVeDrRecTitle : public cViewElement {
private:
const cRecording *recording;
const cEvent *event;
char *title;
eRecType_t timeShiftActive;
public:
cVeDrRecTitle(void);
virtual ~cVeDrRecTitle(void);
void SetTokenContainer(void);
void Set(const cRecording *recording = NULL, const cEvent *event = NULL, eRecType_t timeShiftActive = NoRec);
void Set(const char *title = NULL);
bool Parse(bool forced = false);
};
/******************************************************************
* cVeDrRecInfo
******************************************************************/
class cVeDrRecInfo : public cViewElement {
private:
const cRecording *recording;
public:
cVeDrRecInfo(void);
virtual ~cVeDrRecInfo(void);
void SetTokenContainer(void);
void Set(const cRecording *recording);
bool Parse(bool forced = false);
};
/******************************************************************
* cVeDrCurrentTime
******************************************************************/
class cVeDrCurrentTime : public cViewElement {
private:
bool changed;
char *current;
eRecType_t timeShiftActive;
public:
cVeDrCurrentTime(void);
virtual ~cVeDrCurrentTime(void);
void SetTokenContainer(void);
void Set(const char *current, eRecType_t timeShiftActive = NoRec);
bool Parse(bool forced = false);
};
/******************************************************************
* cVeDrTotalTime
******************************************************************/
class cVeDrTotalTime : public cViewElement {
private:
bool changed;
char *total;
eRecType_t timeShiftActive;
char *timeshiftDuration;
public:
cVeDrTotalTime(void);
virtual ~cVeDrTotalTime(void);
void SetTokenContainer(void);
void Set(const char *total, const char *timeshiftDuration = NULL, eRecType_t timeShiftActive = NoRec);
bool Parse(bool forced = false);
};
/******************************************************************
* cVeDrTimeshiftTimes
******************************************************************/
class cVeDrTimeshiftTimes : public cViewElement {
private:
cString start;
cString playbacktime;
cString timeshiftrest;
bool changed;
eRecType_t timeShiftActive;
public:
cVeDrTimeshiftTimes(void);
virtual ~cVeDrTimeshiftTimes(void);
void SetTokenContainer(void);
void Set(cString start, cString playbacktime, cString timeshiftrest, eRecType_t timeShiftActive = NoRec);
bool Parse(bool forced = false);
};
/******************************************************************
* cVeDrEndTime
******************************************************************/
class cVeDrEndTime : public cViewElement {
private:
cString end;
eRecType_t timeShiftActive;
bool changed;
public:
cVeDrEndTime(void);
virtual ~cVeDrEndTime(void);
void SetTokenContainer(void);
void Set(cString end, eRecType_t timeShiftActive = NoRec);
bool Parse(bool forced = false);
};
/******************************************************************
* cVeDrProgressBar
******************************************************************/
class cVeDrProgressBar : public cViewElement {
private:
int current;
int total;
eRecType_t timeShiftActive;
int timeshiftTotal;
bool changed;
public:
cVeDrProgressBar(void);
virtual ~cVeDrProgressBar(void);
void SetTokenContainer(void);
void Set(int current, int total, eRecType_t timeShiftActive = NoRec, int timeshiftTotal = 0);
bool Parse(bool forced = false);
};
/******************************************************************
* cVeDrCutMarks
******************************************************************/
class cVeDrCutMarks : public cViewElement {
private:
int cutmarksIndex;
const cMarks *marks;
int current;
int total;
eRecType_t timeShiftActive;
int timeshiftTotal;
int numMarksLast;
bool changed;
public:
cVeDrCutMarks(void);
virtual ~cVeDrCutMarks(void);
void SetTokenContainer(void);
void Set(const cMarks *marks, int current, int total, eRecType_t timeShiftActive = NoRec, int timeshiftTotal = 0);
bool Parse(bool forced = false);
};
/******************************************************************
* cVeDrControlIcons
******************************************************************/
class cVeDrControlIcons : public cViewElement {
private:
bool play;
bool forward;
int speed;
bool changed;
public:
cVeDrControlIcons(void);
virtual ~cVeDrControlIcons(void);
void SetTokenContainer(void);
void Set(bool play, bool forward, int speed);
bool Parse(bool forced = false);
};
/******************************************************************
* cVeDrProgressModeonly
******************************************************************/
class cVeDrProgressModeonly : public cViewElement {
private:
double fps;
int current;
int total;
bool changed;
public:
cVeDrProgressModeonly(void);
virtual ~cVeDrProgressModeonly(void);
void SetTokenContainer(void);
void Set(double fps, int current, int total);
bool Parse(bool forced = false);
};
/******************************************************************
* cVeDrJump
******************************************************************/
class cVeDrJump : public cViewElement {
private:
char *jump;
bool changed;
public:
cVeDrJump(void);
virtual ~cVeDrJump(void);
void SetTokenContainer(void);
void Set(const char *jump);
bool Parse(bool forced = false);
};
/******************************************************************
* cVeDrOnPause
******************************************************************/
class cVeDrOnPause : public cViewElement, public cScrapManager {
private:
bool started;
int actorsIndex;
char *recfilename;
public:
cVeDrOnPause(void);
virtual ~cVeDrOnPause(void);
void Close(void);
int Delay(void) { return attribs->Delay() * 1000; };
void SetTokenContainer(void);
void Set(const char *recfilename);
bool Parse(bool forced = false);
bool Started(void) { return started; };
void ResetSleep(void);
};
/******************************************************************
* cVeDrScraperContent
******************************************************************/
class cVeDrScraperContent : public cViewElement, public cScrapManager {
private:
const cRecording *recording;
public:
cVeDrScraperContent(void);
virtual ~cVeDrScraperContent(void);
void SetTokenContainer(void);
void Set(const cRecording *recording);
bool Parse(bool forced = false);
};
#endif //__VIEWELEMENTSDR_H