StreamSplitButton.icon constructor

  1. @experimental
StreamSplitButton.icon({
  1. Key? key,
  2. required Widget leadingIcon,
  3. required Widget trailingIcon,
  4. VoidCallback? onLeadingPressed,
  5. VoidCallback? onTrailingPressed,
  6. StreamSplitButtonVariant variant = .regular,
  7. String? leadingTooltip,
  8. String? trailingTooltip,
  9. StreamSplitButtonStyle? themeStyle,
})

Creates a split button with an icon in each half.

leadingIcon labels the leading half and trailingIcon the trailing one. Both are configurable so the trailing half can point the caret at whatever it opens — StreamIcons.caretDown for a menu below, StreamIcons.caretUp for one above.

A half with a null callback is disabled; the control as a whole only takes on its disabled surface once both halves are.

Implementation

@experimental
StreamSplitButton.icon({
  super.key,
  required Widget leadingIcon,
  required Widget trailingIcon,
  VoidCallback? onLeadingPressed,
  VoidCallback? onTrailingPressed,
  StreamSplitButtonVariant variant = .regular,
  String? leadingTooltip,
  String? trailingTooltip,
  StreamSplitButtonStyle? themeStyle,
}) : props = .new(
       leadingIcon: leadingIcon,
       trailingIcon: trailingIcon,
       onLeadingPressed: onLeadingPressed,
       onTrailingPressed: onTrailingPressed,
       variant: variant,
       leadingTooltip: leadingTooltip,
       trailingTooltip: trailingTooltip,
       themeStyle: themeStyle,
     );