ShowcaseCoachConfig class
Configuration options for customizing the appearance and behavior of ShowcaseCoach.
This class provides fine-grained control over colors, typography, and visual effects. All properties are optional and will fall back to sensible defaults based on the current theme.
Example
ShowcaseCoachConfig(
primaryColor: Colors.blue,
cardStyle: ShowcaseCoachCardStyle.glass,
titleStyle: TextStyle(fontSize: 24),
)
Constructors
- ShowcaseCoachConfig({String? fontFamily, TextStyle? titleStyle, TextStyle? bodyStyle, TextStyle? buttonTextStyle, Color? primaryColor, Color? buttonColor, double overlayTintOpacity = _defaultOverlayTintOpacity, ShowcaseCoachCardStyle cardStyle = ShowcaseCoachCardStyle.glass, bool showProgressIndicator = true, bool? enableTransitions, Duration? transitionDuration, Curve? transitionCurve, Duration? backdropTransitionDuration, Duration? gradientTransitionDuration, Duration? highlightTransitionDuration, Duration? cardTransitionDuration, bool enableHapticFeedback = false, HapticFeedbackType hapticFeedbackType = HapticFeedbackType.medium, bool enableAutoAdvance = false, bool enableRippleEffect = false, double glowIntensity = 1.0, double shadowIntensity = 1.0, HighlightBorderStyle borderStyle = HighlightBorderStyle.solid, bool enableShimmerEffect = false, bool enableParticleEffect = false, double pulseAnimationSpeed = 1.0, double bounceIntensity = 1.0, double borderWidth = 3.0, double borderRadius = 24.0, HighlightShape highlightShape = HighlightShape.roundedRectangle, bool dismissOnTapOutside = false, bool debugMode = false, bool enableRotationAnimation = false, double rotationAnimationSpeed = 1.0, double rotationAngle = 0.0, Duration? fadeAnimationDuration, Curve? fadeAnimationCurve, Duration? scaleAnimationDuration, Curve? scaleAnimationCurve, ScaleRange scaleAnimationRange = const ScaleRange(0.8, 1.0), Duration? slideAnimationDuration, Curve? slideAnimationCurve, Offset? slideAnimationOffset, Duration animationDelay = Duration.zero, Duration staggerAnimationDelay = Duration.zero, bool enableStaggerAnimations = false, AnimationPreset animationPreset = AnimationPreset.defaultPreset, AnimationDirection animationDirection = AnimationDirection.normal, String? skipButtonText, String? nextButtonText, ShowcaseOverlayStyle overlayStyle = ShowcaseOverlayStyle.modern})
-
Creates a new showcase coach configuration.
const
Properties
- animationDelay → Duration
-
Delay before starting animations.
final
- animationDirection → AnimationDirection
-
Direction for animations.
final
- animationPreset → AnimationPreset
-
Animation preset to use.
final
- backdropTransitionDuration → Duration?
-
Duration for backdrop hole transitions.
final
- bodyStyle → TextStyle?
-
Optional override for the body/description text style.
final
- borderRadius → double
-
Border radius for the highlight in pixels.
final
- borderStyle → HighlightBorderStyle
-
Border style for the highlight.
final
- borderWidth → double
-
Width of the highlight border in pixels.
final
- bounceIntensity → double
-
Intensity multiplier for bounce animation.
final
-
Optional override for the primary CTA button color.
final
-
Optional override for the button text style.
final
- cardStyle → ShowcaseCoachCardStyle
-
Visual style for the tooltip card.
final
- cardTransitionDuration → Duration?
-
Duration for tooltip card transitions.
final
- debugMode → bool
-
Whether to enable debug mode visualization.
final
- dismissOnTapOutside → bool
-
Whether to dismiss the tour when tapping outside the highlight area.
final
- effectiveButtonColor → Color?
-
Returns the effective button color without needing a BuildContext.
no setter
- enableAutoAdvance → bool
-
Whether to enable auto-advance functionality.
final
- enableHapticFeedback → bool
-
Whether to enable haptic feedback on step changes.
final
- enableParticleEffect → bool
-
Whether to enable particle/sparkle effect around the highlight.
final
- enableRippleEffect → bool
-
Whether to enable ripple effect on the highlight.
final
- enableRotationAnimation → bool
-
Whether to enable rotation animation on the highlight.
final
- enableShimmerEffect → bool
-
Whether to enable shimmer/sparkle effect on the highlight.
final
- enableStaggerAnimations → bool
-
Whether to enable staggered animations.
final
- enableTransitions → bool?
-
Whether to enable transition animations between steps.
final
- fadeAnimationCurve → Curve?
-
Curve for fade animations.
final
- fadeAnimationDuration → Duration?
-
Duration for fade animations.
final
- fontFamily → String?
-
Global font family applied to all coach text.
final
- glowIntensity → double
-
Intensity multiplier for the glow effect around the highlight.
final
- gradientTransitionDuration → Duration?
-
Duration for gradient overlay transitions.
final
- hapticFeedbackType → HapticFeedbackType
-
Type of haptic feedback to use.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- highlightShape → HighlightShape
-
Shape of the highlight border.
final
- highlightTransitionDuration → Duration?
-
Duration for highlight position transitions.
final
- nextButtonText → String?
-
Custom text for the "Next" button.
final
- overlayStyle → ShowcaseOverlayStyle
-
Optional showcase overlay style for a different look.
final
- overlayTintOpacity → double
-
Opacity for the radial gradient overlay tint.
final
- primaryColor → Color?
-
Primary accent color used for glows, gradients, and highlights.
final
- pulseAnimationSpeed → double
-
Speed multiplier for pulse animation.
final
- rotationAngle → double
-
Maximum rotation angle in degrees.
final
- rotationAnimationSpeed → double
-
Speed multiplier for rotation animation.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- scaleAnimationCurve → Curve?
-
Curve for scale animations.
final
- scaleAnimationDuration → Duration?
-
Duration for scale animations.
final
- scaleAnimationRange → ScaleRange
-
Range for scale animations (begin, end).
final
- shadowIntensity → double
-
Intensity multiplier for shadow effects.
final
- showProgressIndicator → bool
-
Whether to show a progress indicator (e.g., "Step 2 of 5").
final
- skipButtonText → String?
-
Custom text for the "Skip" button.
final
- slideAnimationCurve → Curve?
-
Curve for slide animations.
final
- slideAnimationDuration → Duration?
-
Duration for slide animations.
final
- slideAnimationOffset → Offset?
-
Offset for slide animations.
final
- staggerAnimationDelay → Duration
-
Delay between staggered animations.
final
- titleStyle → TextStyle?
-
Optional override for the title text style.
final
- transitionCurve → Curve?
-
Curve for transition animations.
final
- transitionDuration → Duration?
-
Duration for all transition animations.
final
Methods
-
merge(
TextStyle base, TextStyle? override) → TextStyle - Merges a base TextStyle with an optional override.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited