Pattern.fromValues constructor

Pattern.fromValues({
  1. required PatternType patternType,
  2. required Color bgColor,
  3. required Color fgColor,
  4. int? featuresCount,
})

Instantiate a Pattern from a type, background and foreground colors.

Implementation

factory Pattern.fromValues(
    {required PatternType patternType,
    required Color bgColor,
    required Color fgColor,
    int? featuresCount}) {
  if (patternType == PatternType.dots)
    return Dots(
        bgColor: bgColor,
        fgColor: fgColor,
        featuresCount: featuresCount ?? DEFAULT_SQUARES_COUNT);
  if (patternType == PatternType.verticalThick)
    return VerticalStripesThick(
        bgColor: bgColor,
        fgColor: fgColor,
        featuresCount: featuresCount ?? DEFAULT_STRIPES_COUNT);
  if (patternType == PatternType.verticalLight)
    return VerticalStripesLight(
        bgColor: bgColor,
        fgColor: fgColor,
        featuresCount: featuresCount ?? DEFAULT_STRIPES_COUNT);
  if (patternType == PatternType.diagonalThick)
    return DiagonalStripesThick(
        bgColor: bgColor,
        fgColor: fgColor,
        featuresCount: featuresCount ?? DEFAULT_DIAGONAL_STRIPES_COUNT);
  if (patternType == PatternType.diagonalLight)
    return DiagonalStripesLight(
        bgColor: bgColor,
        fgColor: fgColor,
        featuresCount: featuresCount ?? DEFAULT_DIAGONAL_STRIPES_COUNT);
  if (patternType == PatternType.horizontalLight)
    return HorizontalStripesLight(
        bgColor: bgColor,
        fgColor: fgColor,
        featuresCount: featuresCount ?? DEFAULT_STRIPES_COUNT);
  if (patternType == PatternType.horizontalThick)
    return HorizontalStripesThick(
        bgColor: bgColor,
        fgColor: fgColor,
        featuresCount: featuresCount ?? DEFAULT_STRIPES_COUNT);
  if (patternType == PatternType.subtlepatch)
    return SubtlePatch(
        bgColor: bgColor,
        fgColor: fgColor,
        featuresCount: featuresCount ?? DEFAULT_SQUARES_COUNT);
  if (patternType == PatternType.texture)
    return TexturePattern(
        bgColor: bgColor,
        fgColor: fgColor,
        featuresCount: featuresCount ?? DEFAULT_SQUARES_COUNT);
  if (patternType == PatternType.raindrops)
    return Raindrops(
        bgColor: bgColor,
        fgColor: fgColor,
        featuresCount: featuresCount ?? DEFAULT_SQUARES_COUNT);
  if (patternType == PatternType.checkers)
    return Checkers(
        bgColor: bgColor,
        fgColor: fgColor,
        featuresCount: featuresCount ?? DEFAULT_SQUARES_COUNT);
  if (patternType == PatternType.crosshatch)
    return Crosshatch(
        bgColor: bgColor,
        fgColor: fgColor,
        featuresCount: featuresCount ?? DEFAULT_SQUARES_COUNT);
  throw "Can't create pattern";
}