Current Item setzen

  • Hallo!
    In meinem hddarchive Plugin biete ich eine Service Schnittstelle an, um Aufnahmen über das
    Plugin abspielen zu lassen. Das ist vor allem, damit es sich besser ins originale Aufzeichnungs-
    menü integrieren kann. Dabei verwende ich die Methode SetCurrent, da mein Plugin mit
    cMyMenuRecordingItem arbeitet, das originale Menü aber cMenuRecordingItem liefert.
    Der Player fragt ja vorher Get(Current() ab.


    Die SetCurrent Methode sieht so aus:

    Code
    void cMyMenuRecordings::SetCurrent(cOsdItem *Item, bool IsPluginReplay)
    {
       cOsdMenu::SetCurrent(Item);
       isPluginReplay = IsPluginReplay;
    }


    cMenuRecordings::Play sieht gepatcht so aus:


    Das funktioniert jedoch nur, wenn die Aufnahme im Root des Videoverzeichnisses
    ist, aber nicht, wenn sie in einem Unterordner ist.
    cRecordingMenuItem::Name ist dann plötzlich der des ersten Unterordners.
    Auch durch debuggen konnte ich das Problem noch nicht lösen. Ich vermute, es liegt
    am setzen des CurrentItem.
    Hat jemand eine Idee, wo mein Fehler liegt?
    Der ganze Code liegt im vdr-developer git.

  • Nach ewigen Debuggen konnte ich meinen Fehler nicht finden.
    Ich bin jetzt einfach noch eine Ebene tiefer gegangen. Ich arbeite
    jetzt direkt mit cRecodring und nicht mehr mit dem Item.
    Ausserdem hat das meinen Code stark vereinfacht.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!