r4529 - in vdr/vdr-plugin-epgsearch/trunk/debian: . patches

Tobias Grimm tiber-guest at alioth.debian.org
Thu May 3 20:18:08 UTC 2007


Author: tiber-guest
Date: 2007-05-03 20:18:07 +0000 (Thu, 03 May 2007)
New Revision: 4529

Removed:
   vdr/vdr-plugin-epgsearch/trunk/debian/patches/90_menushortcuts.dpatch
   vdr/vdr-plugin-epgsearch/trunk/debian/patches/92_MainMenuHooks.dpatch
Modified:
   vdr/vdr-plugin-epgsearch/trunk/debian/changelog
   vdr/vdr-plugin-epgsearch/trunk/debian/copyright
   vdr/vdr-plugin-epgsearch/trunk/debian/patches/00list
Log:
* New upstream release
  - Added copyright fpr agrep fuzzy algorithm
  - German and English docs are now both explicitly GPL licensed
    (Thanks to Christian Wieninger for fixing this so fast!)
* Removed 90_menushortcuts.dpatch
* Removed 92_MainMenuHooks.dpatch

Modified: vdr/vdr-plugin-epgsearch/trunk/debian/changelog
===================================================================
--- vdr/vdr-plugin-epgsearch/trunk/debian/changelog	2007-05-01 20:48:32 UTC (rev 4528)
+++ vdr/vdr-plugin-epgsearch/trunk/debian/changelog	2007-05-03 20:18:07 UTC (rev 4529)
@@ -1,18 +1,18 @@
-vdr-plugin-epgsearch (0.9.21-1) UNRELEASED; urgency=low
+vdr-plugin-epgsearch (0.9.21-1) unstable; urgency=low
 
-  * (NOT RELEASED YET) New upstream release
+  * New upstream release
   * Fixed licensing issues reported by Joerg Jaspert
     - Added full GPL licencse header in to debian/copyright
     - Added copyright years
     - Added license and copyright for MD5 code
+    - Added copyright fpr agrep fuzzy algorithm
+    - German and English docs are now both explicitly GPL licensed
+      (Thanks to Christian Wieninger for fixing this so fast!)
+  * Removed 90_menushortcuts.dpatch
+  * Removed 92_MainMenuHooks.dpatch
 
-  * !!!! TODO: Check if note about "derived work" for MD5 code is
-               necessary
-  * !!!! TODO: Copyright and Authof for some of the scripts
-    
+ -- Tobias Grimm <tg at e-tobi.net>  Thu,  3 May 2007 22:08:52 +0200
 
- -- Tobias Grimm <tg at e-tobi.net>  Tue,  1 May 2007 22:16:10 +0200
-
 vdr-plugin-epgsearch (0.9.20-6) experimental; urgency=low
 
   * Release for vdrdevel 1.5.2

Modified: vdr/vdr-plugin-epgsearch/trunk/debian/copyright
===================================================================
--- vdr/vdr-plugin-epgsearch/trunk/debian/copyright	2007-05-01 20:48:32 UTC (rev 4528)
+++ vdr/vdr-plugin-epgsearch/trunk/debian/copyright	2007-05-03 20:18:07 UTC (rev 4529)
@@ -3,24 +3,27 @@
 
 It was downloaded from http://www.cwieninger.de.vu/
 
-Upstream Author: Christian Wieninger
+Upstream Author: 
+    Christian Wieninger
+    Mike Constabel (manpages)
 
+Debian Maintainers:
+    Roman Müllenschläder <qwasi_1999 at yahoo.de>
+    Tobias Grimm <tg at e-tobi.net>
+    Thomas Günther <tom at toms-cafe.de>
+    Thomas Schmidt <tschmidt at debian.org>
+
 Copyright:
-    (C) 2005 - 2006 Christian Wieninger
+    (C) 2005 - 2007 Christian Wieninger
 
+Copyright for the agrep fuzzy algorithm (afuzzy.c):
+    (C) 2002 Leonid Boitsov (original C++ version), Stas Namin (C port)
+
 Copyright for MD5 Message-Digest Algorithm (md5.c):
     (C) 1991-2 RSA Data Security, Inc
     (C) 2002 Gary McNickle
 
-Debian Maintainers:
-
-  Roman Müllenschläder <qwasi_1999 at yahoo.de>
-  Tobias Grimm <tg at e-tobi.net>
-  Thomas Günther <tom at toms-cafe.de>
-  Thomas Schmidt <tschmidt at debian.org>
-
 License:
-
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
     the Free Software Foundation; either version 2 of the License, or
@@ -39,7 +42,6 @@
     in /usr/share/common-licenses/LGPL on most Debian systems.
     
 License for the MD5 Message-Digest Algorithm (md5.c) component:
-
     License to copy and use this software is granted provided that it
     is identified as the "RSA Data Security, Inc. MD5 Message-Digest
     Algorithm" in all material mentioning or referencing this software
@@ -56,4 +58,3 @@
     without express or implied warranty of any kind.
     These notices must be retained in any copies of any part of this
     documentation and/or software.
-

Modified: vdr/vdr-plugin-epgsearch/trunk/debian/patches/00list
===================================================================
--- vdr/vdr-plugin-epgsearch/trunk/debian/patches/00list	2007-05-01 20:48:32 UTC (rev 4528)
+++ vdr/vdr-plugin-epgsearch/trunk/debian/patches/00list	2007-05-03 20:18:07 UTC (rev 4529)
@@ -1,7 +1,4 @@
 01_debian-defaults
-90_menushortcuts
 
 # Intentionally disabled, seems not to be required by VDR 1.5.x
 # 91_epgsearch-1.5.0
-
-92_MainMenuHooks

