summaryrefslogtreecommitdiff
path: root/libskindesignerapi/osdelements.h
diff options
context:
space:
mode:
authorlouis <louis.braun@gmx.de>2015-04-02 15:09:41 +0200
committerlouis <louis.braun@gmx.de>2015-04-02 15:09:41 +0200
commite48aa00164f0c6a86792ae32577d12f5c9c597cb (patch)
tree200981b469eafeb9e1ec3f7b26e6439ea05fc0de /libskindesignerapi/osdelements.h
parent9d3d613013212237a2a09ca913b2b52aba90c3b6 (diff)
downloadvdr-plugin-skindesigner-e48aa00164f0c6a86792ae32577d12f5c9c597cb.tar.gz
vdr-plugin-skindesigner-e48aa00164f0c6a86792ae32577d12f5c9c597cb.tar.bz2
introduced libskindesignerapi
Diffstat (limited to 'libskindesignerapi/osdelements.h')
-rw-r--r--libskindesignerapi/osdelements.h94
1 files changed, 94 insertions, 0 deletions
diff --git a/libskindesignerapi/osdelements.h b/libskindesignerapi/osdelements.h
new file mode 100644
index 0000000..df6193f
--- /dev/null
+++ b/libskindesignerapi/osdelements.h
@@ -0,0 +1,94 @@
+#ifndef __OSDELEMENTS_H
+#define __OSDELEMENTS_H
+
+#include <vdr/plugin.h>
+#include "skindesignerapi.h"
+
+namespace skindesignerapi {
+
+/**********************************************************************
+* cOsdElement
+**********************************************************************/
+
+class cOsdElement {
+protected:
+ ISkinDisplayPlugin *view;
+ map < string, string > stringTokens;
+ map < string, int > intTokens;
+ map < string, vector< map< string, string > > > loopTokens;
+public:
+ cOsdElement(ISkinDisplayPlugin *view);
+ virtual ~cOsdElement();
+ void AddLoopToken(string loopName, map<string, string> &tokens);
+ void AddStringToken(string key, string value);
+ void AddIntToken(string key, int value);
+ void ClearTokens(void);
+ bool ChannelLogoExists(string channelId);
+ string GetEpgImagePath(void);
+};
+
+/**********************************************************************
+* cViewElement
+**********************************************************************/
+class cViewElement : public cOsdElement {
+private:
+ int viewElementID;
+public:
+ cViewElement(ISkinDisplayPlugin *view, int viewElementID);
+ virtual ~cViewElement();
+ void Clear(void);
+ void Display(void);
+};
+
+/**********************************************************************
+* cViewGrid
+**********************************************************************/
+class cViewGrid : public cOsdElement {
+private:
+ int viewGridID;
+public:
+ cViewGrid(ISkinDisplayPlugin *view, int viewGridID);
+ virtual ~cViewGrid();
+ void SetGrid(long gridID, double x, double y, double width, double height);
+ void SetCurrent(long gridID, bool current);
+ void MoveGrid(long gridID, double x, double y, double width, double height);
+ void Delete(long gridID);
+ void Clear(void);
+ void Display(void);
+};
+
+/**********************************************************************
+* cViewTab
+**********************************************************************/
+class cViewTab : public cOsdElement {
+private:
+public:
+ cViewTab(ISkinDisplayPlugin *view);
+ virtual ~cViewTab();
+ void Init(void);
+ void Left(void);
+ void Right(void);
+ void Up(void);
+ void Down(void);
+ void Display(void);
+};
+
+/**********************************************************************
+* cOsdView
+**********************************************************************/
+class cOsdView {
+private:
+ ISkinDisplayPlugin *displayPlugin;
+public:
+ cOsdView(ISkinDisplayPlugin *displayPlugin);
+ virtual ~cOsdView();
+ void Deactivate(bool hide);
+ void Activate(void);
+ cViewElement *GetViewElement(int viewElementID);
+ cViewGrid *GetViewGrid(int viewGridID);
+ cViewTab *GetViewTabs(void);
+ void Display(void);
+};
+
+}
+#endif // __OSDELEMENTS_H \ No newline at end of file