Beiträge von Marc0810

    Ich meine Kodi 18 hat Staffeltitel bekommen, zumindest hab ich was gelesen von contextmenü Umbenennen für Staffeltitel.
    Ich nutze aber noch kein 18..

    Skins können nur das Darstellen was ListItems hat, die von Kodi generiert werden - egal ob mehr in der nfo steht.Selbst die Tags wie Genre, TvShowtitel kommen nicht mal aus den Episoden sondern Übergeortnet aus der Serie in der sie enthalten sind
    - das musste ich erst letztens Festellen als ich verzweifelt versucht hab eine Crossoverfolge einer anderen Serie als Special einzufügen.
    Egal was in der nfo steht es wird ignoriert.

    Ein guter Ansatz was geht sind die Datenbankfelder und das Skinning manual
    https://kodi.wiki/view/Databases/MyVideos#seasons
    https://kodi.wiki/view/Skinning_Manual#ListItem_2

    Da dort in der Seasontable kein Plotfeld ist gibts auch keinen würde ich Annehmen.

    Persönlich finde ich es auch unnötig bei 90% der Serien. Wichtiger wäre mir da Actors auf die Staffel bezogen
    damit bei langen Serien nicht ständig einer Dabeisteht der nur eine von 20 Staffeln dabei war.

    Grüße

    Hey,

    Und bedeutend einfacher als deine Versuche ;) .

    Dann würde ich das zweite nutzen - Text ist ja perse wenn er Empt ist schon invisible (außer man nutzt fallbacktext wie
    "keine Handlung verfügbar"). aber dein Hintergrund kommt sonst bei jedem Set, auch wenn der Plot mal fehlen sollte weil er unnötig ist oder man sich die Mühe nicht machen
    will für eigene Sets was zu "Erfinden".

    Dein restlicher Code sieht auch noch etwas durcheinander aus, aber die Hauptsache ist ja das die Anzeige stimmt für dich.

    Ich kenne natürlich nicht die Anzeige oder deinen ganzen Code aber so kommen doch Case und das kleine Seticon nur unter Filme und nicht in Zusammenstellungen alleine.IsCollection hat gerade den Vorteil das man damit beides Abfrühstücken kann - Sets unter Filme und nur Sets alleine.


    Wenn es so gemeint ist dann sollte das hier besser passen.
    Nur habe ich nicht den ganzen Code oder den Skin angesehen - käme die View auch bei Addoncontent würde einiges fehlen - da macht ja ein Movieset Case als fallback keinen Sinn.

    Grüße

    ListItem.IsCollection ist ein bool das true oder false zurückwirft. ListItem.IsCollection wäre true, !ListItem.IsCollection für alles was fals ist (movies usw..).
    Einzelne Sets Abfragen ginge bestimmt wenn man in diesem Fall ListItem.Title vergleicht mit einem fixem Wert, das kann aber global nicht funktionieren
    (ein Skinner weiß ja nicht wie deine Sets heißen).

    Im Prinzip geht man da eher von der Premisse aus wenn Plot nicht leer und EIntrag Set, dann anzeigen.
    Damit läuft das dann für alle Sets bei denen man sich die Mühe machen will und Plots einträgt.

    <visible>ListItem.IsCollection + !String.IsEmpty(ListItem.Plot)</visible> wäre jetzt EIntrag ist Set und Plot ist nicht leer.

    Ich denke das suchst du.

    Der Rest ist alles etwas kompliziert weil ich jetzt nicht ganz kapiere ob es nur bei Sets kommen soll oder Filme wenn du "<!-- Plot wird für Filme und Movie Set(s) nicht angezeigt :( -->" schreibst.
    Wenn es für weitere Contents kommen soll kann man das mit eckigen Klammern Erweitern in der Art
    <visible>[ListItem.IsCollection | Container.Content(movies)] + !String.IsEmpty(ListItem.Plot)</visible>
    Das ist dann die Kurzform für ListItem.IsCollection + !String.IsEmpty(ListItem.Plot) | Container.Content(movies) + !String.IsEmpty(ListItem.Plot)

    Ich finde das wikki da etwas Abstrakt

    https://kodi.wiki/view/Conditional_visibility


    ! = nicht

    + = und

    | = oder


    mit !Container.Content(Movies) in der VAR kommt es klar nicht bei Filmen - heißt ja Übersetzt "wenn Inhalt nicht Filme"


    Grüße

    Hey,

    Eigentlich mindestens die includes.. Das kommt einfach daher das die vorhandenen "Widgetlayouts" alle eher für content provider ausgelegt sind.
    Includes in Kodi müssen leider in "geschlossenen" Tags aufgebaut sein. Als Beispiel:
    Ein Container mit Layout und Inhalt kann nicht ohne Inhalt als reines Layout dienen das man mehrfach nutzen kann.
    Dazu müsste man dann den "Inhalt" wieder einzeln als Include per Parameter zuweisen. Das mach aber Estuary nicht weil so gut wie alles außer Wetter (was sowieso ein anderes Layout hat), auf Pfaden beruht.
    Es ist auch einfacher und nicht noch mehr Verzweigt, dadurch eigenen sich aber die Includes die es gibt nicht mehr für "Festen Content".

    Der Skin nutzt ja Pfade: <content sortby="$PARAM[sortby]" sortorder="$PARAM[sortorder]" target="$PARAM[widget_target]" limit="$PARAM[widget_limit]">$PARAM[content_path]</content>
    und weißt dann in der Home das passende zu

    Code
    <param name="content_path" value="addons://sources/executable/"/>
    							<param name="widget_header" value="$LOCALIZE[1043]"/>
    							<param name="widget_target" value="programs"/>
    							<param name="sortby" value="lastused"/>
    							<param name="sortorder" value="descending"/>

    Da aber im Include WidgetListSquare dann der content schon fix verbaut ist, bekommst da deinen nicht mehr rein - du hast ja keine Pfade sondern x Items die einzeln vorhanden sind.
    Also hilft nur ohne alles Umzubauen ein eigenes include oder den code direkt in der Home.xml falls das einfacher ist für dich:

    Diese group muss als widget unter die vorhandenen in <control type="group" id="2000">


    Und der Menüeintrag unter <control type="fixedlist" id="9000">

    Code
    <item>
    							<label>Meine Addons</label>
    							<property name="menu_id">$NUMBER[18000]</property>
    							<onclick>ActivateWindow(1100)</onclick>
    							<thumb>icons/sidemenu/addons.png</thumb>
    							<property name="id">Customaddons</property>
    						</item>

    Dann sollte schon mal was kommen.. wie und wo dieser Scrollbar kommt hab ich nicht verfolgt, nur stur kopiert;)..
    Deine Einträge aus der favourites.xml kannst dann eigentlich direkt so reinkoieren - klappt bei mir..

    Code
    <item id="30">
    									<label>3sat Mediathek</label>
    									<icon>C:\Program Files (x86)\Kodi18\portable_data\addons\plugin.video.3satmediathek\icon.png</icon>
    									<onclick>RunAddon(plugin.video.3satmediathek)</onclick>
    								</item>


    rest wäre dann nur noch Kosmetik - ob jetzt nach rechts gescrollt werden soll oder nach unten, je nachdem wieviele Einträge man hat..

    Aber besser vorher die XML Datei kopieren zum sichern - der Grundcode stammt aus einer alten Kodi 18 Nightlty;).. Bin da gerade nicht so auf dem laufenden mangels Zeit.

    Grüße

    Hey,

    Da musst du wohl den MOD nutzen. Skintechnisch ist das recht aufwendig selbst mit "fixen Einträgen" im Skincode.
    Du brauchst ja nicht nur einen neuen Home Eintrag sondern auch deine Favoriteneinträge als Widget.

    Wenn es noch auswählbar sein soll dann braucht man dazu natürlich auch ein Settingsmenü dafür mit einer Auswahlmöglichkeit für jeden Widgetplatz,
    eins zum entfernen vorhandener Einträge usw..

    Das wären schon "recht große" Umbauten die ohne Einlesen nicht so schnell Umsetzbar sind.

    Der Befehl ansich ist aber möglich mit <onclick>Skin.SetAddon(AddonList.1.ID,xbmc.addon.video,xbmc.addon.executable,xbmc.addon.audio,xbmc.addon.image)</onclick>

    Widgeteintrag wäre dann ein "manueller content" mit Einträgen wie:

    Code
    <content>
    				<item id="30">
    					<label>$INFO[system.addontitle(Skin.String(AddonList.1.ID))]</label>
    					<icon>$INFO[System.AddonIcon(Skin.string(AddonList.1.ID))]</icon>
    					<onclick>Dialog.close(all)</onclick>
    					<onclick>RunAddon($INFO[Skin.String(AddonList.1.ID)])</onclick>
    					<visible>!String.IsEmpty(Skin.String(AddonList.1.ID))</visible>
    				</item>

    Aber dazu brauchst dann ein Menü zur Auswahl oder die Anzeigt leerer Plätze im Widget, den Menüeintrag und evtl. noch (so gut kenne ich den Skincode nicht) noch Anpassung vorhandener Animation oder visibles die sich auf ID´s und Widgets beziehen.

    Also schon etwas an Mehrarbeit..

    Grüße

    in den Schnittpunkten mit einem spitzen Messer einstechen und die gefrorenen Speckstreifen einbringen

    https://www.amazon.de/K%C3%BCchenprofi-0924052800-Spicknadel-Edelstahl-silber/dp/B00JG0O8VM/ref=sr_1_2?ie=UTF8&qid=1525595908&sr=8-2&keywords=spicknadel&tag=kodinerds04-21 [Anzeige]

    Für so etwas kannst mal nach Spicknadeln schauen - das erleichtert einem das ganze wenn der grüne Speck schön gleichmäßig
    geschnitten ist. Früher wurde das viel gemacht in klassischen Küchen als man noch Gerichte eher in "Bratenform" anbietete.
    Heutzutage ist ja vieles auf Kurzbratgerichte ausgerichtet.

    Sowas wie gespickter Rehrücken z.B. findet man ja kaum noch außer in den privaten Küchen.

    Grüße

    Die Action Fullscreen liegt Standardmäßig auch auf der TAB Taste - da ja auch nach der Tastenkombination gefragt wurde.
    Mappen auf eine Taste ist aber auch eine Option weil das dann ebenfalls global geht.

    Pause beim Verlassen des Fullscreen könnte man sicher auch irgendwie noch Einbauen (noch nie versucht) - das wäre aber Skinbedingt in den XML Dateien,
    was wiederrum bei jedem Update des Skins nachgepflegt werden müsste.

    Grüße

    Ich kenne den skin nicht, aber 1 scheint das ein Nebeneffeckt des Code zu sein was so gar nicht Einstellbar ist (das zweite klingt nach einem fehlednen Button den er einfach nicht braucht).
    Das müsstest beides beim Skinersteller Anfragen, wobei 1 eher Geschmackssache ist was dort kommt. Zeigt er dort Momentan Datum an? sieht im Code danach aus, was ja wenig Sinn macht.

    Das könnte man relativ "schnell" ändern in dem man die variable ändert im Skincode.

    Code
    <variable name="LabelDuration">
            <value condition="stringcompare(Container.SortMethod,$LOCALIZE[20368])">$INFO[ListItem.Date]</value>
            <value condition="stringcompare(Container.SortMethod,$LOCALIZE[552])">$INFO[ListItem.Date]</value>
            <value condition="stringcompare(Container.SortMethod,$LOCALIZE[20074])">$INFO[ListItem.MPAA]</value>
            <value condition="stringcompare(Container.SortMethod,$LOCALIZE[570])">$INFO[ListItem.DateAdded]</value>
            <value condition="stringcompare(Container.SortMethod,$LOCALIZE[567])">$INFO[ListItem.PlayCount]</value>
            <value condition="!IsEmpty(ListItem.Duration)">$INFO[ListItem.Duration,, $LOCALIZE[31102]]</value>
            <value condition="[Container.Content(tvshows) + !Control.IsVisible(54) + !Control.IsVisible(555)] | Container.Content(episodes)">$VAR[LabelYear]</value>
    </variable>

    Eine Zeile mehr am Anfang <value condition="String.StartsWith(Container.Folderpath,videodb://recentlyadded) + !IsEmpty(ListItem.Duration)">$INFO[ListItem.Duration,, $LOCALIZE[31102]]</value>
    sollte dafür sorgen das bei Episoden und Filme wenn es sich um den Pfad "recently" handelt die Dauer dran steht wenn sie nicht leer ist.
    Das ist so ein Nebeneffeckt - er ermittelt die Sortierung und zeigt nach dieser verschiedene Texte an. Recently wird nach Date sortiert und fällte dann unter dasselbe value wie wenn man die Filmliste nach Datum sortiert.
    Da ist es ja gewollte das das Datum dann auch angezeigt wird damit man den Wert auch sieht. Bei Recently stehen dann aber unter Umständen 20 gleiche Texte drin..

    Grüße

    Die Art der EPS ist denen sehr wahrscheinlich egal, da die damit ja nur das Werkzeug füttern.

    Ich fand es etwas Merkwürdig - einerseits Professionell mit eps Workflow...
    aber nichts zum Farbraum der schon recht wichtig ist (RGB, CMYK, RAL...)
    bei EPS da man ja keine Profile einbetten kann in postscript sollte man schon den passenden Farbraum wissen um nicht Abweichungen bei der Konvertierung zu riskieren.
    Nichts zur minimalen Konturstärke was sicherlich wichtig sein dürfte bei Stickereien...
    Alles solche Dinge die man eigentlich allein schon der "Faulheit" wegen festlegt um Nachkorrekturzeit geringer zu halten.

    Egal, bin gespannt ob wir noch ein Bild vom Ergebnis bekommen;).

    Grüße

    wenn man fragt warum sein code nicht geht dann kann man dir nur helfen wenn du ihn auch mitteilst ;) .
    Ich weiß leider immer noch nicht um was es genau geht. Das Menü im Confluence ist ein Container, da geht kein auto width.

    Da kann man nur <itemlayout height="60" width="300"> und auch im focusedlayout breiter machen, dann noch das enthaltene label das für Text zuständig ist..
    Oder einfach einen kürzeren Text überlegen bzw. die Schrift etwas kleiner machen.

    Grüße

    Zur Not reicht ja auch ein Demo z.B. von Corel Draw.
    Aber um das Nachbauen in Vektoren wirst nicht drum herumkommen.

    Illustrator und Corel haben zwar Nachzeichnen Funktionen die aus Pixeln Vektoren machen kann, aber wirklich toll klappt das so gut wie nie.
    Da werden aus einer Kurve schnell mal 10 Strich mit Ecken.

    Wenns nicht zu Kompliziert ist kann ich dir das am Wochenende schnell Nachbauen.
    Auch wenn die Seite etwas mager ist was für ein eps:

    RGB oder CMYK, Postscript Level 2 oder 3, mit ISO Profilen oder ohne usw..

    Grüße

    Leider muss ich sagen, dass ich diese Ordnerstruktur, und demnach auch die XML, nich in meinem LibreElec habe. Vielleicht liegt das auch an dem Addon: Die genaue Bezeichnung lautet "Aeon.Nox.5".

    Hey,

    Ich hatte nur im Github geschaut.. skin.aeon.nox.5 sollte es sein. Wenn du den hast ist es ja schon mal gut.
    Skincode befindet sich in deinem Aeon NOX Pfad im Verzeichnis [url='https://github.com/BigNoid/Aeon-Nox/tree/master/1080i']1080i[/url]. Die Addon xml enthält nur die Beschreibung und dergleichen für die Anzeige in Programme und Addonbrowser.
    Der Skincode ist dann doch etwas mehr als die paar Zeilen;)..

    Ich schau mir das am Wochenende mal an wie das am besten lösbar wäre mit Grafiken und SKincode um auch einigermaßen Updatefähig zu sein.
    Darüber muss man sich klar sein: Bei jedem Skinupdet sind Änderungen weg da im Prinzip dabei immer eine neue Komplette zip Datei des Skins geladen und darüber entpackt wird.
    Die Einstellungen behält man dabei weil die nicht im Skin Verzeichnis gespeichert werden. Wobei auch das irgendwann kritisch wird da "alte Settings" die in der nächsten Version womöglich umbenannt oder gestrichen werden "stehen" bleiben. Ein "aufräumen und nicht mehr genutzte Entfernen" gibt es nicht.

    Grüße

    Gibt es da nicht ein "Fit to Object" Befehl? Oder war das nur umgekehrt, dass sich die Grafik an der Textbreite orientiert?

    Hey,

    In Buttons gibt es ein <width min="xx" max="yy">auto</width> min und max sind dabei optional um zu verhindern das Beispielsweise "OK" und "Grafik wählen" nebeneinander nicht ganz so merkwürdig aussieht.

    Ich bin mir aber nicht sicher ob das gemeint ist?
    control type="button" sind buttons.
    Ein Menü ist im Regelfall ein Container.

    In einem Container kontrolliert die Breite nicht der Inhalt sondern das layout "item" und "focus"
    Da gibt es nur "nicht focus = itemlayout" und "focus = focusedlayout". Es ist also nur eine bzw. zwei breiten verfügbar.
    Soll einer breiter werden, werden alle breiter.

    Buttons in einer grouplist scheiden als alternative eigentlich aus:
    Eine grouplist hat eine fixe breite, und es bewegt sich immer der focus. Würde ich eine groupliste verwenden die so breit wie die Anzeige ist, würde ein, wegen der breite auto "Angeschnittener Text" darunter "verschwinden" oder abgeschnitten wenn es dumm läuft.
    Man müsste also, will man fixen focus in der Mitte behalten, eine extreme breite wählen von z.B. 4000 pixeln und dann mit animation versuchen die liste mit zu bewegen wenn Navigiert wird.

    Und da kommt schon das Totschlag-argument: Um wieviel bei breite auto?.
    Zudem ruckelt sowas immer irgendwann mal oder macht probleme beim "back ins Home" da sich Kodi zwar den letzten Focus merkt aber nicht unbedingt die Animation funktioniert damit man wieder Bombensicher der Focus passt im Menü und der Position.

    Fazit ist also entweder alles breiter oder Schrift kleiner. Mehr Möglichkeiten hat man nicht.
    Und genau das ist auch der große Nachteil an horizontalen Menüs.
    Zumindest finde ich das die immer zu unübersichtlich sind.
    Man sieht zu wenig, weiß nie in welche Richtung man schneller am Ziel ist
    (kommt nun Programme rechts als nächstes oder muss ich dann 8 mal nach rechts drücken...).

    Grüße

    das klingt ja genau nach der Lösung die ich gesucht habe! Leider kann ich auf die Schnelle keine XML mit entsprechenden Einträgen finden. Hast du einen Tipp für mich, wo ich suchen muss?

    Hey,

    In den xml Dateien des Skins. Aeon-Nox/1080i/variables.xml
    Zumindest laut Github, kann ja je nach Version immer etwas abweichen.


    Dort kannst du dann das ListItem.IsStereoscopic rausnehmen, oder einfach mal davor eine Zeile Einfügen nach dem Muster von oben.
    <value condition="String.Contains(ListItem.filename,xxx)">dein 3D Text</value> je nachdem wie dein Dateiname heißt xxx und dein 3D text anpassen.

    Jetzt wirds schwieriger:

    Diesen Text verwendet der Skin dann für eine Grafik und "baut damit einen Pfad zusammen".

    <texture>$VAR[SourceFlagVar,flags/video/,.png]</texture>.

    Du musst danach dann im Ordner Media des skins, in entpackter xbt Grafikdatei ins Verzeichnis flags/video/ eine Grafik mit exakt demselben Namen
    "dein 3D Text" als png haben. Also in etwas flags/video/sbs.png für <value condition="String.Contains(ListItem.filename,SBS)">SBS</value>

    Danach dann xml Datei speichern und Skin Reload ausführen - legt man sich in der Regel auf eine Taste in der Remot xml - Neustart tut es auch zur not.

    Kompliziert, ich weiß, wenn aber keiner einen Skin kennt der es so kann, bleibt dir wohl nix übrig.

    Grüße

    Ich habe nach dieser Anleitung (über den Dateinamen) versucht

    Hey,

    Nox nutzt ListItem.IsStereoscopic nicht den Dateinamen.
    Viel Ahnung hab ich nicht davon da ich keine flags nutze..

    Such mal in den xml Dateien nach ListItem.IsStereoscopic


    Dort müsste man das <value condition="ListItem.IsStereoscopic">bluray3d</value> ändern denke ich:

    <value condition="String.Contains(ListItem.filename,xxx)">dein 3D Text</value>

    wäre da wohl richtiger. ListItem.IsStereoscopic wird soweit ich weiß nicht in der DB Stremdetails eingetragen. Kodi kann das erst beim Abspielen "feststellen" da es kein Wert aus der DB ist.
    https://kodi.wiki/view/Databases/MyVideos#streamdetails

    Wenn es nach dem Dateinamen machst wie oben im Beispiel, kannst du auch deine Unterschiedung vornnehmen mit 3D und SBS (was immer das sein mag, kein Plan von 3D).

    Nur die Reihenfolge ist immer etwas tricky in Variablen:

    Die werden von oben nach unten bis zum ersten match verglichen. 3D.SBS und 3D müsste man z.B erst nach 3D.SBS als value eintragen
    da 3D ohne SBS sonst auch schon als Match (da es 3D enthält) zuträfe.

    Welcher Skin das schon so macht kann ich dir nicht sagen. Ich weiß nur wie man es vielleicht beheben kann;).

    Grüße

    Hey,

    Hab ich ehrlich noch nie versucht. Umlaute kommen ja eigentlich nur in Genres vor. Die habe ich eigentlich immer extra außerhalb der xbt.
    Das packen macht zumindest mein Eindruck jetzt auch nicht sooo viel aus bei der Geschwindigkeit.
    Zumindest in "normalen" Skins da es seit Einführung des "Einfärbens" ja immer weniger wird was man an Grafiken in einem Skin verwendet.
    Heute kann man ja was in weiß anlegen und beliebig einfärben. Früher brauchte man dasselbe in blau, schwarz, grau usw..

    Außerdem ist man flexibler wenn sie nicht gepackt sind. Sci-fi zum Science fiction oder auch mal eine vorhandene kopieren und für ein Subgenre verwenden
    z.B. Sportimage für Boxen oder sowas, kann man so recht schnell erledigen, ohne neue xbt, austauschen, Kodi Neustarten..
    Also macht es schon sinn mit deinem externem Link.

    Super das es klappt.

    Grüße

    Hey,

    Wäre vielleicht gut wenn du das in den Skinning Rubriken Fragst sowas..

    1) Scrollt er in der Liste nicht mehr vom Ersten direkt in den Letzten Eintrag (oder umgekehrt) sondern bleibt am Anfang/Ende stehen. Wenn ich also von Filmen mit A zu Filmen mit Z will, muss ich ganz durch das Alphabet scrollen. Wie sieht hierbei der Befehl aus, um von AzuZ/ZzuA zu springen?

    Bei mir geht das immer, ich gebe aber auch brav alle Tags an;).. onup/ondown muss man bei vertikalen listen, genauso wie onleft/onright bei horizontalen soweit ich weiß trotzdem die ID´s des containers angeben. Ich schätze mal die sind dafür da. Würde Kodi das immer selbst machen käme man durch Navigation in die "Listenrichtung" ja nicht mehr aus der Liste, was bei anderen Dingen wie z.B. DialogMediasource ja zwingend notwendig ist. Da gibt ja Buttons darüber, darunter eine Liste mit Quellpfaden und darunter und Umständen das Menü..

    2) Ich habe Probleme mit Umlauten bei dem Aufruf von Icons. Wenn ich z.B. das Genre-Icon "Komödie" aufrufe, gibt es ein Fallback. Wie bring ich dem View Umlaute bei?

    Die png Datei heißt falsch? Skin oder Addon davon installiert unter Kodi? Skincode nimt ja nur deinen Genretext Komödie aus der Liste. Das kann nur passieren wenn dein Icon falsch entpackt wurde.
    Passiert leider mit vielen zip Programmen in Kodi.
    Da weiß ich auch nur eins nehmen das geht oder Manuell per kopieren in den Addon ordner und aktivieren dran vorbei Arbeiten.

    Ich nutze Total Commander -> den internen zipper. Nur mit dem hab ichs hinbekommen Umlaute durch Kodi richtig zu entpacken unter Windows.
    Dort kann in den Packer Optionen festlegen "Alle als UTF-8, falls mindesten einer unicode enthält". Ohne fehlen mir auch das ö in Komödie.
    Ist schon ne Weile her, ich hoffe das war die richtige Option, sonst einfach verschiedene Packer Versuchen.
    Der Hintergrund scheint der zu sein das Packer nicht unbedingt die Codepage mitgeben und davon ausgehen das das Betriebssystem oder Entpacker machen.
    Dieselbe fehlerhafte zip kann ich mit allen korrekt entpacken, außer mit Kodi.


    Grüße

    Nur wenn man den letzten aktuellen Track abspielt...dann wird kein Artist Namen und Titel dazu ausgegeben...nur der Pfeil erscheint dann...warscheinlich weil es dann keinen nächsten Track gibt...oder?

    Hey,

    Ne,

    Code
    <visible>!String.IsEmpty(MusicPlayer.Offset(1).Title)</visible>

    in deiner Textbox vergessen zu löschen;)..

    Sieht dann aber trotzdem etwas mager aus weil es nur ein Zweizeiler ist.
    Da ist man aber wieder bei dem Grundproblem in Kodi: Es gibt alles oder gar nix..
    Man könnte es jetzt drin lassen und die Textbox nochmal einfügen mit anderen Infos und einem <visible>String.IsEmpty(MusicPlayer.Offset(1).Title)</visible>
    für die Fälle wenn es kein Next mehr gibt.. Sowas wie Genre z.B... aber auch dann, was ist wenns keins gibt.
    Sowas vielleicht, mit Genre und Album dabei zusätzlich hinter die bestehende Textbox..

    Code
    <control type="textbox">
    			<left>584</left>
    			<top>990</top>
    			<width>1100</width>
    			<align>right</align>
    			<height>122</height>
    			<label>[B][COLOR green][UPPERCASE]Tracks[/UPPERCASE][/COLOR][/B][CR][COLOR blue]$INFO[MusicPlayer.Artist,, - ][/COLOR][COLOR yellow]$INFO[MusicPlayer.Title][/COLOR][COLOR white]$INFO[MusicPlayer.Duration, - ,][/COLOR][CR][COLOR blue]$INFO[MusicPlayer.Genre][/COLOR][CR][COLOR blue]$INFO[MusicPlayer.Album][/COLOR]</label>
    			<font>font10</font>
    			<visible>String.IsEmpty(MusicPlayer.Offset(1).Title)</visible>
    		</control>

    Andere Idee wäre eine conditional Animation in der Art


    Code
    <animation effect="slide" start="0,0" end="0,50" time="0" condition="String.IsEmpty(MusicPlayer.Offset(1).Title)">Conditional</animation>

    Und du spielst etwas mit dem "End wert" um den Text dann Mittig zum Cover zu bekommen.

    Ist aber Geschmackssache was einem da Gefällt.

    Grüße

    Also dann würde ich lieber die ganze fläche unten Abdunkeln, dann kann man wenigstens auch etwas besser deine tracks lesen oder?.
    Hintergrund bei den flags raus, unten einfach nen "streifen wie oben z.B.

    wegen der höhe des hintergrundes unten

    Code
    <control type="image">
    			<left>-40</left>
    			<bottom>0</bottom>
    			<width>120%</width>
    			<height>680</height>
    			<texture flipy="true">frame/osdfade.png</texture>
    		</control>

    muss man dann schauen mit diversen Beispielen. Bei meinen Testalben hab ich keine 2 wo überhaupt was kommt;)..
    Das ist ja immer schwierig weil ein Verlauf ins nichts recht lang sein muss um nicht abhackt auszusehen aber bei weißen Fanarts dann schnell fast die halbe höhe braucht um "schwarz" genug zu sein bei dem Teil der wichtig ist.
    Darum gibts so wenig weiße Skins - da ist schnell alles Taghell um nicht komisch zu wirken;)..

    Versuchs mal damit: Es steht jetzt Tracks drann mit Pfeil beim aktuellen.
    Man braucht nun nur Evtl. ein Fallback oder eine Animation wenns keine nächsten Traks gibt. Damit ein einzelner Track nicht so verloren aussieht mit dem dicken Cover daneben.

    Da könnte man dann die Textbox nur anzeigen wenn es nächste gibt und wenn nicht mehr infos vom aktuellen.
    Das musst du wissen - wenn es eh nie vorkommt kann man es auch sein lassen.

    Grüße