Anzeige von cOsdObject aus einem cOsdMenu

  • Hi,


    ich stehe mal wieder komplett auf dem Schlauch.


    Ein cOsdObject (kein Menu) kann ich aus der MainMenuAction im Plugin zurückgeben und es wird angezeigt: MainMenuAction -> cOsdObject.

    Nur jetzt sieht die Kette so aus: MainMenuAction -> Menu -> cOsdObject. Das cOsdObject wird auch konstruiert und scheint auch etwas zu machen, nur wird es nicht dargestellt. Es bleibt nur das SubMenu stehen.


    Gibt es da einen Trick? Was übersehe ich (schon wieder)?


    Zabrimus

  • Ich hab da auch schon länger nichts gemacht. Musst du vielleicht per cOsdProvider::NewOsd etwas machen? Ich stand mit dem OSD schon immer irgendwie auf dem Kriegsfuß...

  • Ja genau das ist Idee: Ich wähle in einem Menu einen Eintrag aus, das Menu wird geschlossen und ein reines cOsdObject soll dargestellt werden.

    Das cOsdObject funktioniert einwandfrei, wenn ich es aus dem Hauptmenu des Plugins aufrufe, aber bisher habe ich es nicht geschafft, es aus einem Untermenu heraus darzustellen.


    In ProcessKey wird nach einem kOk das cOsdObject zusammengeschraubt und dann soll es dargestellt werden. Irgendwas muss ich übersehen. Ist der Usecase so ungewöhnlich?


    Zabrimus

  • Hmm... Ich habe eine Idee, die ich noch weiter verfolgen muss.


    Wenn ich in ProcessKey ein osPlugin zurückgebe (statt z.B. osContinue oder osEnd), dann wird MainMenuAction neu aufgerufen und ich kann entweder ein cMenu oder ein cOsdObject zurückgeben.


    Das Problem ist jetzt nur, daß ich im Plugin noch irgendwie die Objekte verwalten muss (incl. delete) und den aktuellen Status.

    Es scheint, als müsste ich den PluginManager bemühen und dem eigenen Plugin Nachrichten über Service senden.


    Das werde ich noch genauer untersuchen müssen.


    Zabrimus