epgsearch: Kleine Änderung Löschen aus Timeredit Menü

  • Also ehrlich gesagt, bin ich über den Bug auch nur deswegen gestoßen, weil ich mein Theme für nopacity und tvguide ausprobiert habe und dabei jede Menge unsinnige Timer angelegt und wieder gelöscht habegesehen habe. Wenn ich in der Timer Ansicht sowieso schon bin, dann kann ich auch mit Gelb löschen (ja, das ist auch bei epgsearch noch Löschen).


    Das Löschen aus dem epgsearch eigenem TimerEditMenü nutze ich sehr oft, wenn ich die Timer in der Programmansicht editiere. Da kommt es öfters mal vor, dass ich einen Timer wieder löschen will. Dann finde ich es umständlich extra erst ins Timers Menü zu gehen, diesen wieder rauszusuchen und anschließend zu löschen. Das Löschen macht hier also absolut Sinn.


    Von mir aus könnte man es auch so ändern, dass der Löschen Button nur angezeigt wird, wenn das Menü nicht aus der Timers Übersicht angezeigt wird. Was im Endeffekt dieselbe Problematik hat. Wie kann man an dieser Stelle des Codes herausfinden aus welchem Menü man aufgerufen wurde?

  • Ah, ich hab das wohl mit der anderen Belegung der gelben Taste im Aufnahmenmenü von extrecmenu verwechselt. Da muss man zum Löschen ja gelb-gelb-ok drücken...


    Lars.

  • Hi,


    Ramirez : Kannst Du bitte hier mal Deine menu.c vom VDR reinhängen? Die dürfte ja mit vdr.epgsearch-exttimeredit-0.0.2.diff gepatched sein.
    Ich frag nur, weil es dort nämlich eigentlich durchaus Tests gäbe, die gelöschte Timer abfangen.


    Davon unabhängig sollte es aber eigentlich schon klappen dem Konstruktor die Info mitzugeben. Der Patch von oben ruft das TimerEditMenü von epgsearch über das Service-Interface auf, d.h. wenn man in epgsearch.c in Zeile 257 die Info mitgibt sollte das schon reichen. Ich vermute, dass sonst niemand das TimerEditMenü über das Service-Interface ruft. Zur Not kann man da ja noch was feilen. Vielleicht kannst Du das ja mal in Deinem bisherigen Patch testen.


    kls : O-Ton ML
    "There may be a plugin interface later that can do things
    like this, but until then this is not recommended ;-)"
    Das war 2004, vielleicht kommt das Interface ja doch noch ;)
    Aber ich weiß, gibt wichtigeres.


    Gruß,
    winni

  • Ich verwende yaVDR und da kommt der Patch einfach mit.


    Ein apt-get source vdr liefert als Ausgabe unter anderem:

    Code
    1. ...
    2. dpkg-source: Information: opt-67_epgsearch-exttimeredit-0.0.2.patch wird angewandt
    3. ...


    Sicherheitshalber habe ich sie auch mal angehängt.


    Ich habe die von Dir skizzierte Lösung mal umgesetzt und den Konstruktor von

    Code
    1. cMenuMyEditTimer(cTimer *Timer, bool New, const cEvent* event, const cChannel* forcechannel=NULL);

    nach

    Code
    1. cMenuMyEditTimer(cTimer *Timer, bool New, bool returnToTimersAfterDeletion, const cEvent* event, const cChannel* forcechannel=NULL);

    geändert und in Folge dessen an der von Dir genannten Stelle true und an allen anderen Stellen false reingereicht.
    Damit kann nun an der betreffenden Stelle wahlweise den passenden Wert zurückgeben.


    Sieht alles mehr nach Hack aus, aber es funktioniert wie erwartet ohne Absturz :tup


    Der Effekt ist wie erwartet etwas unschön, da er nun aus Benutzersicht nach dem Löschen immer auf den ersten Timer springt. Aber damit kann ich leben, denn
    a) wie bereits erwähnt, löscht selten jemand über diesen weg
    b) mir war wichtig, das niemand hier im Haus durch rumklicken einen Absturz erzeugen kann

  • Ach, da muss es noch einen Patch geben, und ich hab immer im Original epgsearch gesucht und mich gefragt, wo denn wohl das TimerEditMenü herkommt... :)


    Lars.

  • Ach, da muss es noch einen Patch geben, und ich hab immer im Original epgsearch gesucht und mich gefragt, wo denn wohl das TimerEditMenü herkommt... :)


    Moin
    du hattest den Patch damals auf meine Bitte in yavdr aufgenommen Lars, es ging doch darum vom epgsearch aus in den Timer zu gehen und dort dort die Möglichkeit des Löschens zu haben?


    Christian

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    CKthree: yavdr-ansible/22.04 LTS/2.6.1/kodi19.3 auf Intel NUC, Celeron J4005, UHD Graphics 600, 4GB Crucial DDR4, Ocz Vertex2 50 GB, Harmony 350

    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5



  • Das kann natürlich sein, aber ich hätte erwartet, dass irgendwo erwähnt wird, dass nicht das Original-epgsearch benutzt wird.
    Was weiß ich denn, was ich für Patches in die hunderte von Paketen einbaue... :)


    Lars.

  • nein das Patch ist in vdr selber, nicht in epgssearch - ist das nicht mehr drin?

    CKone: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G540, 2x 2GB Kingston DDR3, Zotac GT630 1GB, S2-1600, Ocz Agility 3 60GB, LG GH24NS DVD, 15.6" Selbstbau TFT, Harmony 665, CIR Selbstbau - das Ganze im Silverstone SST-SG03B
    CKtwo: yavdr-ansible/18.04 LTS/2.4.1/kodi18 auf Intel DH67BL, Intel Celeron G1610, 2x 2GB Corsair DDR3, Zotac GT630 1GB, TT S2-1600, Ocz Vertex 2 50 GB, 92 Kanal Seduatmo, Harmony 665, atric USB
    CKthree: yavdr-ansible/22.04 LTS/2.6.1/kodi19.3 auf Intel NUC, Celeron J4005, UHD Graphics 600, 4GB Crucial DDR4, Ocz Vertex2 50 GB, Harmony 350

    PowerEdge: Ubuntu Server 16.04 LTS / VDR 2.4.1 auf Dell PowerEdge T20, Xeon E3-1225 v3, 16GB ECC DDR3, 2x Cine S2 V6 mit Duoflex, Samsung 840 EVO 120GB, 3x WD White WD80EZAZ 8TB in SW Raid5



  • Ok - Danke!
    Ich häng den neuen Parameter dann einfach ans Ende im Konstruktor mit default false, dann ist nur die eine Stelle zu ändern.


    Gruß,
    winni

    Das habe ich mir auch überlegt, aber weil der momentan letzte Parameter bereits einen default Wert hat, habe ich mir das nicht getraut. Ich bin ja kein C++ Entwickler und weiß nicht, ob es eine Syntax für "default wert aus Definition übernehmen" gibt. Klar könnte man einfach die NULL abschreiben, aber hier kommt wohl zu sehr der Informatiker durch ;D