summaryrefslogtreecommitdiff
path: root/menudetailview.h
blob: 5fac96363c74b308ae46f42cd6a20c316cfcb5b3 (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
#ifndef __NOPACITY_MENUDETAILVIEW_H
#define __NOPACITY_MENUDETAILVIEW_H

#include <vdr/recording.h>
#include <vdr/skins.h>

#include <vector>
#include <string>
#include <sstream>
#include "services/scraper2vdr.h"
#include "services/epgsearch.h"
#include "imagecache.h"
#include "config.h"
#include "detailview.h"

enum eDetailViewType {
    dvEvent = 0, 
    dvRecording, 
    dvText
};

class cNopacityDetailView : public cThread {
protected:
    eDetailViewType type;
    cOsd *osd;
    const cEvent *ev;
    const cRecording *rec;
    const char *text;
    cNopacityView *view;
    cPixmap *scrollBar;
    cPixmap *scrollBarBack;
    int x, width, height, top, border;
    int headerHeight;
    void InitiateViewType(void);
    std::string LoadReruns(void);
    std::string LoadRecordingInformation(void);
    std::string StripXmlTag(std::string &Line, const char *Tag);
    int ReadSizeVdr(const char *strPath);
    virtual void Action(void);
public:
    cNopacityDetailView(eDetailViewType detailViewType, cOsd *osd, cPixmap *s, cPixmap *sBack);
    virtual ~cNopacityDetailView(void);
    void SetAlpha(int Alpha = 0);
    void SetEvent(const cEvent *e) { ev = e; };
    void SetRecording(const cRecording *r) { rec = r; };
    void SetText(const char *t) { text = t; };
    void KeyInput(bool Up, bool Page);
    bool IsRunning(void) { return Running(); };
};

#endif //__NOPACITY_MENUDETAILVIEW_H