diff options
author | Klaus Schmidinger <kls (at) cadsoft (dot) de> | 2006-04-28 18:00:00 +0200 |
---|---|---|
committer | Klaus Schmidinger <kls (at) cadsoft (dot) de> | 2006-04-28 18:00:00 +0200 |
commit | 56e5836b54ab1a7f5ad5b067e867a0c9392c5e5b (patch) | |
tree | b00c8d961eb4e208d05b7486bf25998c54f6e72f /PLUGINS.html | |
parent | 880c3ddb94c09d6cca411363ed6f981d4e150fd2 (diff) | |
download | vdr-patch-lnbsharing-56e5836b54ab1a7f5ad5b067e867a0c9392c5e5b.tar.gz vdr-patch-lnbsharing-56e5836b54ab1a7f5ad5b067e867a0c9392c5e5b.tar.bz2 |
Version 1.3.49vdr-1.3.49
- Fixed initializing 'noapiv' in the Makefile (reported by Ronny Kornexl).
- Fixed extracting APIVERSION to work with older versions of 'sed' (reported by
Oliver Endriss; thanks also to Udo Richter for a shorter version of the 'sed'
expression).
- Fixed broken APIVERSION extraction line in 'newplugin' (thanks to Oliver Endriss).
- Fixed entering '0' in a cMenuEditIntItem (reported by Mirko Dölle).
- Updated the Italian OSD texts (thanks to Nino Gerbino).
- Added a note about adding 'INCLUDES += -I$(DVBDIR)/include' to an existing
Make.config (problem reported by Markus Ehrnsperger).
- Fixed handling the cPluginManager::Active() result when pressing the "Power" key
(reported by Werner Färber).
- Added a hint about commenting out the line '#define USE_FADVISE' in tools.c in
case of problems with replaying in fast forward mode if the video directory is
mounted via a Samba share (reported by Andy Grobb).
- Changed the "Really restart?" prompt in the call to cPluginManager::Active() in
menu.c to "restart anyway?" (suggested by Rolf Ahrenberg).
- Removed the obsolete "'1' for encrypted radio channels" part from the description
of the VPID in vdr.5 (reported by Alexander Hans).
- Fixed tuning to the channel of a VPS timer if the device is the actual device.
Diffstat (limited to 'PLUGINS.html')
-rw-r--r-- | PLUGINS.html | 32 |
1 files changed, 1 insertions, 31 deletions
diff --git a/PLUGINS.html b/PLUGINS.html index 491399c..0869c38 100644 --- a/PLUGINS.html +++ b/PLUGINS.html @@ -6,7 +6,7 @@ <center><h1>The VDR Plugin System</h1></center> -<center><b>Version 1.3</b></center> +<center><b>Version 1.4</b></center> <p> <center> Copyright © 2006 Klaus Schmidinger<br> @@ -14,19 +14,6 @@ Copyright © 2006 Klaus Schmidinger<br> <a href="http://www.cadsoft.de/vdr">www.cadsoft.de/vdr</a> </center> <p> -<!--X1.3.31--><table width=100%><tr><td bgcolor=#0000AA> </td><td width=100%> -Important modifications introduced in version 1.3.31 are marked like this. -<!--X1.3.31--></td></tr></table> -<!--X1.3.37--><table width=100%><tr><td bgcolor=#00AA00> </td><td width=100%> -Important modifications introduced in version 1.3.37 are marked like this. -<!--X1.3.37--></td></tr></table> -<!--X1.3.38--><table width=100%><tr><td bgcolor=#AA0000> </td><td width=100%> -Important modifications introduced in version 1.3.38 are marked like this. -<!--X1.3.38--></td></tr></table> -<!--X1.3.47--><table width=100%><tr><td bgcolor=#FF0000> </td><td width=100%> -Important modifications introduced in version 1.3.46 are marked like this. -<!--X1.3.47--></td></tr></table> -<p> VDR provides an easy to use plugin interface that allows additional functionality to be added to the program by implementing a dynamically loadable library file. This interface allows programmers to develop additional functionality for VDR completely @@ -62,18 +49,14 @@ structures and allows it to hook itself into specific areas to perform special a <li><a href="#Main menu entry">Main menu entry</a> <li><a href="#User interaction">User interaction</a> <li><a href="#Housekeeping">Housekeeping</a> -<!--X1.3.47--><table width=100%><tr><td bgcolor=#FF0000> </td><td width=100%> <li><a href="#Main thread hook">Main thread hook</a> <li><a href="#Activity">Activity</a> -<!--X1.3.47--></td></tr></table> <li><a href="#Setup parameters">Setup parameters</a> <li><a href="#The Setup menu">The Setup menu</a> <li><a href="#Configuration files">Configuration files</a> <li><a href="#Internationalization">Internationalization</a> <li><a href="#Custom services">Custom services</a> -<!--X1.3.31--><table width=100%><tr><td bgcolor=#0000AA> </td><td width=100%> <li><a href="#SVDRP commands">SVDRP commands</a> -<!--X1.3.31--></td></tr></table> <li><a href="#Loading plugins into VDR">Loading plugins into VDR</a> <li><a href="#Building the distribution package">Building the distribution package</a> </ul> @@ -166,7 +149,6 @@ loadable library file for that plugin (we'll get to the details later). The <tt>lib</tt> directory contains the dynamically loadable libraries of all available plugins. Note that the names of these files are created by concatenating <p> -<!--X1.3.47--><table width=100%><tr><td bgcolor=#FF0000> </td><td width=100%> <table border=2> <tr><td align=center><b><tt>libvdr-</tt></b></td><td align=center><b><tt>hello</tt></b></td><td align=center><b><tt>.so.</tt></b></td><td align=center><b><tt>1.1.0</tt></b></td></tr> <tr><td align=center><font size=-1>VDR plugin<br>library prefix</font></td><td align=center><font size=-1>name of<br>the plugin</font></td><td align=center><font size=-1>shared object<br>indicator</font></td><td align=center><font size=-1>API version number<br>this plugin was<br>compiled for</font></td></tr> @@ -178,7 +160,6 @@ of VDR as long as their plugin API version number is still the same as that of the current VDR version. That way minor fixes to VDR, that don't require changes to the VDR header files, can be made without requiring all plugins to be recompiled. -<!--X1.3.47--></td></tr></table> <p> The plugin library files can be stored in any directory. If the default organization is not used, the path to the plugin directory has be be given to VDR through the @@ -620,7 +601,6 @@ interaction is possible. If a specific action takes longer than a few seconds, the plugin should launch a separate thread to do this. </b> -<!--X1.3.47--><table width=100%><tr><td bgcolor=#FF0000> </td><td width=100%> <a name="Main thread hook"><hr><h2>Main thread hook</h2> <center><i><b>Pushing in...</b></i></center><p> @@ -677,7 +657,6 @@ the prompt by pressing the "Ok" button, the rest of the plugins will also be queried, and further prompts may show up. If all prompts have been confirmed, the shutdown will take place. As soon as one prompt is not confirmed, no further plugins will be queried and no shutdown will be done. -<!--X1.3.47--></td></tr></table> <a name="Setup parameters"><hr><h2>Setup parameters</h2> @@ -1002,7 +981,6 @@ To send a message to all plugins, a plugin can call the function <tt>cPluginManager::CallAllServices()</tt>. This function returns <tt>true</tt> if any plugin handled the request, or <tt>false</tt> if no plugin handled the request. -<!--X1.3.31--><table width=100%><tr><td bgcolor=#0000AA> </td><td width=100%> <a name="SVDRP commands"><hr><h2>SVDRP commands</h2> <center><i><b>Infinite Diversity in Infinite Combinations</b></i></center><p> @@ -1094,8 +1072,6 @@ The returned string may consist of several lines, separated by the newline chara when presenting them to the caller, and the continuation character ('<tt>-</tt>') will be set for all but the last one. -<!--X1.3.31--></td></tr></table> - <a name="Loading plugins into VDR"><hr><h2>Loading plugins into VDR</h2> <center><i><b>Saddling up!</b></i></center><p> @@ -1329,9 +1305,7 @@ public: cMyControl(void); virtual ~cMyControl(); virtual void Hide(void); -<!--X1.3.38--><table width=100%><tr><td bgcolor=#AA0000> </td><td width=100%> virtual cOsdObject *GetInfo(void); -<!--X1.3.38--></td></tr></table> virtual eOSState ProcessKey(eKeys Key); }; </pre></td></tr></table><p> @@ -1361,13 +1335,11 @@ A derived <tt>cControl</tt> <b>must</b> implement the <tt>Hide()</tt> function, it has to hide itself from the OSD, in case it uses it. <tt>Hide()</tt> may be called at any time, and it may be called even if the <tt>cControl</tt> is not visible at the moment. <p> -<!--X1.3.38--><table width=100%><tr><td bgcolor=#AA0000> </td><td width=100%> The <tt>GetInfo()</tt> function is called when the user presses the <tt>Info</tt> button, and shall return a pointer to a <tt>cOsdObject</tt> that contains information about the currently played programme. The caller takes ownership of the returned pointer and will delete it when it is no longer used. If no information is available, <tt>NULL</tt> shall be returned. -<!--X1.3.38--></td></tr></table> <p> Finally, to get things going, a plugin that implements a player (and the surrounding infrastructure like displaying a list of playable stuff etc) simply has to call the @@ -1589,7 +1561,6 @@ with the full required resolution. Only if this fails shall it use alternate areas. Drawing areas are always rectangular and may not overlap (but do not need to be adjacent). -<!--X1.3.37--><table width=100%><tr><td bgcolor=#00AA00> </td><td width=100%> <p> Directly accessing the OSD is only allowed from the foreground thread, which restricts this to a <tt>cOsdObject</tt> returned from the plugin's <tt>MainMenuAction()</tt> @@ -1603,7 +1574,6 @@ int cSkins::QueueMessage(eMessageType Type, const char *s, int Seconds = 0, int </pre></td></tr></table><p> to queue that message for display. See <tt>VDR/skins.h</tt> for details. -<!--X1.3.37--></td></tr></table> <a name="Skins"><hr><h2>Skins</h2> |