Semantische Farben und Maße als ThemeExtension. copyWith überschreibt einzelne Tokens, lerp interpoliert zwischen Themes.
TxThemeData
| Parameter | Typ | Standard | Bedeutung |
|---|---|---|---|
| background | Color | erforderlich | Hintergrundfarbe. |
| surface | Color | erforderlich | Farbe primärer Oberflächen. |
| surfaceAlt | Color | erforderlich | Farbe alternativer Oberflächen. |
| text | Color | erforderlich | Anzuzeigender Text. |
| muted | Color | erforderlich | Farbe sekundärer Texte. |
| border | Color | erforderlich | Rahmenfarbe. |
| accent | Color | erforderlich | Akzentfarbe. |
| onAccent | Color | erforderlich | Textfarbe auf Akzentflächen. |
| hover | Color | erforderlich | Hintergrund bei Hover. |
| selection | Color | erforderlich | Auswahlmodus. |
| danger | Color | erforderlich | Fehlerfarbe. |
| success | Color | erforderlich | Erfolgsfarbe. |
| focus | Color | erforderlich | Fokusfarbe. |
| radius | double | 8 | Eckenradius in logischen Pixeln. |
| spacing | double | 8 | Grundabstand in logischen Pixeln. |
| controlHeight | double | 40 | Grundhöhe von Eingaben in logischen Pixeln. |
| Mitglied / Typ / Rückgabe | Bedeutung |
|---|---|
static const TxThemeData light = TxThemeData(background: Color(0xfff3f5fa), surface: Colors.white, surfaceAlt: Color(0xfff7f9fc), text: Color(0xff172339), muted: Color(0xff53627a), border: Color(0xffc7d0df), accent: Color(0xff365bc6), onAccent: Colors.white, hover: Color(0xffe9eefb), selection: Color(0xffe1eaff), danger: Color(0xffb42338), success: Color(0xff137553), focus: Color(0xff315dd6)) | Helle Standardtokens beziehungsweise helles Material-Theme. |
static const TxThemeData dark = TxThemeData(background: Color(0xff101725), surface: Color(0xff182236), surfaceAlt: Color(0xff1d2a40), text: Color(0xffedf2fc), muted: Color(0xffb0bfd6), border: Color(0xff465974), accent: Color(0xffa9beff), onAccent: Color(0xff132348), hover: Color(0xff283c5c), selection: Color(0xff2b416b), danger: Color(0xffff9cad), success: Color(0xff7bdbb4), focus: Color(0xffb5c8ff)) | Dunkle Standardtokens beziehungsweise dunkles Material-Theme. |
TxThemeData copyWith({Color? background, Color? surface, Color? surfaceAlt, Color? text, Color? muted, Color? border, Color? accent, Color? onAccent, Color? hover, Color? selection, Color? danger, Color? success, Color? focus, double? radius, double? spacing, double? controlHeight}) | Erzeugt eine Kopie mit den angegebenen Änderungen; alle übrigen Werte bleiben erhalten. |
TxThemeData lerp(covariant TxThemeData? other, double t) | Interpoliert Tokens zum anderen Theme mit Faktor t; null behält dieses Theme bei. |
import 'package:flutter/material.dart';
import 'package:tecexpress/tecexpress.dart';
Future<void> example() async {
final tokens = TxThemeData.light.copyWith(accent: Colors.indigo, radius: 12);
print(tokens.lerp(TxThemeData.dark, 0.5).accent);
}