Hi Klaus, meanwhile there are many plugins, that could be used as a replacement for some of VDR's main menu entries, like "schedule" or "channels". Please don't get me wrong, you've done a great job, but some plugin authors too ;-) And if the user likes to use a plugin instead of the builtin function, why not? A real replacement currently can only be done when patching VDR, so what do you think about the following change of the MenuMain constructor in menu.c? : ... cPlugin *p = NULL; switch (State) { case osSchedule: p = CallFirstService("schedule"); AddSubMenu(p?(cOsdMenu *)p->MainMenuAction():new cMenuSchedule); break; case osChannels: p = CallFirstService("channels"); AddSubMenu(p?(cOsdMenu *)p->MainMenuAction():new cMenuChannels); break; case osTimers: p = CallFirstService("timers"); AddSubMenu(p?(cOsdMenu *)p->MainMenuAction():new cMenuTimers); break; case osRecordings: p = CallFirstService("recordings"); AddSubMenu(p?(cOsdMenu *)p->MainMenuAction():new cMenuRecordings(NULL, 0, true)); break; ... a plugin could implement a service like "schedule" that only signals that it offers this functionality. If so, VDR would call this plugin instead of the builtin menus. Christian