Vue d'ensemble du theming
Pipeline
- Vous definissez des proprietes CSS personnalisees
--rs-grid-*sur:root - Au montage,
theme_from_css_vars()les lit depuis le style calcule - Les variables manquantes utilisent les valeurs par defaut de
Theme::light() - Le
Themeest transmis auSceneBuilderqui l'utilise pour tout le rendu
Structure Theme
La structure Theme contient toutes les proprietes visuelles :
- Couleurs — arriere-plan, texte, bordures, selection, scrollbar, survol, recherche
- Typographie — tailles de police, gras pour les en-tetes
- Espacement — padding des cellules, largeur et rayon de la scrollbar
Voir la Reference des variables CSS pour la liste complete.
Deux facons de definir le theme
1. Variables CSS (recommande)
Ajoutez des variables a votre feuille de style :
2. Structure Theme programmatique
Creez un Theme directement en Rust :
Pour appliquer le theme dynamiquement :
Passez le theme en tant que signal pour des mises a jour reactives :
Quand les variables sont-elles lues ?
Les variables CSS sont lues une seule fois au montage. Elles ne sont pas relues a chaque frame. Pour changer le theme dynamiquement :
Utilisez un signal de theme — le composant se re-rendra automatiquement lorsque le signal est mis a jour.
Themes par defaut
rs-grid est livre avec deux themes programmatiques par defaut :
Voir Themes integres pour les details et les themes supplementaires.