fetchGradient function

Shader fetchGradient({
  1. required VersatileGradientType versatileGradientType,
  2. required Rect bounds,
  3. required Color colorOne,
  4. required Color colorTwo,
  5. required double fontSize,
  6. required TileMode tileModePass,
})

Implementation

Shader fetchGradient(
    {required VersatileGradientType versatileGradientType,
    required Rect bounds,
    required Color colorOne,
    required Color colorTwo,
    required double fontSize,
    required TileMode tileModePass}) {
  switch (versatileGradientType) {
    // case of Radial Gradient
    case VersatileGradientType.radial:
      return RadialGradient(
        center: Alignment.topLeft,
        radius: 1.0,
        colors: [colorOne, colorTwo],
        tileMode: tileModePass,
      ).createShader(bounds);
    case VersatileGradientType.linear:
      return LinearGradient(
        // case of Linear Gradient
        begin: Alignment.topLeft,
        colors: [colorOne, colorTwo],
        tileMode: tileModePass,
      ).createShader(bounds);
    case VersatileGradientType.sweep:
      return SweepGradient(
        // case of Sweep Gradient
        center: Alignment.topLeft,
        colors: [colorOne, colorTwo],
        tileMode: tileModePass,
      ).createShader(bounds);
    default:
      return LinearGradient(
        // case of default case  which will never occur
        begin: Alignment.topLeft,
        colors: [colorOne, colorTwo],
        tileMode: tileModePass,
      ).createShader(bounds);
  }
}