Deleted: vdr/vdr-plugin-epgsearch/trunk/debian/patches/90_menushortcuts.dpatch
===================================================================
--- vdr/vdr-plugin-epgsearch/trunk/debian/patches/90_menushortcuts.dpatch	2007-05-01 20:48:32 UTC (rev 4528)
+++ vdr/vdr-plugin-epgsearch/trunk/debian/patches/90_menushortcuts.dpatch	2007-05-03 20:18:07 UTC (rev 4529)
@@ -1,1468 +0,0 @@
-#! /bin/sh /usr/share/dpatch/dpatch-run
-## 90_menushortcuts.dpatch by Tobias Grimm <tg at e-tobi.net>
-##
-## All lines beginning with `## DP:' are a description of the patch.
-## DP: Makes the menu shortcuts optional (will be in the next upstream)
-
- at DPATCH@
-diff -Nur epgsearch-0.9.20/conflictcheckonly.c epgsearch-0.9.20-tg/conflictcheckonly.c
---- epgsearch-0.9.20/conflictcheckonly.c	2007-01-27 13:40:49.000000000 +0100
-+++ epgsearch-0.9.20-tg/conflictcheckonly.c	2007-02-02 10:08:43.000000000 +0100
-@@ -8,324 +8,177 @@
- #include <vdr/plugin.h>
- #include <vdr/i18n.h>
- #include "services.h"
-+#include "mainmenushortcut.h"
- 
- static const char VERSION[]        = "0.0.1";
- static const char DESCRIPTION[]    = "Direct access to epgsearch's conflict check menu";
- static const char MAINMENUENTRY[]  = "Timer conflicts";
-+static const char SETUPTEXT[]      = "Conflict info in main menu";
- 
--int showInfoInMain=1;
--char mainmenuentry[MaxFileName] = "";
--
--const tI18nPhrase Phrases[] = {
--  { "Direct access to epgsearch's conflict check menu",
--    "Direkter Zugriff auf epgsearch's Konflikt-Prüfungs-Menü",// Deutsch
--    "",// TODO 
--    "",// TODO
--    "",// TODO
--    "",// TODO 
--    "",// TODO
--    "",// TODO 
--    "Suoratoiminto EPGSearch-laajennoksen ajastimien tarkistukselle",
--    "",// TODO Polski
--    "",// TODO Español
--    "",// TODO ÅëëçíéêÜ (Greek)
--    "",// TODO Svenska
--    "",// TODO Romaneste
--    "",// TODO Magyar
--    "",// TODO Català
--    "",// TODO ÀãááÚØÙ (Russian)
--    "",// TODO Hrvatski (Croatian)
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },
--  { "Timer conflicts",
--    "Timer-Konflikte",
--    "",// TODO
--    "",// TODO
--    "",
--    "",// TODO
--    "",
--    "",// TODO
--    "Ajastimien päällekkäisyydet",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },
--  { "This version of EPGSearch does not support this service!",
--    "Diese Version von EPGSearch unterstützt diesen Dienst nicht!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "EPGSearch-laajennos ei tarjoa vaadittavaa palvelua!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },
--  { "EPGSearch does not exist!",
--    "EPGSearch nicht vorhanden!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "EPGSearch-laajennosta ei löydy!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },
--  { "Plugin needs vdr-1.3.36 or above!",
--    "Plugin benötigt vdr-1.3.36 oder höher!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "Laajennos tarvitsee toimiakseen vähintään vdr-1.3.36!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },
--  { "next",
--    "nächster",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "seuraava",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },
--  { "Show conflict info in main menu entry",
--    "Zeige Konflikt-Info in Hauptmenüeintrag",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "Näytä päällekkäisyydet päävalikossa",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },
--  { NULL }
--  };
-+const tI18nPhrase Phrases[] =
-+{
-+    {
-+        "Direct access to epgsearch's conflict check menu",
-+        "Direkter Zugriff auf epgsearch's Konflikt-Prüfungs-Menü",// Deutsch
-+        "",// TODO 
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO 
-+        "",// TODO
-+        "",// TODO 
-+        "Suoratoiminto EPGSearch-laajennoksen ajastimien tarkistukselle",
-+        "",// TODO Polski
-+        "",// TODO Español
-+        "",// TODO ÅëëçíéêÜ (Greek)
-+        "",// TODO Svenska
-+        "",// TODO Romaneste
-+        "",// TODO Magyar
-+        "",// TODO Català
-+        "",// TODO ÀãááÚØÙ (Russian)
-+        "",// TODO Hrvatski (Croatian)
-+        "", // Eesti
-+        "", // Dansk
-+        "", // Czech
-+    },
-+    {
-+        "Timer conflicts",
-+        "Timer-Konflikte",
-+        "",// TODO
-+        "",// TODO
-+        "",
-+        "",// TODO
-+        "",
-+        "",// TODO
-+        "Ajastimien päällekkäisyydet",
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "", // Eesti
-+        "", // Dansk
-+        "", // Czech
-+    },
-+    {
-+        "next",
-+        "nächster",
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "seuraava",
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "", // Eesti
-+        "", // Dansk
-+        "", // Czech
-+    },
-+    {
-+        "Cconflict info in main menu",
-+        "Konflikt-Info im Hauptmenü",
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "Näytä päällekkäisyydet päävalikossa",
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "", // Eesti
-+        "", // Dansk
-+        "", // Czech
-+    },
-+    { NULL }
-+};
-   
- cString DateTime(time_t t)
- {
--  char buffer[32];
--  if (t == 0)
--     time(&t);
--  struct tm tm_r;
--  tm *tm = localtime_r(&t, &tm_r);
--  snprintf(buffer, sizeof(buffer), "%02d.%02d %02d:%02d", tm->tm_mday, tm->tm_mon + 1, tm->tm_hour, tm->tm_min);
--  return buffer;
--}
--
--class cMenuConflictcheckonlySetup : public cMenuSetupPage {
--  private:
--    virtual void Setup(void)
--	{
--	    Add(new cMenuEditBoolItem(tr("Show conflict info in main menu entry"), &showInfoInMain, tr("no"), tr("yes")));
--	}
--  protected:
--    virtual void Store(void)
--	{
--	    SetupStore("ConflictInfoInMain", showInfoInMain);
--	}
--  public:
--    cMenuConflictcheckonlySetup(void)
--	{
--	    Setup();
--	};
--  };
--
--
--class cPluginConflictcheckonly : public cPlugin {
--private:
--  // Add any member variables or functions you may need here.
--public:
--  cPluginConflictcheckonly(void);
--  virtual ~cPluginConflictcheckonly();
--  virtual const char *Version(void) { return VERSION; }
--  virtual const char *Description(void) { return tr(DESCRIPTION); }
--  virtual const char *CommandLineHelp(void);
--  virtual bool ProcessArgs(int argc, char *argv[]);
--  virtual bool Initialize(void);
--  virtual bool Start(void);
--  virtual void Stop(void);
--  virtual void Housekeeping(void);
--  virtual const char *MainMenuEntry(void);
--  virtual cOsdObject *MainMenuAction(void);
--  virtual cMenuSetupPage *SetupMenu(void);
--  virtual bool SetupParse(const char *Name, const char *Value);
--  };
--
--cPluginConflictcheckonly::cPluginConflictcheckonly(void)
--{
--}
--
--cPluginConflictcheckonly::~cPluginConflictcheckonly()
--{
--}
--
--const char* cPluginConflictcheckonly::MainMenuEntry(void)
--{
--    if (showInfoInMain)
-+    char buffer[32];
-+    if (t == 0)
-     {
--	Epgsearch_lastconflictinfo_v1_0* serviceData = new Epgsearch_lastconflictinfo_v1_0;
--	serviceData->nextConflict = 0;
--	serviceData->relevantConflicts = 0;
--	serviceData->totalConflicts = 0;
--	
--	cPlugin *p = cPluginManager::GetPlugin("epgsearch");
--	if (p)
--	    p->Service("Epgsearch-lastconflictinfo-v1.0", serviceData);
--	
--	if (serviceData->relevantConflicts > 0)
--	{
--	    sprintf(mainmenuentry, "%s (%d, %s: %s)", tr(MAINMENUENTRY), serviceData->relevantConflicts, 
--		    tr("next"), *DateTime(serviceData->nextConflict));
--	    delete serviceData;
--	    return mainmenuentry;
--	}
--	
--	delete serviceData;
-+        time(&t);
-     }
--    return tr(MAINMENUENTRY);
--}
-+    struct tm tm_r;
-+    tm *tm = localtime_r(&t, &tm_r);
-+    snprintf(buffer, sizeof(buffer), "%02d.%02d %02d:%02d", tm->tm_mday, tm->tm_mon + 1, tm->tm_hour, tm->tm_min);
-+    return buffer;
-+}
-+
-+class cPluginConflictcheckonly : public cMainMenuShortcut
-+{
-+    private:
-+        char* _menuText;
-+
-+    public:
-+        cPluginConflictcheckonly();
-+        ~cPluginConflictcheckonly();
-+        virtual const char* Version() { return VERSION; }
-+        virtual const char* Description() { return tr(DESCRIPTION); }
-+        virtual bool Initialize();
-+        virtual cOsdObject* MainMenuAction() { return GetEpgSearchMenu("Epgsearch-conflictmenu-v1.0"); }
-+
-+    protected:
-+        virtual const char* SetupText() { return tr(SETUPTEXT); }
-+        virtual const char* MainMenuText();
-+};
- 
--const char *cPluginConflictcheckonly::CommandLineHelp(void)
-+cPluginConflictcheckonly::cPluginConflictcheckonly()
-+:_menuText(NULL)
- {
--  return NULL;
- }
- 
--bool cPluginConflictcheckonly::ProcessArgs(int argc, char *argv[])
--{
--  return true;
--}
--
--bool cPluginConflictcheckonly::Initialize(void)
--{
--  RegisterI18n(Phrases);
--  return true;
--}
--
--bool cPluginConflictcheckonly::Start(void)
--{
--  return true;
--}
--
--void cPluginConflictcheckonly::Stop(void)
--{
--}
--
--void cPluginConflictcheckonly::Housekeeping(void)
-+cPluginConflictcheckonly::~cPluginConflictcheckonly()
- {
-+    free(_menuText);
- }
- 
--cOsdObject *cPluginConflictcheckonly::MainMenuAction(void)
-+const char* cPluginConflictcheckonly::MainMenuText(void)
- {
--    cPlugin *p = cPluginManager::GetPlugin("epgsearch");
--    if (p)
--    {
-- 	Epgsearch_conflictmenu_v1_0* serviceData = new Epgsearch_conflictmenu_v1_0;
--	serviceData->pConflictMenu = NULL;
--	
--	cOsdMenu* pMenu = NULL;
--	if (p->Service("Epgsearch-conflictmenu-v1.0", serviceData))
--	    pMenu = serviceData->pConflictMenu;
--	else
--	    Skins.Message(mtError, tr("This version of EPGSearch does not support this service!"));
--	
--	delete serviceData;
--	
--	if (pMenu)
--	    return pMenu;	
--	else
--	    return NULL;
--    }
--    else
-+    const char* menuText = tr(MAINMENUENTRY);
-+    cPlugin *epgSearchPlugin = cPluginManager::GetPlugin("epgsearch");
-+    if (epgSearchPlugin)
-     {
--	Skins.Message(mtError, tr("EPGSearch does not exist!"));
--	return NULL;
-+        Epgsearch_lastconflictinfo_v1_0* serviceData = new Epgsearch_lastconflictinfo_v1_0;
-+        if (epgSearchPlugin->Service("Epgsearch-lastconflictinfo-v1.0", serviceData))
-+        {
-+            if (serviceData->relevantConflicts > 0)
-+            {
-+                free(_menuText);
-+                asprintf(&_menuText, "%s (%d, %s: %s)", menuText, serviceData->relevantConflicts, 
-+                  tr("next"), *DateTime(serviceData->nextConflict));
-+                menuText = _menuText;
-+            }
-+        }
-+        delete serviceData;
-     }
--
--  return NULL;
-+    return menuText;
- }
- 
--cMenuSetupPage *cPluginConflictcheckonly::SetupMenu(void)
--{
--  return new cMenuConflictcheckonlySetup;
--}
--
--bool cPluginConflictcheckonly::SetupParse(const char *Name, const char *Value)
-+bool cPluginConflictcheckonly::Initialize(void)
- {
--  if (!strcasecmp(Name, "ConflictInfoInMain")) showInfoInMain = atoi(Value);
--  return true;
-+    RegisterI18n(Phrases);
-+    return cMainMenuShortcut::Initialize();
- }
- 
- VDRPLUGINCREATOR(cPluginConflictcheckonly); // Don't touch this!
-diff -Nur epgsearch-0.9.20/epgsearch.c epgsearch-0.9.20-tg/epgsearch.c
---- epgsearch-0.9.20/epgsearch.c	2007-01-30 21:18:59.000000000 +0100
-+++ epgsearch-0.9.20-tg/epgsearch.c	2007-02-02 10:08:43.000000000 +0100
-@@ -243,8 +243,8 @@
-      if (Data == NULL)
-         return true;
-       
--      Epgsearch_searchmenu_v1_0* serviceData = (Epgsearch_searchmenu_v1_0*) Data;
--      serviceData->pSearchMenu = new cMenuEPGSearchExt();
-+      EpgSearchMenu_v1_0* serviceData = (EpgSearchMenu_v1_0*) Data;
-+      serviceData->Menu = new cMenuEPGSearchExt();
- 
-       return true;
-   }
-@@ -252,8 +252,8 @@
-      if (Data == NULL)
-         return true;
-       
--      Epgsearch_conflictmenu_v1_0* serviceData = (Epgsearch_conflictmenu_v1_0*) Data;
--      serviceData->pConflictMenu = new cMenuConflictCheck();
-+      EpgSearchMenu_v1_0* serviceData = (EpgSearchMenu_v1_0*) Data;
-+      serviceData->Menu = new cMenuConflictCheck();
- 
-       return true;
-   }
-@@ -355,8 +355,8 @@
-      if (Data == NULL)
-         return true;
-       
--      Epgsearch_quicksearch_v1_0* serviceData = (Epgsearch_quicksearch_v1_0*) Data;
--      serviceData->pSearchMenu = new cMenuQuickSearch(new cSearchExt);
-+      EpgSearchMenu_v1_0* serviceData = (EpgSearchMenu_v1_0*) Data;
-+      serviceData->Menu = new cMenuQuickSearch(new cSearchExt);
- 
-       return true;
-   }
-diff -Nur epgsearch-0.9.20/epgsearchonly.c epgsearch-0.9.20-tg/epgsearchonly.c
---- epgsearch-0.9.20/epgsearchonly.c	2006-12-03 14:25:32.000000000 +0100
-+++ epgsearch-0.9.20-tg/epgsearchonly.c	2007-02-02 10:08:43.000000000 +0100
-@@ -8,230 +8,104 @@
- #include <vdr/plugin.h>
- #include <vdr/i18n.h>
- #include "services.h"
-+#include "mainmenushortcut.h"
- 
- static const char VERSION[]        = "0.0.1";
- static const char DESCRIPTION[]    = "Direct access to epgsearch's search menu";
- static const char MAINMENUENTRY[]  = "Search";
-+static const char SETUPTEXT[]      = "EpgSearch-Search in main menu";
- 
--const tI18nPhrase Phrases[] = {
--  { "Direct access to epgsearch's search menu",
--    "Direkter Zugriff auf epgsearch's Suchenmenu",// Deutsch
--    "",// TODO 
--    "",// TODO
--    "",// TODO
--    "",// TODO 
--    "",// TODO
--    "",// TODO 
--    "Suoratoiminto EPGSearch-laajennoksen haulle",
--    "",// TODO Polski
--    "",// TODO Español
--    "",// TODO ÅëëçíéêÜ (Greek)
--    "",// TODO Svenska
--    "",// TODO Romaneste
--    "",// TODO Magyar
--    "",// TODO Català
--    "",// TODO ÀãááÚØÙ (Russian)
--    "",// TODO Hrvatski (Croatian)
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },
--  { "Search",
--    "Suche",
--    "",// TODO
--    "Ricerca",
--    "Zoek",
--    "",// TODO
--    "Recherche",
--    "",// TODO
--    "Etsi ohjelmaoppaasta",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },
--  { "This version of EPGSearch does not support this service!",
--    "Diese Version von EPGSearch unterstützt diesen Dienst nicht!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "EPGSearch-laajennos ei tarjoa vaadittavaa palvelua!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },
--  { "EPGSearch does not exist!",
--    "EPGSearch nicht vorhanden!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "EPGSearch-laajennosta ei löydy!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },
--  { "Plugin needs vdr-1.3.30 or above!",
--    "Plugin benötigt vdr-1.3.30 oder höher!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "Laajennos tarvitsee toimiakseen vähintään vdr-1.3.30!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },
--  { NULL }
--  };
--  
--class cPluginEpgsearchonly : public cPlugin {
--private:
--  // Add any member variables or functions you may need here.
--public:
--  cPluginEpgsearchonly(void);
--  virtual ~cPluginEpgsearchonly();
--  virtual const char *Version(void) { return VERSION; }
--  virtual const char *Description(void) { return tr(DESCRIPTION); }
--  virtual const char *CommandLineHelp(void);
--  virtual bool ProcessArgs(int argc, char *argv[]);
--  virtual bool Initialize(void);
--  virtual bool Start(void);
--  virtual void Stop(void);
--  virtual void Housekeeping(void);
--  virtual const char *MainMenuEntry(void) { return tr(MAINMENUENTRY); }
--  virtual cOsdObject *MainMenuAction(void);
--  virtual cMenuSetupPage *SetupMenu(void);
--  virtual bool SetupParse(const char *Name, const char *Value);
--  };
--
--cPluginEpgsearchonly::cPluginEpgsearchonly(void)
--{
--  // Initialize any member variables here.
--  // DON'T DO ANYTHING ELSE THAT MAY HAVE SIDE EFFECTS, REQUIRE GLOBAL
--  // VDR OBJECTS TO EXIST OR PRODUCE ANY OUTPUT!
--}
--
--cPluginEpgsearchonly::~cPluginEpgsearchonly()
--{
--  // Clean up after yourself!
--}
--
--const char *cPluginEpgsearchonly::CommandLineHelp(void)
--{
--  // Return a string that describes all known command line options.
--  return NULL;
--}
--
--bool cPluginEpgsearchonly::ProcessArgs(int argc, char *argv[])
--{
--  // Implement command line argument processing here if applicable.
--  return true;
--}
--
--bool cPluginEpgsearchonly::Initialize(void)
--{
--  RegisterI18n(Phrases);
--  return true;
--}
--
--bool cPluginEpgsearchonly::Start(void)
--{
--  return true;
--}
--
--void cPluginEpgsearchonly::Stop(void)
--{
--  // Stop any background activities the plugin shall perform.
--}
--
--void cPluginEpgsearchonly::Housekeeping(void)
--{
--  // Perform any cleanup or other regular tasks.
--}
--
--cOsdObject *cPluginEpgsearchonly::MainMenuAction(void)
-+const tI18nPhrase Phrases[] =
- {
--    cPlugin *p = cPluginManager::GetPlugin("epgsearch");
--    if (p)
-     {
-- 	Epgsearch_searchmenu_v1_0* serviceData = new Epgsearch_searchmenu_v1_0;
--	serviceData->pSearchMenu = NULL;
--	
--	cOsdMenu* pMenu = NULL;
--	if (p->Service("Epgsearch-searchmenu-v1.0", serviceData))
--	    pMenu = serviceData->pSearchMenu;
--	else
--	    Skins.Message(mtError, tr("This version of EPGSearch does not support this service!"));
--	
--	delete serviceData;
--	
--	if (pMenu)
--	    return pMenu;	
--	else
--	    return NULL;
--    }
--    else
-+        "Direct access to epgsearch's search menu",
-+        "Direkter Zugriff auf epgsearch's Suchenmenu",// Deutsch
-+        "",// TODO 
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO 
-+        "",// TODO
-+        "",// TODO 
-+        "Suoratoiminto EPGSearch-laajennoksen haulle",
-+        "",// TODO Polski
-+        "",// TODO Español
-+        "",// TODO ÅëëçíéêÜ (Greek)
-+        "",// TODO Svenska
-+        "",// TODO Romaneste
-+        "",// TODO Magyar
-+        "",// TODO Català
-+        "",// TODO ÀãááÚØÙ (Russian)
-+        "",// TODO Hrvatski (Croatian)
-+        "", // Eesti
-+        "", // Dansk
-+        "", // Czech
-+    },
-     {
--	Skins.Message(mtError, tr("EPGSearch does not exist!"));
--	return NULL;
--    }
--
--  return NULL;
--}
--
--cMenuSetupPage *cPluginEpgsearchonly::SetupMenu(void)
-+        "Search",
-+        "Suche",
-+        "",// TODO
-+        "Ricerca",
-+        "Zoek",
-+        "",// TODO
-+        "Recherche",
-+        "",// TODO
-+        "Etsi ohjelmaoppaasta",
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "", // Eesti
-+        "", // Dansk
-+        "", // Czech
-+    },
-+    {
-+        "EpgSearch-Search in main menu",
-+        "EpgSearch-Suche im Hauptmenü",// Deutsch
-+        "",// TODO 
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO 
-+        "",// TODO
-+        "",// TODO 
-+        "",// TODO Finnish
-+        "",// TODO Polski
-+        "",// TODO Español
-+        "",// TODO ÅëëçíéêÜ (Greek)
-+        "",// TODO Svenska
-+        "",// TODO Romaneste
-+        "",// TODO Magyar
-+        "",// TODO Català
-+        "",// TODO ÀãááÚØÙ (Russian)
-+        "",// TODO Hrvatski (Croatian)
-+        "", // Eesti
-+        "", // Dansk
-+        "", // Czech
-+    },
-+    { NULL }
-+};
-+  
-+class cPluginEpgsearchonly: public cMainMenuShortcut
- {
--  // Return a setup menu in case the plugin supports one.
--  return NULL;
--}
-+    public:
-+        virtual const char* Version() { return VERSION; }
-+        virtual const char* Description() { return tr(DESCRIPTION); }
-+        virtual bool Initialize();
-+        virtual cOsdObject *MainMenuAction() { return GetEpgSearchMenu("Epgsearch-searchmenu-v1.0"); };
-+
-+    protected:
-+        virtual const char* SetupText() { return tr(SETUPTEXT); }
-+        virtual const char* MainMenuText() { return tr(MAINMENUENTRY); };
-+};
- 
--bool cPluginEpgsearchonly::SetupParse(const char *Name, const char *Value)
-+bool cPluginEpgsearchonly::Initialize()
- {
--  // Parse your own setup parameters and store their values.
--  return false;
-+    RegisterI18n(Phrases);
-+    return cMainMenuShortcut::Initialize();
- }
- 
- VDRPLUGINCREATOR(cPluginEpgsearchonly); // Don't touch this!
-diff -Nur epgsearch-0.9.20/mainmenushortcut.c epgsearch-0.9.20-tg/mainmenushortcut.c
---- epgsearch-0.9.20/mainmenushortcut.c	1970-01-01 01:00:00.000000000 +0100
-+++ epgsearch-0.9.20-tg/mainmenushortcut.c	2007-02-02 10:08:43.000000000 +0100
-@@ -0,0 +1,135 @@
-+#include "services.h"
-+#include "mainmenushortcut.h"
-+
-+static const char SETUPENTRY[] = "MainMenuEntryEnabled";
-+
-+const tI18nPhrase Phrases[] =
-+{
-+    {
-+        "This version of EPGSearch does not support this service!",
-+        "Diese Version von EPGSearch unterstützt diesen Dienst nicht!",
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "EPGSearch-laajennos ei tarjoa vaadittavaa palvelua!",
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "", // Eesti
-+        "", // Dansk
-+        "", // Czech
-+    },
-+    {
-+        "EPGSearch does not exist!",
-+        "EPGSearch nicht vorhanden!",
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "EPGSearch-laajennosta ei löydy!",
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "", // Eesti
-+        "", // Dansk
-+        "", // Czech
-+    },
-+    { NULL }
-+};
-+
-+cMainMenuShortcutSetupPage::cMainMenuShortcutSetupPage(const char* setupText, const char* setupEntry,
-+  int* const setupValue)
-+:_setupEntry(setupEntry), _setupValue(setupValue)
-+{
-+    Add(new cMenuEditBoolItem(setupText, _setupValue, tr("no"), tr("yes")));
-+};
-+  
-+void cMainMenuShortcutSetupPage::Store()
-+{
-+    SetupStore(_setupEntry, *_setupValue);
-+}
-+
-+cMainMenuShortcut::cMainMenuShortcut()
-+:_mainMenuEntryEnabled(0)
-+{
-+}
-+
-+cMainMenuShortcut::~cMainMenuShortcut()
-+{
-+    I18nRegister(NULL, PLUGIN_NAME_I18N);
-+}
-+
-+cOsdMenu* cMainMenuShortcut::GetEpgSearchMenu(const char* serviceName)
-+{
-+    cOsdMenu* menu = NULL;
-+    cPlugin *epgSearchPlugin = cPluginManager::GetPlugin("epgsearch");
-+    if (epgSearchPlugin)
-+    {
-+        EpgSearchMenu_v1_0* serviceData = new EpgSearchMenu_v1_0;
-+ 
-+        if (epgSearchPlugin->Service(serviceName, serviceData))
-+        {
-+            menu = serviceData->Menu;
-+        }
-+        else
-+        {
-+            Skins.Message(mtError, tr("This version of EPGSearch does not support this service!"));
-+        }
-+	
-+        delete serviceData;
-+    }
-+    else
-+    {
-+        Skins.Message(mtError, tr("EPGSearch does not exist!"));
-+    }
-+    return menu;
-+}
-+
-+bool cMainMenuShortcut::Initialize()
-+{
-+    I18nRegister(Phrases, PLUGIN_NAME_I18N);
-+    return true;
-+}
-+
-+bool cMainMenuShortcut::SetupParse(const char *Name, const char *Value)
-+{
-+    if (!strcasecmp(Name, SETUPENTRY))
-+    {
-+        _mainMenuEntryEnabled = atoi(Value);
-+    }
-+    return true;
-+}
-+
-+cMenuSetupPage* cMainMenuShortcut::SetupMenu()
-+{
-+    return new cMainMenuShortcutSetupPage(SetupText(), SETUPENTRY, &_mainMenuEntryEnabled);
-+}
-+
-+const char* cMainMenuShortcut::MainMenuEntry()
-+{
-+    if (_mainMenuEntryEnabled)
-+    {
-+        return (const char*) MainMenuText();
-+    }
-+    else
-+    {
-+        return NULL;
-+    }
-+}
-diff -Nur epgsearch-0.9.20/mainmenushortcut.h epgsearch-0.9.20-tg/mainmenushortcut.h
---- epgsearch-0.9.20/mainmenushortcut.h	1970-01-01 01:00:00.000000000 +0100
-+++ epgsearch-0.9.20-tg/mainmenushortcut.h	2007-02-02 10:08:43.000000000 +0100
-@@ -0,0 +1,38 @@
-+#ifndef __MAINMENUSHORTCUT_H
-+#define __MAINMENUSHORTCUT_H
-+
-+#include <vdr/plugin.h>
-+
-+class cMainMenuShortcutSetupPage : public cMenuSetupPage 
-+{
-+    private:
-+        const char* _setupEntry;
-+        int* const _setupValue;
-+
-+    public:
-+        cMainMenuShortcutSetupPage(const char* setupText, const char* setupEntry, int* const setupValue);
-+
-+    protected:
-+        virtual void Store(void);
-+};
-+
-+class cMainMenuShortcut : public cPlugin
-+{
-+    private:
-+        int _mainMenuEntryEnabled;
-+
-+    public:
-+        cMainMenuShortcut();
-+        virtual ~cMainMenuShortcut();
-+        virtual bool Initialize();
-+        virtual bool SetupParse(const char* Name, const char* Value);
-+        virtual cMenuSetupPage* SetupMenu();
-+        virtual const char* MainMenuEntry();
-+
-+    protected:
-+        cOsdMenu* GetEpgSearchMenu(const char* serviceName);
-+        virtual const char* SetupText() = 0;
-+        virtual const char* MainMenuText() = 0;
-+};
-+
-+#endif
-diff -Nur epgsearch-0.9.20/Makefile epgsearch-0.9.20-tg/Makefile
---- epgsearch-0.9.20/Makefile	2007-01-26 17:04:27.000000000 +0100
-+++ epgsearch-0.9.20-tg/Makefile	2007-02-02 10:08:43.000000000 +0100
-@@ -10,6 +10,7 @@
- #WITHOUT_QUICKSEARCH=1
- 
- PLUGIN = epgsearch
-+MAINMENUSHORTCUT = epgsearchmainmenushortcut
- PLUGIN2 = epgsearchonly
- PLUGIN3 = conflictcheckonly
- PLUGIN4 = quickepgsearch
-@@ -72,6 +73,7 @@
- #INCLUDES += -I$(VDRDIR)/include
- 
- DEFINES += -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"$(PLUGIN)"'
-+DEFINES1 += -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"$(MAINMENUSHORTCUT)"'
- DEFINES2 += -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"$(PLUGIN2)"'
- DEFINES3 += -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"$(PLUGIN3)"'
- DEFINES4 += -D_GNU_SOURCE -DPLUGIN_NAME_I18N='"$(PLUGIN4)"'
-@@ -98,19 +100,21 @@
- DEFINES += -DDEBUG_CONFL
- endif
- 
--OBJS2    = epgsearchonly.o
-+OBJS2    = mainmenushortcut.o epgsearchonly.o
- LIBS2    =
- 
--OBJS3    = conflictcheckonly.o
-+OBJS3    = mainmenushortcut.o conflictcheckonly.o
- LIBS3    =
- 
--OBJS4    = quickepgsearch.o
-+OBJS4    = mainmenushortcut.o quickepgsearch.o
- LIBS4    =
- 
- ### Implicit rules:
- 
- %.o: %.c
- 	$(CXX) $(CXXFLAGS) -c $(DEFINES) $(INCLUDES) $<
-+mainmenushortcut.o: mainmenushortcut.c
-+	$(CXX) $(CXXFLAGS) -c $(DEFINES1) $(INCLUDES) $<
- epgsearchonly.o: epgsearchonly.c
- 	$(CXX) $(CXXFLAGS) -c $(DEFINES2) $(INCLUDES) $<
- conflictcheckonly.o: conflictcheckonly.c
-diff -Nur epgsearch-0.9.20/quickepgsearch.c epgsearch-0.9.20-tg/quickepgsearch.c
---- epgsearch-0.9.20/quickepgsearch.c	2007-01-28 16:29:57.000000000 +0100
-+++ epgsearch-0.9.20-tg/quickepgsearch.c	2007-02-02 10:08:43.000000000 +0100
-@@ -8,262 +8,105 @@
- #include <vdr/plugin.h>
- #include <vdr/i18n.h>
- #include "services.h"
-+#include "mainmenushortcut.h"
- 
- static const char VERSION[]        = "0.0.1";
- static const char DESCRIPTION[]    = "Quick search for broadcasts";
- static const char MAINMENUENTRY[]  = "Quick search";
--int showInMain=1;
-+static const char SETUPTEXT[]      = "Show in main menu";
- 
- 
--const tI18nPhrase Phrases[] = {
--  { "Quick search for broadcasts",
--    "Schnelle Suche nach Sendungen",// Deutsch
--    "",// TODO 
--    "",// TODO
--    "",// TODO
--    "",// TODO 
--    "",// TODO
--    "",// TODO 
--    "Pikahaku ohjelmaoppaalle",// suomi
--    "",// TODO Polski
--    "",// TODO Español
--    "",// TODO ÅëëçíéêÜ (Greek)
--    "",// TODO Svenska
--    "",// TODO Romaneste
--    "",// TODO Magyar
--    "",// TODO Català
--    "",// TODO ÀãááÚØÙ (Russian)
--    "",// TODO Hrvatski (Croatian)
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },
--  { "Quick search",
--    "Schnellsuche",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "Pikahaku",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },
--  { "This version of EPGSearch does not support this service!",
--    "Diese Version von EPGSearch unterstützt diesen Dienst nicht!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "EPGSearch-laajennos ei tarjoa vaadittavaa palvelua!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },
--  { "EPGSearch does not exist!",
--    "EPGSearch nicht vorhanden!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "EPGSearch-laajennosta ei löydy!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },
--  { "Plugin needs vdr-1.3.30 or above!",
--    "Plugin benötigt vdr-1.3.30 oder höher!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "Laajennos tarvitsee toimiakseen vähintään vdr-1.3.30!",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },
--  { "Show in main menu",
--    "Im Hauptmenü anzeigen",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "Näytä valinta päävalikossa",
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "",// TODO
--    "", // Eesti
--    "", // Dansk
--    "", // Czech
--  },  { NULL }
--  };
--  
--class cMenuQuicksearchSetup : public cMenuSetupPage {
--  private:
--    virtual void Setup(void)
--	{
--	    Add(new cMenuEditBoolItem(tr("Show in main menu"), &showInMain, tr("no"), tr("yes")));
--	}
--  protected:
--    virtual void Store(void)
--	{
--	    SetupStore("QuickEPGSearchInMain", showInMain);
--	}
--  public:
--    cMenuQuicksearchSetup(void)
--	{
--	    Setup();
--	};
--  };
--
--
--class cPluginQuicksearch : public cPlugin {
--private:
--public:
--  cPluginQuicksearch(void);
--  virtual ~cPluginQuicksearch();
--  virtual const char *Version(void) { return VERSION; }
--  virtual const char *Description(void) { return tr(DESCRIPTION); }
--  virtual const char *CommandLineHelp(void);
--  virtual bool ProcessArgs(int argc, char *argv[]);
--  virtual bool Initialize(void);
--  virtual bool Start(void);
--  virtual void Stop(void);
--  virtual void Housekeeping(void);
--  virtual const char *MainMenuEntry(void) { if (showInMain) return tr(MAINMENUENTRY); else return NULL; }
--  virtual cOsdObject *MainMenuAction(void);
--  virtual cMenuSetupPage *SetupMenu(void);
--  virtual bool SetupParse(const char *Name, const char *Value);
--  };
--
--cPluginQuicksearch::cPluginQuicksearch(void)
--{
--}
--
--cPluginQuicksearch::~cPluginQuicksearch()
--{
--}
--
--const char *cPluginQuicksearch::CommandLineHelp(void)
--{
--  return NULL;
--}
--
--bool cPluginQuicksearch::ProcessArgs(int argc, char *argv[])
--{
--  return true;
--}
--
--bool cPluginQuicksearch::Initialize(void)
--{
--  RegisterI18n(Phrases);
--  return true;
--}
--
--bool cPluginQuicksearch::Start(void)
--{
--  return true;
--}
--
--void cPluginQuicksearch::Stop(void)
-+const tI18nPhrase Phrases[] =
- {
--}
--
--void cPluginQuicksearch::Housekeeping(void)
--{
--}
--
--cOsdObject *cPluginQuicksearch::MainMenuAction(void)
--{
--    cPlugin *p = cPluginManager::GetPlugin("epgsearch");
--    if (p)
-     {
-- 	Epgsearch_quicksearch_v1_0* serviceData = new Epgsearch_quicksearch_v1_0;
--	serviceData->pSearchMenu = NULL;
--	
--	cOsdMenu* pMenu = NULL;
--	if (p->Service("Epgsearch-quicksearch-v1.0", serviceData))
--	    pMenu = serviceData->pSearchMenu;
--	else
--	    Skins.Message(mtError, tr("This version of EPGSearch does not support this service!"));
--	
--	delete serviceData;
--	
--	if (pMenu)
--	    return pMenu;	
--	else
--	    return NULL;
--    }
--    else
-+        "Quick search for broadcasts",
-+        "Schnelle Suche nach Sendungen",// Deutsch
-+        "",// TODO 
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO 
-+        "",// TODO
-+        "",// TODO 
-+        "Pikahaku ohjelmaoppaalle",// suomi
-+        "",// TODO Polski
-+        "",// TODO Español
-+        "",// TODO ÅëëçíéêÜ (Greek)
-+        "",// TODO Svenska
-+        "",// TODO Romaneste
-+        "",// TODO Magyar
-+        "",// TODO Català
-+        "",// TODO ÀãááÚØÙ (Russian)
-+        "",// TODO Hrvatski (Croatian)
-+        "", // Eesti
-+        "", // Dansk
-+        "", // Czech
-+    },
-     {
--	Skins.Message(mtError, tr("EPGSearch does not exist!"));
--	return NULL;
--    }
--
--  return NULL;
--}
--
--bool cPluginQuicksearch::SetupParse(const char *Name, const char *Value)
-+        "Quick search",
-+        "Schnellsuche",
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "Pikahaku",
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "", // Eesti
-+        "", // Dansk
-+        "", // Czech
-+    },
-+    {
-+        "Show in main menu",
-+        "Im Hauptmenü anzeigen",
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "Näytä valinta päävalikossa",
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "",// TODO
-+        "", // Eesti
-+        "", // Dansk
-+        "", // Czech
-+    },
-+    { NULL }
-+};
-+  
-+class cPluginQuicksearch : public cMainMenuShortcut
- {
--  if (!strcasecmp(Name, "QuickEPGSearchInMain")) showInMain = atoi(Value);
--  return true;
--}
-+    public:
-+        virtual const char* Version() { return VERSION; }
-+        virtual const char* Description() { return tr(DESCRIPTION); }
-+        virtual bool Initialize();
-+        virtual cOsdObject* MainMenuAction() { return GetEpgSearchMenu("Epgsearch-quicksearch-v1.0"); };
-+
-+    protected:
-+        virtual const char* SetupText() { return tr(SETUPTEXT); }
-+        virtual const char* MainMenuText() { return tr(MAINMENUENTRY); };
-+};
- 
--cMenuSetupPage *cPluginQuicksearch::SetupMenu(void)
-+bool cPluginQuicksearch::Initialize()
- {
--  return new cMenuQuicksearchSetup;
-+    RegisterI18n(Phrases);
-+    return cMainMenuShortcut::Initialize();
- }
- 
- VDRPLUGINCREATOR(cPluginQuicksearch); // Don't touch this!
-diff -Nur epgsearch-0.9.20/services.h epgsearch-0.9.20-tg/services.h
---- epgsearch-0.9.20/services.h	2007-01-25 19:23:31.000000000 +0100
-+++ epgsearch-0.9.20-tg/services.h	2007-02-02 10:08:43.000000000 +0100
-@@ -4,6 +4,7 @@
- #include <string>
- #include <list>
- #include <memory>
-+#include <vdr/osdbase.h>
- 
- // Data structure for service "Epgsearch-search-v1.0"
- struct Epgsearch_search_v1_0
-@@ -45,20 +46,12 @@
-     eMessageType type;
- };
- 
--// Data structure for service "Epgsearch-searchmenu-v1.0"
--struct Epgsearch_searchmenu_v1_0
-+// Data structure for service "EpgsearchMenu-v1.0"
-+struct EpgSearchMenu_v1_0
- {
- // in
- // out
--    cOsdMenu* pSearchMenu;   // pointer to the search menu
--};
--
--// Data structure for service "Epgsearch-conflictmenu-v1.0"
--struct Epgsearch_conflictmenu_v1_0
--{
--// in
--// out
--    cOsdMenu* pConflictMenu;   // pointer to the conflict menu
-+    cOsdMenu* Menu;   // pointer to the menu
- };
- 
- // Data structure for service "Epgsearch-lastconflictinfo-v1.0"
-@@ -106,14 +99,6 @@
-     	bool success;              // result
- };
- 
--// Data structure for service "Epgsearch-quicksearch-v1.0"
--struct Epgsearch_quicksearch_v1_0
--{
--// in
--// out
--    cOsdMenu* pSearchMenu;   // pointer to the search menu
--};
--
- // Data structures for service "Epgsearch-services-v1.0"
- class cServiceHandler
- {

Deleted: vdr/vdr-plugin-epgsearch/trunk/debian/patches/92_MainMenuHooks.dpatch
===================================================================
--- vdr/vdr-plugin-epgsearch/trunk/debian/patches/92_MainMenuHooks.dpatch	2007-05-01 20:48:32 UTC (rev 4528)
+++ vdr/vdr-plugin-epgsearch/trunk/debian/patches/92_MainMenuHooks.dpatch	2007-05-03 20:18:07 UTC (rev 4529)
@@ -1,31 +0,0 @@
-#! /bin/sh /usr/share/dpatch/dpatch-run
-## 92_MainMenuHooks.dpatch by Tobias Grimm <tg at e-tobi.net>
-##
-## All lines beginning with `## DP:' are a description of the patch.
-## DP: Support for the MainMenuHook patch (will be contained in upstream in
-## DP: the next version)
-
- at DPATCH@
-diff -urNad vdr-plugin-epgsearch-0.9.20~/epgsearch.c vdr-plugin-epgsearch-0.9.20/epgsearch.c
---- vdr-plugin-epgsearch-0.9.20~/epgsearch.c	2007-03-11 11:27:25.000000000 +0100
-+++ vdr-plugin-epgsearch-0.9.20/epgsearch.c	2007-03-11 11:28:29.000000000 +0100
-@@ -185,9 +185,16 @@
- 
- bool cPluginEpgsearch::Service(const char *Id, void *Data)
- {
--  if (strcmp(Id, "schedule") == 0) 
--      return (EPGSearchConfig.ReplaceOrgSchedule!=0);
-- 
-+  if (strcmp(Id, "MainMenuHooksPatch-v1.0::osSchedule") == 0 && EPGSearchConfig.ReplaceOrgSchedule!=0) 
-+  {
-+    if (Data == NULL)
-+      return true;
-+    cOsdMenu **menu = (cOsdMenu**) Data;
-+    if (menu)
-+      *menu = (cOsdMenu*) MainMenuAction();
-+    return true;
-+  }
-+
-   if (strcmp(Id, "Epgsearch-search-v1.0") == 0) {
-      if (Data == NULL)
-         return true;




More information about the pkg-vdr-dvb-changes mailing list