Hi list,
My newest plugin project has reached its first milestone and allows first practical use, so its time to publicly announce it:
OSDServer is a plugin that allows external programs to use the OSD and the menu system of VDR. Access is done via TCP/IP and a simple script language that is primarily designed to be handled by perl programs and shell scripts. Until now, interactive VDR extensions were only available to C++ coders, but with this plugin, script coders can use the OSD too.
Version 0.0.1 only has a minimal set of commands for creating simple menus and OSD messages, but can already be used for user interaction. A simple example program is included, in perl and in bash version. This plugin release is a first test version only, to get some feedback for future development. Complex menus and dialogs will follow in later versions.
Download: http://www.udo-richter.de/vdr/osdserver.html http://www.udo-richter.de/vdr/osdserver.en.html
Cheers,
Udo
Hi list,
the attached patch fixes compile issues with pre-4.x GCC compilers.
Cheers,
Udo
Index: osdobjects.h =================================================================== --- osdobjects.h (Revision 812) +++ osdobjects.h (Arbeitskopie) @@ -214,6 +214,7 @@ virtual eOSState ProcessKey(eKeys Key); cOsdServerOsdItem* ParentOsdItem() { return (cOsdServerOsdItem*)Parent; } }; + friend class cPrivateOsdItem; cPrivateOsdItem* PrivateOsdItem() { return (cPrivateOsdItem*)Private; }
public: @@ -265,6 +266,7 @@ void SetTitle(const char *title) { cOsdMenu::SetTitle(title); } void SetCurrent(cOsdItem *Item) { cOsdMenu::SetCurrent(Item); } }; + friend class cPrivateMenu; cPrivateMenu* PrivateMenu() { return (cPrivateMenu*)Private; }
public: