Skinning-Frage

  • Also wie müsste ich das ganze jetzt ändern?

    Hey,

    ich hab noch keine Ahnung wie herum es du nun haben willst;)..
    Ein Panel ansich ist eigentlich in zeilen und spalten aufgeteilt, wobei dein item und focusedlayout eigentlich nur den inhalt einer Zeile oder Spalte enthalten soll.
    Je nach Ausrichtung und Inhalt wird das dann vertikal oder Horizontal an deine container breite und höhe damit gefüllt..
    Also Beispiel:

    Ein orientation horizontal panel mit layouthöhe und inhalt 300 in einer containerhöhe von 900 ergibt 3 zeilen mit dem selben layout drin das du vorgibst..
    Wie mir scheint versucht du aber das alles in eins zu pressen?

    Kopier ich das in den Silvio, und füge mal Serien als content ein damit was da ist und xxx als text bekomme ich das so angezeigt mit deinem layout..

    Externer Inhalt up.picr.de
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.

    Du willst doch jetzt quasi 3 Einträge in jeder Zeile oder?
    wenn die dann horizontal angezeigt werden sollen wäre panelhöhe für zeile 1 = Gesamthöhe des Containers und breite 1/3 der Gesamtbreite..
    Da muss item und focusedlayout rein.. Kodi macht dir dann mit horizontaler ausrichtung 3 nebeneinander..

    Dann bräüchtest separate panels und conts für jede Zeile die du habe willst.

    Das Auffüllen über mehrere Spalten wird bestimmt nicht gehen oder? Dazu müsstest ja immer 3 Einträge fix haben pro Tag damit die ersten 3 die zweiten drei "verdrängen"
    und die dann in zeile 2 kommen können (bei doppelter Panelhöhe im Vergleich zu der layouthöhe im Panel)..

    Ich denk das müsstest erst mal entscheiden.. Vertikaler content, mit item1 Tag1, item1 Tag2 usw..
    oder Horizontaler content mit Tag1 noch einer mit Tag 2..
    nachdem würde sich dann dein Layout richten und deine Panels dafür..

    Kannst mir nicht das Addon so schicken und eine Datenbank dazu? dann müsste das doch gehen oder?
    Dann schau ich heut Abend oder Morgen mal..

    Grüße

  • ich hab noch keine Ahnung wie herum es du nun haben willst;)..
    Ein Panel ansich ist eigentlich in zeilen und spalten aufgeteilt, wobei dein item und focusedlayout eigentlich nur den inhalt einer Zeile oder Spalte enthalten soll.
    Je nach Ausrichtung und Inhalt wird das dann vertikal oder Horizontal an deine container breite und höhe damit gefüllt..


    also: ich würde gern auf der linken Seite das Datum haben wollen mit der Anzahl an "itemS" für dieses Datum...

    Externer Inhalt i.imgur.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.


    Dann bräüchtest separate panels und conts für jede Zeile die du habe willst.


    also müste ich bei der Content-Abfrage das Datum als wert übergeben so das dieser dan für jede Zeile geholt wird...


    Vertikaler content, mit item1 Tag1, item1 Tag2 usw..
    oder Horizontaler content mit Tag1 noch einer mit Tag 2..

    dann müsste es horizontaler Content sein...


    Kannst mir nicht das Addon so schicken und eine Datenbank dazu? dann müsste das doch gehen oder?

    die Datenbank baut er ja alleine auf... aber ich häng mal die Änderung fer default.py an...

  • Hey,

    Ich versuchs die tage mal.. dachte nur falls er ohne EPG da nicht wirklich viel findet bei mir mit meinen paar sendern;)..

    dann müsste es horizontaler Content sein...

    Das was jetzt auf dem Bild hast ist dann ein Eintrag, sprich eine spalte.. breiterer container macht dir eine spalte rechts davon solange bis die breite
    erreicht ist die im container angegeben wurde.

    ist halt nicht unbeding der klassische Tabellarische Aufbau, deswegen verwirrt es mich ein wenig;)..

    Zeilen mit Datum erwartet man da eher eine Zeile für jeden Eintrag daneben.

    Externer Inhalt up.picr.de
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.

    ist aber Ansichtssache.. so gesehen macht es schon sinn so..

    Grüße

  • so, ich habe ein par neue Erkenntnisse gewonnen...

    ein Problem war das der dynamic content mei den Datums nicht funktioniert... wenn ich einen dynamic content setze kann ich <onright condition="Container(9000).HasFocus(1)">200</onright> nit mehr nutzen.

    also habe ich meinen Content umgebaut:

    die items habe ich dann in den container eingebaut:



    Aber ich die Ladel $INFO[ListItem.Labe] und $INFO[ListItem.Labe2] nicht aufrufen...
    sie werden einfach nicht angezeigt...

    Odroid N2+ 4GB 16GB eMMC CE
    TVHeadend Server/Client

  • leider noch nicht dazu gekommen.. Abends ist es einfach zu Heiß um unters Dach zu sitzen;)..

    Hast es ohne das visibles versucht?
    Container(9000).HasFocus(1) wäre das item mit der id1.. hast dein panel auf allowhiddenfocus im visible?
    Dann musst aber in der Regel mit SetFocus(200) arbeiten.
    Ist was unsichtbar muss man es mit SetFocus ansprechen..

    Zwar Abwägig, aber wenn dein onright im selben container ist wie der inhalt, versuchs mal ohne ID (9000).
    Im selben container soltle es zwar egal sein, aber wer weiß..

    Grüße

  • naja, <onright> funktioniert ja seit dem ich den content vom Container(9000)auf statischen content umgestellt habe.
    das Problem ist jetzt nur das der Inhalt also die ListItems aus dem Container(9000) nicht angezeigt werden...
    die Felder im Skin bleiben einfach leer...

    Odroid N2+ 4GB 16GB eMMC CE
    TVHeadend Server/Client

  • scheint dann aber ein content problem oder?
    wenn sie außerhalb in einem controllabel nicht kommen dann muss ja was am content sein.
    Ich mache in solchen Fällen auch öfters mal ein xxx irgendwo in den content um zu sehen ob das kommt und vielleicht dann was mit dem property datum nicht in ordnung ist.
    Oder Entferne ein visible im item um zu sehen ob es daran liegt..

    Grüße

  • scheint dann aber ein content problem oder?
    wenn sie außerhalb in einem controllabel nicht kommen dann muss ja was am content sein.

    also im Controllabel außerhalb des Container wird es angezeigt...


    Ich mache in solchen Fällen auch öfters mal ein xxx irgendwo in den content um zu sehen ob das kommt und vielleicht dann was mit dem property datum nicht in ordnung ist.

    Das habe ich jetzt auch gemacht. Und das XXX wird nicht angezeigt. also scheint der content innerhalb des Container(9000) nicht anzukommen...

    der <content>  steht innerhalb der <control type="list" id="9000"> direkt nach dem </focusedlayout>

    Odroid N2+ 4GB 16GB eMMC CE
    TVHeadend Server/Client

  • ich habe jetzt mal das Infofenster ganz einfach aufgebaut...
    nur 3 Items die in der Liste id="9000" sind.

    den content habe ich auch ganz einfach gestaltet nur Label und Label2

    Aber es wird nichts angezeigt obwohl der Content fest definiert ist der muss von nirgens geholt werden...
    also schließe ich daraus, mit der Liste id="9000" stimmt was nicht....

    Odroid N2+ 4GB 16GB eMMC CE
    TVHeadend Server/Client

  • Ich kopier es heut abend mal in den Silvio.. Sieht alles gut aus. merkwürdig..

    Außer vielleicht du hast wasd drüberliegen?

    Die
    <include>SystemRightPanel</include>
    vielleicht ohne einen linken Abstand darin und sonst in einer gruppe mit einem left in der group?

    Der Content ansich muss eigentlich kommen, außer es fehlt im was wie Textfarbe, Schrift oder sonst was.

    Grüße

  • Aber es wird nichts angezeigt obwohl der Content fest definiert ist der muss von nirgens geholt werden...

    Hey,

    Ist nur ne kleinigkeit, die man wissen (und dran denken muss).
    Auf den ersten Blick hab ichs nur nicht gesehen;)..
    Items brauchen zwingend ein <onclick> wenn es eine selbst definierte liste ist.
    Offenbar ist er da jetzt rigoroser in Krypton. Gibt es keinen click brauchst ein <onclick>noop</onclick>

    für den befehl "nichts tun beim klick" in Kodi. Dann kommt alles.


    Grüße

  • Items brauchen zwingend ein <onclick> wenn es eine selbst definierte liste ist.


    das war es... mit dem <onclick> in den Items funktioniert es nun...

    Eins ist mir noch aufgefallen,
    ich dachte das die Items $INFO[Window(Home).Property(TV-Guide.0.Date) und $INFO[Window(Home).Property(TV-Guide.0.Wday)] wären auch in den einzelnen container
    erreichbar aber irgendwie klappt das nicht.
    ich wollte mir im container(200) nur Items anzeigen lassen bei den
    $ListItem.Property(Datum) = gleich dem $INFO[Window(Home).Property(TV-Guide.0.Date) ist.... <visible>StringCompare(ListItem.Property(Datum),Window(Home).Property(TV-Guide.0.Date))</visible>


    das klappt aber irgendwie nicht....

    Odroid N2+ 4GB 16GB eMMC CE
    TVHeadend Server/Client

  • das klappt aber irgendwie nicht....

    ja, das kann hochkomplex sein;)..

    Versuchs mal umzudrehen mit Substring und/oder INFO dabei..
    So eine wirkliche übersicht gibts ja leider nicht, immer nur so häppchen..

    In der Tat scheint es so zu sein das beim stringcompare der erste Wert wenn er mit INFO aufgerufen wird in einen Constanten String umgewandelt wird.
    Bei Substring aber nicht.. Sprich, da listenelemente ja on to fly immer wechseln, treffen bei stringcompare die vergleiche damit dann nicht zu innerhalb einer liste,
    da der gesetzte wert schon beim Fensterladen quasi festgesetzt wird.
    Das und noch mehr so Eigenheiten hast bei Substring weniger, aber so ne richtig Regel weiß ichleider auch nicht.
    Mal gehts so, mal anders..

    Ich würde mich aber eher mal an die neuen Gewöhnen.. Die alten conditions werden soweit ich weiß mit der nächsten Version nach Krypton entfernt..

    Grüße

  • Versuchs mal umzudrehen mit Substring und/oder INFO dabei..
    So eine wirkliche übersicht gibts ja leider nicht, immer nur so häppchen..

    wie genau meinst Du das mit dem umdrehen?

    <visible>StringCompare(Window(Home).Property(TV-Guide.0.Date),INFO(ListItem.Property(Datum)))</visible>

    Odroid N2+ 4GB 16GB eMMC CE
    TVHeadend Server/Client

  • Code
    <visible>String.IsEqual(Window(Home).Property(TV-Guide.0.Date),$INFO[ListItem.Property(Datum)])</visible>
    <visible>String.IsEqual($INFO[Window(Home).Property(TV-Guide.0.Date)],$INFO[ListItem.Property(Datum)])</visible>
    <visible>String.IsEqual($INFO[Window(Home).Property(TV-Guide.0.Date)],ListItem.Property(Datum))</visible>
    <visible>String.Contains($INFO[Window(Home).Property(TV-Guide.0.Date)],ListItem.Property(Datum))</visible>
    <visible>String.Contains(Window(Home).Property(TV-Guide.0.Date),ListItem.Property(Datum))</visible>

    kann aber sein es scheitert schon am window(home)..
    bin mir nicht sicher ob alle propertys ind listen immer gehen.. Die Infos aus dem Setinfo Script z.B. gehen auch immer nur außerhalb von containern..

    Schreibweise mit INFO ist immer auch so wie in einem Label.. $INFO[xxx]..
    Vergleiche sind immer Art des Vergleiches(Wert1,Wert2)..
    Wenn also mit INFO dann auch eckiger klammer.. damit Kodi weiß es ist eine, genauso bei LOCALIZE..

    So ganz hab ichs allerding noch nicht verstanden warum das brauchst?
    Kannst da nicht einfach mit Container(xxx) außerhalb die Werte aus dem Container holen, die ja dann sowieso nur da sind wenn das nicht leer ist?
    Also $INFO[Container(xxx).ListItem.Property(Datum)] mit einem visible String.IsEmpty().. Das wäre dann doch dasselbe wenn das eine Property eh gleich sein soll
    wie das andere und nur dann angzeigt wird wenns wahr ist.
    Will dich aber nicht noch zusätzlich verwirren;)..

    Grüße

  • Ich teste mal die Varianten durch...


    So ganz hab ichs allerding noch nicht verstanden warum das brauchst?
    Kannst da nicht einfach mit Container(xxx) außerhalb die Werte aus dem Container holen, die ja dann sowieso nur da sind wenn das nicht leer ist?

    der Content ist im Grunde für alle container (200) bis (214) gleich, da er nur einmal für alle geholt wird...

    Damit aber nun nur die Items zu dem dazugehörigen Datum angezeit werden wollte ich das datum aus dem Container(9000) mit dem Datum der Items aus den Container 200 -214 abgleichen...

    Somit würden immer die richtigen Sendungen (items) angezeigt...

    Odroid N2+ 4GB 16GB eMMC CE
    TVHeadend Server/Client

Jetzt mitmachen!

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