[RFC] plugins replacing main menu entries 1-4

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Christian Wieninger wrote:
> 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;

The Service() interface is probably the wrong interface for such things. 
VDR shouldn't rely on this interface, its primarily for non-standard 
communication.

Also, your suggestion will call MainMenuAction for each menu entry, how 
should the plugin know which one was called?

On the other hand, the current menu scheme needs an overhaul anyway, as 
the main menu is flooded with plugin entries. Such a customized main 
menu could easily hide the schedule/channels/timers/recordings menu, or 
move the default entries somewhere else. Plugin main menu entries could 
take over their place.

What about this one: Add an interface that allows a plugin to catch this:

   Menu = new cMenuMain;

... and either create an own main menu, or modify the existing one. 
(several plugins should be able to do some modifications one after the 
other)


Cheers,

Udo


[Index of Archives]     [Linux Media]     [Asterisk]     [DCCP]     [Netdev]     [Xorg]     [Util Linux NG]     [Xfree86]     [Big List of Linux Books]     [Fedora Users]     [Fedora Women]     [ALSA Devel]     [Linux USB]

  Powered by Linux