| Scroll Ignore | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||
|
Présentation
Un widget est un élément permettant d'afficher une ou plusieurs informations.
L'affichage d'un widget se fait via une grille ( Voir la page FOR-MERGE - 002.5 - SEF-8970 - Concept et paramétrage de la grille - Edition - Météo ).
Il existe plusieurs types de widgets :
- Widget titre ( Voir la page FOR-MERGE - 002.5 - SEF-8970 - Widget Titre - Edition - Météo )
- Widget séparateur ( Voir la page FOR-MERGE - 002.5 - SEF-8970 - Widget Séparateur - Edition - Météo )
- Widget météo ( Voir la page FOR-MERGE - 002.5 - SEF-8970 - Widget Météo - Edition Détail - Météo )
Description
Ajout d'un nouveau widget
Dans le format, JSON, Le le rajout d'un nouveau widget se fait au niveau de la partie "grid_elements".
| Code Block |
|---|
...
"grid_elements": [
{
DEFINITION DU WIDGET 1
},
{
DEFINITION DU WIDGET 2
},
...
]
... |
Définition d'un Widget
Paramètres des widgets
Les widgets vont être définis à l'aide de paramètres composés :
d'une clé et d'une valeur.
| Code Block |
|---|
...
{
"position_x": 0,
"position_y": 3,
...
}
},
... |
Un paramètre peut être non défini, mais avoir une valeur :
- Si le paramètre n'est pas présenteprésent dans le JSON ou si elle s'il existe, mais que sa valeur est égale à "default", la météo va le considérer comme ayant une valeur non définie et va calculer sa valeur par défaut ( voir le chapitre Calcul de la valeur par défaut ).Dans la définition des widgets, choisir si vous préférez supprimer un paramètre pour qu'il soit à la valeur par défaut, ou explicitement écrire "default" dépendra uniquement de ce que vous trouvez le plus confortable :
- Ne pas garder un champ réduira la longueur du JSON ;
- Mettre les champs à "default" vous permettra de ne pas chercher le nom d'un paramètre, si vous voulez lui mettre une valeur ;
| Anchor | ||||
|---|---|---|---|---|
|
Calcul de la valeur d'un paramètre en cascade
La valeur d'un paramètre peut être définie à 3 niveaux différents :
- Dans le widget ( ce qui servira uniquement pour ce widget uniquement ) ;
- Dans le niveau "layout" d'une grille ( ce qui servira de valeur par défaut de pour ce paramètre pour dans cette météogrille ) ;
- Dans les fichiers de configurations de la météo ( ces valeurs serviront alors servira de valeur par défaut de pour ce paramètre dans toutes les météos ) ;
La valeur d'un paramètre sera déterminée en parcourant les 3 niveaux dans l'ordre jusqu'à ce qu'il trouve une valeur définie :
- le niveau "widget",
- le niveau "layout" de la grille,
- le niveau "fichier de configuration".
| Info |
|---|
Remarque :
|
Définition des valeurs par défauts d'une météo
Les valeurs par défaut pour une météo vont être définies dans le chapitre "layouts".
- Il ne faut définir que les valeurs pour lesquelles on souhaite mettre un paramètre par défaut.
- Certains paramètres ne peuvent pas avoir de valeur par défaut.
Ce sera mentionné dans la page spécifique à chaque widget.
Exemple :- position_x ;
- position_y ;
- Certains paramètres ne pourront être définis qu'au niveau de la météo pour être sûr que tous les widgets du même type aient le même comportement.
- Ce sera mentionné dans la page spécifique à chaque widget.
Il y a un chapitre spécifique pour chaque type de widget :
| Code Block |
|---|
...
"layouts" : {
"title_widget_layout": {
...
},
"separator_widget_layout": {
...
},
"weather_widget_layout" : {
...
},
},
... |
Le contenu de ces 3 chapitres est décris décrit dans les pages de chaque widget.
Voir les pages d’édition :
- du widget titre ( voir la page Widget Séparateur FOR-MERGE - 002.5 - SEF-8970 - Widget Titre - Edition - Météo )
- du widget séparateur ( voir la page FOR-MERGE - 002.5 - SEF-8970 - Widget Séparateur - Edition - Météo )
- du widget météo ( voir la page Widget Météo FOR-MERGE - 002.5 - SEF-8970 - Widget Séparateur - Edition - Météo )
Exemple
Dans cet exemple :
- La couleur du texte du titre sera "blue", car même si elle est définie à "black" dans le niveau "layout", puisqu'elle est définie dans l'objet, la valeur définie dans le "layout" sera ignorée.
- La hauteur sera 2, parce qu'elle est définie uniquement dans le niveau "layout" ( non définie dans le widget ).
- La largeur sera celle définie dans le fichier de configuration .
| Code Block |
|---|
...
"grids": [
{
"nb_tiles_in_width": "default",
"type": "grid",
"grid_elements": [
{
"position_x": 0,
"position_y": 0,
"content": {
"type": "title_widget",
"titlelayout" : "DATACENTER",
"text_color": "blue"{
"information_to_display" : {
"title_area" : {
"label" : "DATACENTER",
"text_color" : "default",
"font_zoom_percent" : "default"
}
}
}
}
}
],
"layouts": {
"title_widget_layout": {
"height": 2,
"content": {
"layout" : {
"information_to_display" : {
"title_area" : {
"text_color" : "text_color""blue",
"font_zoom_percent" : "black"
default"
}
}
}
}
}
}
}
],
... |
Dans cet exemple:
la couleur du texte du titre sera "blue" car même s'il est défini en "black" dans le niveau "layout", cette valeur sera ignoré car défini dans l'objet. |