getFineRoundedButton static method

Widget getFineRoundedButton(
  1. String? buttonLabel,
  2. OnButtonTapped onButtonTapped,
  3. Icon icon, {
  4. ButtonIconPositionType iconPositionType = ButtonIconPositionType.left,
  5. bool hasRadiusFactor = true,
  6. Color buttonBodyColor = const Color(0xffeef2f7),
  7. Color buttonBorderColor = Colors.indigo,
  8. Color? textColor,
  9. bool showBorder = false,
  10. String tooltipText = "",
})

Implementation

static Widget getFineRoundedButton(String? buttonLabel, OnButtonTapped onButtonTapped, Icon icon,
    {ButtonIconPositionType iconPositionType = ButtonIconPositionType.left,
    bool hasRadiusFactor = true,
    Color buttonBodyColor = const Color(0xffeef2f7),
    Color buttonBorderColor = Colors.indigo,
    Color? textColor,
    bool showBorder = false,
    String tooltipText = ""}) {
  icon = Icon(icon.icon, color: buttonBorderColor);

  return Container(
    height: 45,
    decoration: BoxDecoration(
      color: buttonBodyColor,
      borderRadius: const BorderRadius.all(Radius.circular(7.0)),
      border: showBorder ? Border.all(color: Colors.grey) : Border.all(color: Colors.transparent),
    ),
    child: Material(
      color: Colors.transparent,
      child: Tooltip(
        message: tooltipText,
        child: InkWell(
          splashColor: Colors.white24,
          borderRadius: const BorderRadius.all(Radius.circular(7.0)),
          onTap: onButtonTapped,
          child: Padding(
            padding: const EdgeInsets.only(top: 8, bottom: 8, left: 7, right: 7),
            child: Center(
              child: RichText(
                text: TextSpan(
                  style: TextStyle(
                    fontWeight: FontWeight.w400,
                    fontSize: 16,
                    letterSpacing: 0.27,
                    color: textColor ?? Colors.black,
                  ),
                  children: [
                    WidgetSpan(
                      child: Padding(
                        padding: const EdgeInsets.symmetric(horizontal: 2.0),
                        child: icon,
                      ),
                    ),
                    TextSpan(text: buttonLabel),
                  ],
                ),
              ),
            ),
          ),
        ),
      ),
    ),
  );
}