diff options
author | chriszero <zerov83@gmail.com> | 2015-09-27 15:52:23 +0200 |
---|---|---|
committer | chriszero <zerov83@gmail.com> | 2015-09-27 15:52:23 +0200 |
commit | 004e8940e25c3bca2b9219a5494e80b3c9b3ab9c (patch) | |
tree | eb1e5b180bbbb6fcc265cc816b660dc64f6f7e52 /sdDisplayReplay.h | |
parent | f22f21bcacdd4b57b14e5400fe6a55cf83b268d3 (diff) | |
download | vdr-plugin-plex-development.tar.gz vdr-plugin-plex-development.tar.bz2 |
Own replay control for skinningdevelopment
Diffstat (limited to 'sdDisplayReplay.h')
-rw-r--r-- | sdDisplayReplay.h | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/sdDisplayReplay.h b/sdDisplayReplay.h new file mode 100644 index 0000000..e580e16 --- /dev/null +++ b/sdDisplayReplay.h @@ -0,0 +1,48 @@ +#ifndef CSDDISPLAYREPLAY_H +#define CSDDISPLAYREPLAY_H + +#include <vdr/osdbase.h> +#include <libskindesignerapi/osdelements.h> +#include <libskindesignerapi/skindesignerosdbase.h> +#include <memory> + +#include "PVideo.h" +#include "hlsPlayerControl.h" + +class cSdDisplayReplay : public skindesignerapi::cSkindesignerOsdObject +{ +public: + enum eElements { + Background, + Replay, + Info, + Time + }; + + cSdDisplayReplay(plexclient::Video Video, cHlsPlayerControl* Control); + ~cSdDisplayReplay(); + + virtual void Show(void); + //virtual eOSState ProcessKey(eKeys Key); + +private: + plexclient::Video m_video; + cHlsPlayerControl* m_pContol; + + skindesignerapi::cOsdView* m_pRootView; + std::shared_ptr<skindesignerapi::cViewElement> m_pBackground; + std::shared_ptr<skindesignerapi::cViewElement> m_pReplay; + std::shared_ptr<skindesignerapi::cViewElement> m_pInfo; + std::shared_ptr<skindesignerapi::cViewElement> m_pTime; + + int m_lastsecond; + + void DrawReplay(); + void DrawInfo(); + bool DrawTime(); + void Flush(); + + std::string IndexToHMS(int index, bool WithSeconds = true); +}; + +#endif // CSDDISPLAYREPLAY_H |