FuShadow constructor
FuShadow({})
Implementation
FuShadow(
{double elevation = 8,
double? spreadRadius,
double? blurRadius,
Offset? offset,
ToolShadowPosition position = ToolShadowPosition.bottom,
int? alpha,
Color? color,
bool darkShadow = false}) {
this.spreadRadius = spreadRadius ?? elevation * 0.125;
this.blurRadius = blurRadius ?? elevation * 2;
this.alpha = alpha ?? (darkShadow ? 100 : 36);
this.elevation = elevation;
this.offset = offset;
this.position = position;
this.color = color;
this.darkShadow = darkShadow;
if (offset == null) {
switch (position) {
case ToolShadowPosition.topLeft:
this.offset = Offset(-elevation, -elevation);
break;
case ToolShadowPosition.top:
this.offset = Offset(0, -elevation);
break;
case ToolShadowPosition.topRight:
this.offset = Offset(elevation, -elevation);
break;
//TODO: Shadow problem
case ToolShadowPosition.centerLeft:
this.offset = Offset(-elevation, elevation * 0.25);
break;
case ToolShadowPosition.center:
this.offset = const Offset(0, 0);
break;
//TODO: Shadow problem
case ToolShadowPosition.centerRight:
this.offset = Offset(elevation, elevation * 0.25);
break;
case ToolShadowPosition.bottomLeft:
this.offset = Offset(-elevation, elevation);
break;
case ToolShadowPosition.bottom:
this.offset = Offset(0, elevation);
break;
case ToolShadowPosition.bottomRight:
this.offset = Offset(elevation, elevation);
break;
}
}
}