title: Custom Button to have default upperCase text on child Widget
body: <p>I am trying to build a Custom Button which has by default the Text as uppercase.</p>
  
  <p>but a normal <code>RawMaterialButton</code> take a child how can I modify it so the text is always uppercase.</p>
  
  <p>this is my button</p>
  
  <pre><code>import 'package:flutter/material.dart';
  
  
  class DemoButton extends MaterialButton {
  
    final BorderRadius borderRadius;
  
    const DemoButton ({
      this.borderRadius,
      Key key,
      @required VoidCallback onPressed,
      Color textColor,
      Color disabledTextColor,
      Color color,
      Color disabledColor,
      double elevation,
      Widget child,
      EdgeInsetsGeometry padding,
      ShapeBorder shape,
    }) : assert(elevation == null || elevation &gt;= 0.0),
    super(
          key: key,
          onPressed: onPressed,
          textColor: textColor,
          disabledTextColor: disabledTextColor,
          color: color,
          disabledColor: disabledColor,
          elevation: elevation,
          child: child,
          padding: padding,
          shape: shape,
        );
  
    Widget build(BuildContext context) {
  
      final ThemeData theme = Theme.of(context);
      final ButtonThemeData buttonTheme = ButtonTheme.of(context);
  
      return RawMaterialButton(
          onPressed: onPressed,
          clipBehavior: clipBehavior ?? Clip.none,
          fillColor: buttonTheme.getFillColor(this),
          textStyle: theme.textTheme.button.copyWith(color: buttonTheme.getTextColor(this)),
          padding: buttonTheme.getPadding(this),
          shape: buttonTheme.getShape(this) == shape ? buttonTheme.getShape(this) : RoundedRectangleBorder(borderRadius: BorderRadius.all(Radius.circular(20.0))),
          child: child,
        );
  </code></pre>
  
  <p>this is what i tried but obviously it's wrong.</p>
  
  <p><code>child: Text(''.toUpperCase()),</code></p>
  
  <p>I also tried an <code>if</code> condition as the shape but I cannot generalize it.</p>