summaryrefslogtreecommitdiff
path: root/coreengine/viewelementsdisplayreplay.h
blob: 94f24cbf565faa481bda009f6cf3c5bbd6c03771 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
#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