CircularPercentIndicator constructor

CircularPercentIndicator({
  1. Key? key,
  2. double percent = 0.0,
  3. double lineWidth = 5.0,
  4. double startAngle = 0.0,
  5. required double radius,
  6. Color fillColor = Colors.transparent,
  7. Color backgroundColor = const Color(0xFFB8C7CB),
  8. Color? progressColor,
  9. double backgroundWidth = -1,
  10. LinearGradient? linearGradient,
  11. bool animation = false,
  12. int animationDuration = 500,
  13. Widget? header,
  14. Widget? footer,
  15. Widget? center,
  16. bool addAutomaticKeepAlive = true,
  17. CircularStrokeCap circularStrokeCap = CircularStrokeCap.butt,
  18. Color? arcBackgroundColor,
  19. ArcType? arcType,
  20. bool animateFromLastPercent = false,
  21. bool reverse = false,
  22. Curve curve = Curves.linear,
  23. MaskFilter? maskFilter,
  24. bool restartAnimation = false,
  25. VoidCallback? onAnimationEnd,
  26. Widget? widgetIndicator,
  27. bool rotateLinearGradient = false,
})

Implementation

CircularPercentIndicator({
  Key? key,
  this.percent = 0.0,
  this.lineWidth = 5.0,
  this.startAngle = 0.0,
  required this.radius,
  this.fillColor = Colors.transparent,
  this.backgroundColor = const Color(0xFFB8C7CB),
  Color? progressColor,
  //negative values ignored, replaced with lineWidth
  this.backgroundWidth = -1,
  this.linearGradient,
  this.animation = false,
  this.animationDuration = 500,
  this.header,
  this.footer,
  this.center,
  this.addAutomaticKeepAlive = true,
  this.circularStrokeCap = CircularStrokeCap.butt,
  this.arcBackgroundColor,
  this.arcType,
  this.animateFromLastPercent = false,
  this.reverse = false,
  this.curve = Curves.linear,
  this.maskFilter,
  this.restartAnimation = false,
  this.onAnimationEnd,
  this.widgetIndicator,
  this.rotateLinearGradient = false,
}) : super(key: key) {
  if (linearGradient != null && progressColor != null) {
    throw ArgumentError('Cannot provide both linearGradient and progressColor');
  }
  _progressColor = progressColor ?? Colors.red;

  assert(startAngle >= 0.0);
  if (percent < 0.0 || percent > 1.0) {
    throw Exception("Percent value must be a double between 0.0 and 1.0, but it's $percent");
  }

  if (arcType == null && arcBackgroundColor != null) {
    throw ArgumentError('arcType is required when you arcBackgroundColor');
  }
}