summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlouis <louis.braun@gmx.de>2015-01-27 17:30:24 +0100
committerlouis <louis.braun@gmx.de>2015-01-27 17:30:24 +0100
commitc650dcacd89ed4ffd6cdc2aded92de70b40f181d (patch)
tree36994f517ef1b205c379d4e17be38b1fb085aea8
parent15ad84bccf46ccedd894cabb03ff18d1b7707214 (diff)
downloadvdr-plugin-skindesigner-c650dcacd89ed4ffd6cdc2aded92de70b40f181d.tar.gz
vdr-plugin-skindesigner-c650dcacd89ed4ffd6cdc2aded92de70b40f181d.tar.bz2
started plugin interface implementation
-rw-r--r--Makefile1
-rw-r--r--designer.h1
-rw-r--r--displaymenu.c3
-rw-r--r--displayplugin.c7
-rw-r--r--displayplugin.h13
-rw-r--r--libtemplate/xmlparser.c1
-rw-r--r--services.h29
7 files changed, 55 insertions, 0 deletions
diff --git a/Makefile b/Makefile
index d2d77aa..04242b8 100644
--- a/Makefile
+++ b/Makefile
@@ -65,6 +65,7 @@ OBJS = $(PLUGIN).o \
displayreplay.o \
displaytracks.o \
displayvolume.o \
+ displayplugin.o \
libcore/pixmapcontainer.o \
libcore/fontmanager.o \
libcore/imagecache.o \
diff --git a/designer.h b/designer.h
index abb63bc..5c51ebd 100644
--- a/designer.h
+++ b/designer.h
@@ -10,6 +10,7 @@
#include "displayvolume.h"
#include "displaytracks.h"
#include "displaymessage.h"
+#include "displayplugin.h"
#include <vdr/skinlcars.h>
class cSkinDesigner : public cSkin {
diff --git a/displaymenu.c b/displaymenu.c
index 2d922cd..d64e920 100644
--- a/displaymenu.c
+++ b/displaymenu.c
@@ -19,6 +19,7 @@ cSDDisplayMenu::cSDDisplayMenu(cTemplate *menuTemplate) {
doOutput = false;
return;
}
+ esyslog("skindesigner: menu opened");
}
cSDDisplayMenu::~cSDDisplayMenu() {
@@ -26,6 +27,7 @@ cSDDisplayMenu::~cSDDisplayMenu() {
delete rootView;
if (textAreaFont)
delete textAreaFont;
+ esyslog("skindesigner: menu closed");
}
void cSDDisplayMenu::Scroll(bool Up, bool Page) {
@@ -184,6 +186,7 @@ bool cSDDisplayMenu::SetItemPlugin(map<string,string> *stringTokens, map<string,
}
void cSDDisplayMenu::SetItem(const char *Text, int Index, bool Current, bool Selectable) {
+ esyslog("skindesigner: Item %s %s", Text, Current ? " -- ACTIVE --" : "");
if (!doOutput)
return;
cDisplayMenuListView *list = rootView->GetListView();
diff --git a/displayplugin.c b/displayplugin.c
new file mode 100644
index 0000000..c8661b9
--- /dev/null
+++ b/displayplugin.c
@@ -0,0 +1,7 @@
+#include "displayplugin.h"
+
+cDisplayPlugin::cDisplayPlugin(cTemplate *menuTemplate) {
+}
+
+cDisplayPlugin::~cDisplayPlugin() {
+} \ No newline at end of file
diff --git a/displayplugin.h b/displayplugin.h
new file mode 100644
index 0000000..bad6759
--- /dev/null
+++ b/displayplugin.h
@@ -0,0 +1,13 @@
+#ifndef __DISPLAYPLUGIN_H
+#define __DISPLAYPLUGIN_H
+
+#include "libtemplate/template.h"
+
+class cDisplayPlugin {
+private:
+public:
+ cDisplayPlugin(cTemplate *pluginTemplate);
+ virtual ~cDisplayPlugin();
+};
+
+#endif //__DISPLAYPLUGIN_H
diff --git a/libtemplate/xmlparser.c b/libtemplate/xmlparser.c
index 9e095a4..8df22e8 100644
--- a/libtemplate/xmlparser.c
+++ b/libtemplate/xmlparser.c
@@ -9,6 +9,7 @@ void SkinDesignerXMLErrorHandler (void * userData, xmlErrorPtr error) {
}
cXmlParser::cXmlParser(void) {
+ view = NULL;
doc = NULL;
root = NULL;
ctxt = NULL;
diff --git a/services.h b/services.h
index 3c477b2..203e715 100644
--- a/services.h
+++ b/services.h
@@ -35,4 +35,33 @@ public:
//out
cSDDisplayMenu *displayMenu;
};
+
+// Data structure for service "RegisterStandalonePlugin"
+/*
+class RegisterStandalonePlugin {
+public:
+ RegisterStandalonePlugin(void) {
+ name = "";
+ rootView = "";
+ };
+ void SetMenu(int key, string templateName) {
+ menus.insert(pair<int, string>(key, templateName));
+ }
+// in
+ string name; //name of plugin
+ string rootView; //name of plugin
+ map< int, string > menus; //menus as key -> templatename hashmap
+//out
+};
+*/
+// Data structure for service "GetDisplayPlugin"
+class GetDisplayPlugin {
+public:
+ GetDisplayPlugin(void) {
+ displayPlugin = NULL;
+ };
+// in
+//out
+ cDisplayPlugin *displayPlugin;
+};
#endif //__SKINDESIGNERSERVICES_H \ No newline at end of file