fnHexToColor function

dynamic fnHexToColor(
  1. dynamic value
)

Implementation

dynamic fnHexToColor(dynamic value) {
  var s = varToStr(value).trim().replaceAll("#", "");
  if (s.length != 6) return 0x00FFFFFF;
  final r = int.tryParse(s.substring(0, 2), radix: 16) ?? 255;
  final g = int.tryParse(s.substring(2, 4), radix: 16) ?? 255;
  final b = int.tryParse(s.substring(4, 6), radix: 16) ?? 255;
  // Delphi's TColor is a 24-bit 0x00BBGGRR (BGR, no alpha channel),
  // not Flutter's 0xAARRGGBB -- an alpha byte was previously being added
  // that shouldn't be there, and the input RGB wasn't being converted to
  // Delphi's BGR byte order.
  return (b << 16) | (g << 8) | r;
}