NullableView constructor

const NullableView({
  1. Key? key,
  2. NullableViewController? controller,
  3. OnViewActivator? onActivator,
  4. OnViewChangeListener? onChange,
  5. OnViewErrorListener? onError,
  6. OnViewHoverListener? onHover,
  7. OnViewValidListener? onValid,
  8. OnViewValidatorListener? onValidator,
  9. ViewClickEffect? clickEffect,
  10. OnViewClickListener? onClick,
  11. OnViewClickListener? onDoubleClick,
  12. OnViewClickListener? onLongClick,
  13. OnViewToggleListener? onToggleClick,
  14. OnViewNotifyListener<NullableViewController>? onClickHandler,
  15. OnViewNotifyListener<NullableViewController>? onDoubleClickHandler,
  16. OnViewNotifyListener<NullableViewController>? onLongClickHandler,
  17. bool? absorbMode,
  18. bool? activated,
  19. Color? background,
  20. ValueState<Color>? backgroundState,
  21. BlendMode? backgroundBlendMode,
  22. Gradient? backgroundGradient,
  23. ValueState<Gradient>? backgroundGradientState,
  24. DecorationImage? backgroundImage,
  25. ValueState<DecorationImage>? backgroundImageState,
  26. Clip? clipBehavior,
  27. double? dimensionRatio,
  28. double? elevation,
  29. bool? enabled,
  30. bool? expandable,
  31. Color? foreground,
  32. BlendMode? foregroundBlendMode,
  33. Gradient? foregroundGradient,
  34. DecorationImage? foregroundImage,
  35. int? flex,
  36. Alignment? gravity,
  37. double? height,
  38. ValueState<double>? heightState,
  39. double? heightMax,
  40. double? heightMin,
  41. Color hoverColor = Colors.transparent,
  42. Axis? orientation,
  43. ViewPosition? position,
  44. ViewPositionType? positionType,
  45. Color pressedColor = Colors.transparent,
  46. Color rippleColor = Colors.transparent,
  47. bool? scrollable,
  48. ScrollController? scrollController,
  49. ViewScrollingType? scrollingType,
  50. ViewShape? shape,
  51. Matrix4? transform,
  52. Alignment? transformGravity,
  53. bool? visibility,
  54. double? width,
  55. ValueState<double>? widthState,
  56. double? widthMax,
  57. double? widthMin,
  58. int? animation,
  59. Curve? animationType,
  60. ImageFilter? backdropFilter,
  61. BlendMode? backdropMode,
  62. Color? borderColor,
  63. ValueState<Color>? borderColorState,
  64. double? borderSize,
  65. ValueState<double>? borderSizeState,
  66. double? borderHorizontal,
  67. ValueState<double>? borderHorizontalState,
  68. double? borderVertical,
  69. ValueState<double>? borderVerticalState,
  70. double? borderTop,
  71. ValueState<double>? borderTopState,
  72. double? borderBottom,
  73. ValueState<double>? borderBottomState,
  74. double? borderStart,
  75. ValueState<double>? borderStartState,
  76. double? borderEnd,
  77. ValueState<double>? borderEndState,
  78. double? borderStrokeAlign,
  79. double? borderRadius,
  80. ValueState<double>? borderRadiusState,
  81. double? borderRadiusBL,
  82. ValueState<double>? borderRadiusBLState,
  83. double? borderRadiusBR,
  84. ValueState<double>? borderRadiusBRState,
  85. double? borderRadiusTL,
  86. ValueState<double>? borderRadiusTLState,
  87. double? borderRadiusTR,
  88. ValueState<double>? borderRadiusTRState,
  89. bool indicatorVisible = false,
  90. double? margin,
  91. double? marginHorizontal,
  92. double? marginVertical,
  93. double? marginTop,
  94. double? marginBottom,
  95. double? marginStart,
  96. double? marginEnd,
  97. EdgeInsets? marginCustom,
  98. double? opacity,
  99. ValueState<double>? opacityState,
  100. bool opacityAlwaysIncludeSemantics = false,
  101. double? padding,
  102. double? paddingHorizontal,
  103. double? paddingVertical,
  104. double? paddingTop,
  105. double? paddingBottom,
  106. double? paddingStart,
  107. double? paddingEnd,
  108. EdgeInsets? paddingCustom,
  109. double? shadow,
  110. double? shadowBlurRadius,
  111. BlurStyle? shadowBlurStyle,
  112. Color? shadowColor,
  113. ViewShadowType? shadowType,
  114. double? shadowSpreadRadius,
  115. double? shadowHorizontal,
  116. double? shadowVertical,
  117. double? shadowStart,
  118. double? shadowEnd,
  119. double? shadowTop,
  120. double? shadowBottom,
  121. dynamic icon,
  122. NullableViewBuilder? iconBuilder,
  123. Color? iconTint,
  124. BlendMode iconTintMode = BlendMode.srcIn,
  125. double iconSize = 50,
  126. double iconSpacing = 24,
  127. bool iconVisible = true,
  128. IconViewController? iconController,
  129. String? header,
  130. NullableViewBuilder? headerBuilder,
  131. Color headerColor = Colors.black,
  132. String? headerFontFamily,
  133. FontWeight headerFontWeight = FontWeight.w500,
  134. double headerSize = 24,
  135. bool headerVisible = true,
  136. TextViewController? headerController,
  137. String? body,
  138. NullableViewBuilder? bodyBuilder,
  139. Color bodyColor = const Color(0xff808080),
  140. String? bodyFontFamily,
  141. FontWeight bodyFontWeight = FontWeight.normal,
  142. double bodySize = 16,
  143. double bodySpacing = 12,
  144. bool bodyVisible = true,
  145. TextViewController? bodyController,
  146. Color? buttonBackground,
  147. double buttonBorderRadius = 50,
  148. NullableViewBuilder? buttonBuilder,
  149. double buttonMinWidth = 180,
  150. double buttonPaddingX = 24,
  151. double buttonPaddingY = 12,
  152. Color? buttonRippleColor,
  153. String? buttonText,
  154. Color? buttonTextColor,
  155. String? buttonTextFontFamily,
  156. FontWeight buttonTextFontWeight = FontWeight.w500,
  157. double buttonTextSize = 16,
  158. double buttonSpacing = 24,
  159. bool buttonVisible = true,
  160. ButtonController? buttonController,
  161. OnViewClickListener? onButtonClick,
  162. Color? secondaryButtonBackground,
  163. double? secondaryButtonBorderRadius,
  164. NullableViewBuilder? secondaryButtonBuilder,
  165. double? secondaryButtonMinWidth,
  166. double? secondaryButtonPaddingX,
  167. double? secondaryButtonPaddingY,
  168. Color? secondaryButtonRippleColor,
  169. String secondaryButtonText = "",
  170. Color? secondaryButtonTextColor,
  171. String? secondaryButtonTextFontFamily,
  172. FontWeight? secondaryButtonTextFontWeight,
  173. double? secondaryButtonTextSize,
  174. double secondaryButtonSpacing = 24,
  175. bool secondaryButtonVisible = true,
  176. ButtonController? secondaryButtonController,
  177. OnViewClickListener? onSecondaryButtonClick,
})

