Ein Recalbox-Theme erstellen

45 Seiten · 8 Abschnitte
FRENESDE Alles anzeigen Mein Theme erstellen

Die drei Schreibweisen einer Eigenschaft

Tag, Tag mit Wert, oder Attribut — und warum das alles ändert.

Dieselbe Eigenschaft kann auf drei Arten geschrieben werden. Sie sind gleichwertig… außer in einem entscheidenden Punkt.

1. Als Kind-Tag

<image name="fond">
  <path>./data/fond.jpg</path>
</image>

Die historische Form. Am lesbarsten, sobald eine Komponente mehrere Eigenschaften hat.

2. Als Kind-Tag mit value-Attribut

<image name="fond">
  <path value="./data/fond.jpg" />
</image>

Streng gleichwertig zur ersten.

3. Als Attribut der Komponente

<image name="fond" path="./data/fond.jpg" pos="0 0" size="1 1" />

Alles passt in eine Zeile. Sehr praktisch für einfache Komponenten.

Der Unterschied, der zählt

Nur die Formen 1 und 2 akzeptieren eine Bedingung auf EINER Eigenschaft.

<image name="fond">
  <path if="crt">./data/fond-crt.jpg</path>
  <path if="!crt">./data/fond-hd.jpg</path>
</image>

In Form 3 unmöglich: if= auf dem Eltern-Tag würde die ganze Komponente bedingen, nicht eine ihrer Eigenschaften.

Sie mischen sich frei

Das ist der wichtige Punkt: Du musst dich nicht für eine Art entscheiden und dabei bleiben. Recalbox' Leser akzeptiert alle drei, auch in derselben Komponente.

<image name="fond" pos="0 0" size="1 1" zIndex="1">
  <path if="crt">${root}/images/fond-crt.jpg</path>
  <path if="!crt">${root}/images/fond-hd.jpg</path>
  <color value="FFFFFFC0" />
</image>

Drei Schreibweisen in derselben Komponente: die einfachen Werte als Attribute in der ersten Zeile, die mit Varianten als bedingte Tags, und eine letzte als Tag mit value. Vollkommen gültig — und genau das schreibt man in der Praxis.

➡️ Einfache Regel: ein einziger Wert → Attribut; Varianten → Kind-Tag.