TabItemBackingDecoration constructor

TabItemBackingDecoration({
  1. required tabItemDecorationVariants variant,
  2. required dynamic decorationVariant,
})

Implementation

TabItemBackingDecoration({required this.variant, required decorationVariant})
    : super(decorationVariant: decorationVariant) {
  switch (variant) {
    case tabItemDecorationVariants.circle:
      {
        decorationCornerRadius = BorderRadius.circular(100);
        break;
      }
    case tabItemDecorationVariants.roundedRectangle:
      {
        decorationShape = BoxShape.rectangle;
        decorationCornerRadius = BorderRadius.circular(30.0);
        break;
      }
  }

  switch (decorationVariant) {
    case decorationPriority.standard:
      {
        decorationFill = palette.brightness() == Brightness.light
            ? palette.lightModeFill()
            : palette.darkModeFill();
        decorationBorder = palette.brightness() == Brightness.light
            ? palette.lightModeBorder()
            : palette.darkModeBorder();
        return;
      }
    case decorationPriority.important:
      {
        decorationBorder = palette.universalBorder();

        decorationGradient = palette.brightness() == Brightness.light
            ? palette.lightGradient()
            : palette.darkGradient();
        decorationHaze = palette.brightness() == Brightness.light
            ? palette.darkShadow()
            : palette.lightShadow();
        return;
      }
    case decorationPriority.inactive:
      {
        decorationFill = coloration.inactiveColor();
        return;
      }
    // Has no support for this priority in this element
    case decorationPriority.inverted:
      {
        return;
      }
    // Has no support for this priority in this element
    case decorationPriority.active:
      {
        return;
      }
  }
}