Implementation

const NullableView({
  /// ROOT PROPERTIES
  super.key,
  super.controller,

  /// CALLBACK PROPERTIES
  super.onActivator,
  super.onChange,
  super.onError,
  super.onHover,
  super.onValid,
  super.onValidator,

  /// CLICK PROPERTIES
  super.clickEffect,
  super.onClick,
  super.onDoubleClick,
  super.onLongClick,
  super.onToggleClick,
  super.onClickHandler,
  super.onDoubleClickHandler,
  super.onLongClickHandler,

  ///BASE PROPERTIES
  super.absorbMode,
  super.activated,
  super.background,
  super.backgroundState,
  super.backgroundBlendMode,
  super.backgroundGradient,
  super.backgroundGradientState,
  super.backgroundImage,
  super.backgroundImageState,
  super.clipBehavior,
  super.dimensionRatio,
  super.elevation,
  super.enabled,
  super.expandable,
  super.foreground,
  super.foregroundBlendMode,
  super.foregroundGradient,
  super.foregroundImage,
  super.flex,
  super.gravity,
  super.height,
  super.heightState,
  super.heightMax,
  super.heightMin,
  super.hoverColor,
  super.orientation,
  super.position,
  super.positionType,
  super.pressedColor,
  super.rippleColor,
  super.scrollable,
  super.scrollController,
  super.scrollingType,
  super.shape,
  super.transform,
  super.transformGravity,
  super.visibility,
  super.width,
  super.widthState,
  super.widthMax,
  super.widthMin,

  /// ANIMATION PROPERTIES
  super.animation,
  super.animationType,

  /// BACKDROP PROPERTIES
  super.backdropFilter,
  super.backdropMode,

  /// BORDER PROPERTIES
  super.borderColor,
  super.borderColorState,
  super.borderSize,
  super.borderSizeState,
  super.borderHorizontal,
  super.borderHorizontalState,
  super.borderVertical,
  super.borderVerticalState,
  super.borderTop,
  super.borderTopState,
  super.borderBottom,
  super.borderBottomState,
  super.borderStart,
  super.borderStartState,
  super.borderEnd,
  super.borderEndState,
  super.borderStrokeAlign,

  /// BORDER RADIUS PROPERTIES
  super.borderRadius,
  super.borderRadiusState,
  super.borderRadiusBL,
  super.borderRadiusBLState,
  super.borderRadiusBR,
  super.borderRadiusBRState,
  super.borderRadiusTL,
  super.borderRadiusTLState,
  super.borderRadiusTR,
  super.borderRadiusTRState,

  /// INDICATOR PROPERTIES
  super.indicatorVisible,

  /// MARGIN PROPERTIES
  super.margin,
  super.marginHorizontal,
  super.marginVertical,
  super.marginTop,
  super.marginBottom,
  super.marginStart,
  super.marginEnd,
  super.marginCustom,

  /// OPACITY PROPERTIES
  super.opacity,
  super.opacityState,
  super.opacityAlwaysIncludeSemantics,

  /// PADDING PROPERTIES
  super.padding,
  super.paddingHorizontal,
  super.paddingVertical,
  super.paddingTop,
  super.paddingBottom,
  super.paddingStart,
  super.paddingEnd,
  super.paddingCustom,

  /// SHADOW PROPERTIES
  super.shadow,
  super.shadowBlurRadius,
  super.shadowBlurStyle,
  super.shadowColor,
  super.shadowType,
  super.shadowSpreadRadius,
  super.shadowHorizontal,
  super.shadowVertical,
  super.shadowStart,
  super.shadowEnd,
  super.shadowTop,
  super.shadowBottom,

  /// CHILD PROPERTIES

  /// ICON PROPERTIES
  this.icon,
  this.iconBuilder,
  this.iconTint,
  this.iconTintMode = BlendMode.srcIn,
  this.iconSize = 50,
  this.iconSpacing = 24,
  this.iconVisible = true,
  this.iconController,

  /// HEADER PROPERTIES
  this.header,
  this.headerBuilder,
  this.headerColor = Colors.black,
  this.headerFontFamily,
  this.headerFontWeight = FontWeight.w500,
  this.headerSize = 24,
  this.headerVisible = true,
  this.headerController,

  /// BODY PROPERTIES
  this.body,
  this.bodyBuilder,
  this.bodyColor = const Color(0xff808080),
  this.bodyFontFamily,
  this.bodyFontWeight = FontWeight.normal,
  this.bodySize = 16,
  this.bodySpacing = 12,
  this.bodyVisible = true,
  this.bodyController,

  /// BUTTON PROPERTIES
  this.buttonBackground,
  this.buttonBorderRadius = 50,
  this.buttonBuilder,
  this.buttonMinWidth = 180,
  this.buttonPaddingX = 24,
  this.buttonPaddingY = 12,
  this.buttonRippleColor,
  this.buttonText,
  this.buttonTextColor,
  this.buttonTextFontFamily,
  this.buttonTextFontWeight = FontWeight.w500,
  this.buttonTextSize = 16,
  this.buttonSpacing = 24,
  this.buttonVisible = true,
  this.buttonController,
  this.onButtonClick,

  /// SECONDARY BUTTON PROPERTIES
  this.secondaryButtonBackground,
  this.secondaryButtonBorderRadius,
  this.secondaryButtonBuilder,
  this.secondaryButtonMinWidth,
  this.secondaryButtonPaddingX,
  this.secondaryButtonPaddingY,
  this.secondaryButtonRippleColor,
  this.secondaryButtonText = "",
  this.secondaryButtonTextColor,
  this.secondaryButtonTextFontFamily,
  this.secondaryButtonTextFontWeight,
  this.secondaryButtonTextSize,
  this.secondaryButtonSpacing = 24,
  this.secondaryButtonVisible = true,
  this.secondaryButtonController,
  this.onSecondaryButtonClick,
});