Faire un thème Recalbox

45 pages · 8 sections
FRENESDE Tout afficher Créer mon thème

Combiner plusieurs conditions

ET, OU, « pas ça », et les groupes entre parenthèses.

Une étiquette par condition

Vous choisissez une condition dans la liste, elle devient une étiquette. Le petit bouton devant dit dans quel sens elle compte :

Sur une étiquette déjà posée, ce même bouton inverse le sens ; le ✕ la retire.

Les groupes

Un groupe est une parenthèse. Dedans, vous dites s’il faut toutes les conditions, ou au moins une. Entre deux groupes, la même question se pose : ET ou OU.

Trois écritures pour les mêmes opérateurs

Ce qu’on veut direSigneEn toutes lettres
et&AND
ou|OR
pas!NOT

Les deux écritures se mélangent, et la casse n’a aucune importance : if="crt AND !tate" vaut if="crt & !tate".

⚠️ && et || ne fonctionnent pas. Deux signes d’affilée sont une erreur de syntaxe, et une expression en erreur vaut faux : le composant disparaît sans que rien ne le dise à l’écran.

Exemple : « sur un écran cathodique, et en arcade ou en favoris » s’écrit

crt & (arcade | favorite)

⚠️ L’ordre des groupes compte

La machine lit de gauche à droite, sans priorité. a | b & c y vaut (a | b) & c, et non a | (b & c). C’est pour ça que le studio met systématiquement les parenthèses : ce que vous lisez est exactement ce que la machine comprendra.

À l’intérieur d’un même groupe, en revanche, l’ordre n’a aucune importance : « pas Full HD et arcade » dit la même chose que « arcade et pas Full HD ».

Une condition s’écrit à deux endroits

La même condition, au même endroit du composant ou sur une seule de ses propriétés, ne dit pas la même chose :

<image name="filtre" if="crt">…</image>      <!-- ① le composant n’existe QUE sur un CRT -->

<text name="titre">                          <!-- ② le composant existe toujours… -->
  <fontSize if="crt">0.09</fontSize>         <!--    …mais sa taille change sur un CRT -->
  <fontSize if="!crt">0.05</fontSize>
</text>

① sur le composant : il apparaît, ou il n’existe pas du tout. ② sur une propriété : le composant est toujours là, une seule de ses valeurs change.

Dans le studio, c’est le même bouton et la même fenêtre dans les deux cas — ce que vous construisez ici sert là-bas à l’identique.