NavigationPaneThemeData.standard constructor

NavigationPaneThemeData.standard({
  1. required Color disabledColor,
  2. required Duration animationDuration,
  3. required Curve animationCurve,
  4. required Color backgroundColor,
  5. required Color highlightColor,
  6. required Typography typography,
  7. required Color inactiveColor,
  8. required ButtonState<MouseCursor>? inputMouseCursor,
})

Implementation

factory NavigationPaneThemeData.standard({
  required Color disabledColor,
  required Duration animationDuration,
  required Curve animationCurve,
  required Color backgroundColor,
  required Color highlightColor,
  required Typography typography,
  required Color inactiveColor,
  required ButtonState<MouseCursor>? inputMouseCursor,
}) {
  final disabledTextStyle = TextStyle(
    color: disabledColor,
    fontWeight: FontWeight.bold,
  );
  return NavigationPaneThemeData(
    animationDuration: animationDuration,
    animationCurve: animationCurve,
    backgroundColor: backgroundColor,
    highlightColor: highlightColor,
    itemHeaderTextStyle: typography.base,
    selectedTextStyle: ButtonState.resolveWith((states) {
      return states.isDisabled
          ? disabledTextStyle
          : typography.body!.copyWith(color: highlightColor);
    }),
    unselectedTextStyle: ButtonState.resolveWith((states) {
      return states.isDisabled ? disabledTextStyle : typography.body!;
    }),
    cursor: inputMouseCursor,
    labelPadding: EdgeInsets.only(right: 10.0),
    iconPadding: EdgeInsets.symmetric(horizontal: 10.0),
    selectedIconColor: ButtonState.all(highlightColor),
    unselectedIconColor: ButtonState.all(inactiveColor),
  );
}