fabulous-dev / Fabulous

Declarative UI framework for cross-platform mobile & desktop apps, using MVU and F# functional programming
https://fabulous.dev
Apache License 2.0
1.15k stars 121 forks source link

Maui Brushes #1007

Closed edgarfgp closed 2 years ago

edgarfgp commented 2 years ago

This PR adds support for Maui Brushes : https://docs.microsoft.com/en-us/dotnet/maui/user-interface/brushes/

Label("Create a SolidColorBrush")
    .textColor(Colors.White.ToFabColor())
    .size(200., 120.)
    .background(SolidColorBrush(Colors.LightCoral.ToFabColor()))

Label("Create a horizontal linear gradient")
    .textColor(Colors.White.ToFabColor())
    .size(200., 120.)
    .background(
        LinearGradientBrush(endPoint = Point(1., 0.)) {
            GradientStop(0.1, Colors.Yellow.ToFabColor())
            GradientStop(1.0, Colors.Green.ToFabColor())
        }
    )

Label("Create a vertical linear gradient")
    .textColor(Colors.White.ToFabColor())
    .size(200., 120.)
    .background(
        LinearGradientBrush(endPoint = Point(0., 1.)) {
            GradientStop(0.1, Colors.Yellow.ToFabColor())
            GradientStop(1.0, Colors.Green.ToFabColor())
        }
    )

Label("Create a diagonal linear gradient")
    .textColor(Colors.White.ToFabColor())
    .size(200., 120.)
    .background(
        LinearGradientBrush() {
            GradientStop(0.1, Colors.Yellow.ToFabColor())
            GradientStop(1.0, Colors.Green.ToFabColor())
        }
    )

Label("RadialGradientBrush")
    .size(200., 120.)
    .textColor(Colors.White.ToFabColor())
    .background(
        RadialGradientBrush() {
            GradientStop(0.1, Colors.Red.ToFabColor())
            GradientStop(1.0, Colors.DarkBlue.ToFabColor())
        }
    )

Label("RadialGradientBrush 2")
    .size(200., 120.)
    .textColor(Colors.White.ToFabColor())
    .background(
        RadialGradientBrush(Point(0., 0.)) {
            GradientStop(0.1, Colors.Red.ToFabColor())
            GradientStop(1.0, Colors.DarkBlue.ToFabColor())
        }
    )

Label("RadialGradientBrush 3")
    .size(200., 120.)
    .textColor(Colors.White.ToFabColor())
    .background(
        RadialGradientBrush(Point(1.0, 1.0)) {
            GradientStop(0.1, Colors.Red.ToFabColor())
            GradientStop(1.0, Colors.DarkBlue.ToFabColor())
        }
    )

Simulator Screen Shot - iPhone 11 - 2022-09-07 at 13 34 12