summaryrefslogtreecommitdiff
path: root/detailView.h
blob: feb73e2dc4d5600a409637497c56e16144c64c8d (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
#ifndef CDETAILVIEW_H
#define CDETAILVIEW_H

#include "viewGridNavigator.h"
#include "PVideo.h"

#include "tokendefinitions.h"
#include "sdGenericViewElements.h"
#include  <libskindesignerapi/osdelements.h>
#include  <libskindesignerapi/skindesignerosdbase.h>

class cDetailView : public cViewGridNavigator, public cSdClock {
public:
    cDetailView(std::shared_ptr<skindesignerapi::cOsdView> detailView, plexclient::cVideo *video);

    void Draw();

    virtual void Flush();

    virtual eOSState NavigateSelect();

    virtual eOSState NavigateBack();

    plexclient::cVideo *GetVideo() { return m_pVideo; };

    virtual void Clear();

private:
    std::shared_ptr<skindesignerapi::cViewElement> m_pBackground;
    std::shared_ptr<skindesignerapi::cViewElement> m_pfooter;
    std::shared_ptr<skindesignerapi::cViewElement> m_pInfo;

    plexclient::cVideo *m_pVideo;
    bool m_drawall;

    void DrawBackground();

    void DrawFooter();

    void DrawInfo();
};

#endif // CDETAILVIEW_H