CustomShowcase.withWidget constructor

const CustomShowcase.withWidget({
  1. required GlobalKey<State<StatefulWidget>> key,
  2. required int currentWidgetId,
  3. required Widget child,
  4. required Widget? container,
  5. required double? height,
  6. required double? width,
  7. TextStyle? indctorStyle,
  8. ButtonStyle? buttonStyle,
  9. bool? isLast = false,
  10. ShapeBorder targetShapeBorder = const RoundedRectangleBorder(borderRadius: BorderRadius.all(Radius.circular(8))),
  11. Color overlayColor = Colors.black45,
  12. BorderRadius? targetBorderRadius,
  13. double overlayOpacity = 0.75,
  14. Widget scrollLoadingWidget = const CircularProgressIndicator(valueColor: AlwaysStoppedAnimation(Colors.white)),
  15. VoidCallback? onTargetClick,
  16. bool? disposeOnTap,
  17. Duration movingAnimationDuration = const Duration(milliseconds: 2000),
  18. bool? disableMovingAnimation,
  19. EdgeInsets targetPadding = EdgeInsets.zero,
  20. double? blurValue,
  21. VoidCallback? onTargetLongPress,
  22. VoidCallback? onTargetDoubleTap,
  23. bool disableDefaultTargetGestures = false,
  24. required Widget buttonWidget,
  25. TooltipPosition? tooltipPosition,
})

Implementation

const CustomShowcase.withWidget({
  required this.key,
  required this.currentWidgetId,
  required this.child,
  required this.container,
  required this.height,
  required this.width,
  this.indctorStyle,
  this.buttonStyle,
  this.isLast = false,
  this.targetShapeBorder = const RoundedRectangleBorder(
    borderRadius: BorderRadius.all(
      Radius.circular(8),
    ),
  ),
  this.overlayColor = Colors.black45,
  this.targetBorderRadius,
  this.overlayOpacity = 0.75,
  this.scrollLoadingWidget = const CircularProgressIndicator(
      valueColor: AlwaysStoppedAnimation(Colors.white)),
  this.onTargetClick,
  this.disposeOnTap,
  this.movingAnimationDuration = const Duration(milliseconds: 2000),
  this.disableMovingAnimation,
  this.targetPadding = EdgeInsets.zero,
  this.blurValue,
  this.onTargetLongPress,
  this.onTargetDoubleTap,
  this.disableDefaultTargetGestures = false,
  required this.buttonWidget,
  this.tooltipPosition,
})  : showArrow = false,
      onToolTipClick = null,
      totalWidgetsID = 5,
      scaleAnimationDuration = const Duration(milliseconds: 300),
      scaleAnimationCurve = Curves.decelerate,
      scaleAnimationAlignment = null,
      disableScaleAnimation = null,
      title = null,
      description = null,
      titleAlignment = TextAlign.start,
      descriptionAlignment = TextAlign.start,
      titleTextStyle = null,
      descTextStyle = null,
      tooltipBackgroundColor = Colors.white,
      textColor = Colors.black,
      tooltipBorderRadius = null,
      tooltipPadding = const EdgeInsets.symmetric(vertical: 8),
      titlePadding = null,
      descriptionPadding = null,
      indctorPadding = null,
      assert(overlayOpacity >= 0.0 && overlayOpacity <= 1.0,
          "overlay opacity must be between 0 and 1.");