From a302fd67af6e77cd5ab8314b356b661b1850190e Mon Sep 17 00:00:00 2001 From: Klaus Schmidinger Date: Fri, 28 Apr 2006 13:07:14 +0200 Subject: Set all version numbers in doc files to 1.4 --- PLUGINS.html | 32 +------------------------------- 1 file changed, 1 insertion(+), 31 deletions(-) (limited to 'PLUGINS.html') diff --git a/PLUGINS.html b/PLUGINS.html index 491399c7..0869c38f 100644 --- a/PLUGINS.html +++ b/PLUGINS.html @@ -6,7 +6,7 @@

The VDR Plugin System

-
Version 1.3
+
Version 1.4

Copyright © 2006 Klaus Schmidinger
@@ -14,19 +14,6 @@ Copyright © 2006 Klaus Schmidinger
www.cadsoft.de/vdr

-
  -Important modifications introduced in version 1.3.31 are marked like this. -
-
  -Important modifications introduced in version 1.3.37 are marked like this. -
-
  -Important modifications introduced in version 1.3.38 are marked like this. -
-
  -Important modifications introduced in version 1.3.46 are marked like this. -
-

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

  • Main menu entry
  • User interaction
  • Housekeeping -
     
  • Main thread hook
  • Activity -
  • Setup parameters
  • The Setup menu
  • Configuration files
  • Internationalization
  • Custom services -
     
  • SVDRP commands -
  • Loading plugins into VDR
  • Building the distribution package @@ -166,7 +149,6 @@ loadable library file for that plugin (we'll get to the details later). The lib directory contains the dynamically loadable libraries of all available plugins. Note that the names of these files are created by concatenating

    -
      @@ -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. -
    libvdr-hello.so.1.1.0
    VDR plugin
    library prefix
    name of
    the plugin
    shared object
    indicator
    API version number
    this plugin was
    compiled for

    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. -
     

    Main thread hook

    Pushing in...

    @@ -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. -


    Setup parameters

    @@ -1002,7 +981,6 @@ To send a message to all plugins, a plugin can call the function cPluginManager::CallAllServices(). This function returns true if any plugin handled the request, or false if no plugin handled the request. -
     

    SVDRP commands

    Infinite Diversity in Infinite Combinations

    @@ -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 ('-') will be set for all but the last one. -

    -

    Loading plugins into VDR

    Saddling up!

    @@ -1329,9 +1305,7 @@ public: cMyControl(void); virtual ~cMyControl(); virtual void Hide(void); -
      virtual cOsdObject *GetInfo(void); -
    virtual eOSState ProcessKey(eKeys Key); };

    @@ -1361,13 +1335,11 @@ A derived cControl must implement the Hide() function, it has to hide itself from the OSD, in case it uses it. Hide() may be called at any time, and it may be called even if the cControl is not visible at the moment.

    -
      The GetInfo() function is called when the user presses the Info button, and shall return a pointer to a cOsdObject 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, NULL shall be returned. -

    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). -
     

    Directly accessing the OSD is only allowed from the foreground thread, which restricts this to a cOsdObject returned from the plugin's MainMenuAction() @@ -1603,7 +1574,6 @@ int cSkins::QueueMessage(eMessageType Type, const char *s, int Seconds = 0, int

    to queue that message for display. See VDR/skins.h for details. -


    Skins

    -- cgit v1.2.3