getLayoutContent method

Widget getLayoutContent()

Implementation

Widget getLayoutContent() {
  List<Widget> contentList = [
    (image ?? "").isNotEmpty ? GTFBadge(
      badgeNumber: badgeNumber,
      badgeMaxStyle: badgeMaxStyle,
      showRedDot: showRedDot,
      badgeHeight: badgeHeight,
      redDotHeight: redDotHeight,
      badgeColor: badgeColor,
      badgeTextColor: badgeTextColor,
      badgeTextFontSize: badgeTextFontSize,
      badgePosition: badgePosition,
      child: GTFIcon(
        icon: image,
        width: imageWidth,
        height: imageHeight,
      ),
    ) : Container(),
    SizedBox(
      height: imageTitleSpacing,
      width: imageTitleSpacing,
    ),
    Column(
      mainAxisAlignment: MainAxisAlignment.center,
      crossAxisAlignment: getContentCrossAxisAlignmtnt(),
      children: [
        Text(
          title,
          style: TextStyle(
            color: titleColor,
            fontSize: titleFontSize,
            fontWeight: titleFontWeight,
            height: titleHeight,
          ),
        ),
        subTitle.isNotEmpty
            ? Text(
                subTitle,
                style: TextStyle(
                  color: subTitleColor,
                  fontSize: subTitleFontSize,
                  fontWeight: subTitleFontWeight,
                  height: subTitleHeight,
                ),
              )
            : Container(),
      ],
    )
  ];
  Widget layoutWidget;
  switch (imagePosition) {
    case GTFGridImagePosition.top:
      layoutWidget = Column(
        mainAxisAlignment: getContentMainAxisAlignmtnt(),
        crossAxisAlignment: getContentCrossAxisAlignmtnt(),
        children: contentList,
      );
      break;
    case GTFGridImagePosition.left:
      layoutWidget = Row(
        mainAxisAlignment: getContentMainAxisAlignmtnt(),
        crossAxisAlignment: getContentCrossAxisAlignmtnt(),
        children: contentList,
      );
      break;
    case GTFGridImagePosition.bottom:
      layoutWidget = Column(
        mainAxisAlignment: getContentMainAxisAlignmtnt(),
        crossAxisAlignment: getContentCrossAxisAlignmtnt(),
        children: contentList.reversed.toList(),
      );
      break;
    case GTFGridImagePosition.right:
      layoutWidget = Row(
        mainAxisAlignment: getContentMainAxisAlignmtnt(),
        crossAxisAlignment: getContentCrossAxisAlignmtnt(),
        children: contentList.reversed.toList(),
      );
      break;
    default:
      layoutWidget = Container();
  }
  return Container(
    margin: margin,
    child: layoutWidget,
  );
}