returnActiveToolCard method

  1. @override
Widget returnActiveToolCard()
override

Implementation

@override
Widget returnActiveToolCard() {
  List<Widget> pickerList = [];
  String selectedItem = '';

  for (var element in pickerOptions) {
    pickerList.add(
        Center(child: BodyOneText(element, decorationPriority.standard)));
  }

  return BaseCardToolTemplate(
    isActive: true,
    cardIcon: badgeIcon,
    toolPrompt: templatePrompt,
    toolChildren: [
      Container(
          height: 100,
          decoration: InputBackingDecoration().buildBacking(),
          padding: const EdgeInsets.all(12.0),
          child: CupertinoTheme(
            data: CupertinoThemeData(
              brightness: palette.brightness(),
            ),
            child: CupertinoPicker(
                backgroundColor: Colors.transparent,
                itemExtent: 40,
                magnification: 1.2,
                diameterRatio: 1.9,
                onSelectedItemChanged: (int index) {
                  selectedItem = pickerOptions[index];
                },
                children: pickerList),
          )),
      const SizedBox(height: 20.0),
      const DividerElement(),
      const SizedBox(height: 20.0),
      Row(
          crossAxisAlignment: CrossAxisAlignment.center,
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            SmolButtonElement(
                decorationVariant: decorationPriority.standard,
                buttonTitle: 'Skip',
                buttonHint: 'Skips the current card.',
                buttonAction: () => {
                      onNextCard(),
                    }),
            const Spacer(),
            SmolButtonElement(
                decorationVariant: decorationPriority.important,
                buttonTitle: 'Next',
                buttonHint: 'Goes to the next card.',
                buttonAction: () => {
                      userSelectedItem = selectedItem,
                      onNextCard(),
                    }),
          ])
    ],
  );
}