diff --git a/appveyor.yml b/appveyor.yml
index 76f991d38e..3c36c2fcd3 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -1,4 +1,4 @@
-os: Visual Studio 2017 RC
+os: Visual Studio 2017
platform:
- Any CPU
configuration:
@@ -11,10 +11,10 @@ environment:
secure: OtVfyN3ErqQrDTnWH2HDfJDlCiu/i4/X4wFmK3ZXXP7HmCiXYPSbTjMPwwdOxRaK
MYGET_API_URL: https://www.myget.org/F/avalonia-ci/api/v2/package
install:
- - if not exist dotnet-1.0.1.exe appveyor DownloadFile https://go.microsoft.com/fwlink/?linkid=843448 -FileName "dotnet-1.0.1.exe"
- if not exist gtk-sharp-2.12.26.msi appveyor DownloadFile http://download.xamarin.com/GTKforWindows/Windows/gtk-sharp-2.12.26.msi
- - msiexec /i gtk-sharp-2.12.26.msi /qn /norestart
- - cmd: call dotnet-1.0.1.exe /quiet
+ - if not exist dotnet-1.0.1.exe appveyor DownloadFile https://go.microsoft.com/fwlink/?linkid=843448 -FileName "dotnet-1.0.1.exe"
+ - ps: Start-Process -FilePath "msiexec" -ArgumentList "/i gtk-sharp-2.12.26.msi /quiet /qn /norestart" -Wait
+ - ps: Start-Process -FilePath "dotnet-1.0.1.exe" -ArgumentList "/quiet" -Wait
- cmd: set PATH=%programfiles(x86)%\GtkSharp\2.12\bin\;%PATH%
before_build:
- git submodule update --init
diff --git a/src/Avalonia.Visuals/Media/ImageBrush.cs b/src/Avalonia.Visuals/Media/ImageBrush.cs
index 85c1f6c71a..69b98fd35c 100644
--- a/src/Avalonia.Visuals/Media/ImageBrush.cs
+++ b/src/Avalonia.Visuals/Media/ImageBrush.cs
@@ -8,7 +8,7 @@ namespace Avalonia.Media
///
/// Paints an area with an .
///
- public class ImageBrush : TileBrush, IImageBrush
+ public class ImageBrush : TileBrush, IImageBrush, IMutableBrush
{
///
/// Defines the property.
@@ -17,14 +17,14 @@ namespace Avalonia.Media
AvaloniaProperty.Register("Source");
///
- /// Initializes a new instance of the class.
+ /// Initializes a new instance of the class.
///
public ImageBrush()
{
}
///
- /// Initializes a new instance of the class.
+ /// Initializes a new instance of the class.
///
/// The image to draw.
public ImageBrush(IBitmap source)
@@ -40,5 +40,11 @@ namespace Avalonia.Media
get { return GetValue(SourceProperty); }
set { SetValue(SourceProperty, value); }
}
+
+ ///
+ IBrush IMutableBrush.ToImmutable()
+ {
+ return new Immutable.ImmutableImageBrush(this);
+ }
}
}
diff --git a/src/Avalonia.Visuals/Media/LinearGradientBrush.cs b/src/Avalonia.Visuals/Media/LinearGradientBrush.cs
index 33eea4fbad..6c0d500343 100644
--- a/src/Avalonia.Visuals/Media/LinearGradientBrush.cs
+++ b/src/Avalonia.Visuals/Media/LinearGradientBrush.cs
@@ -6,7 +6,7 @@ namespace Avalonia.Media
///
/// A brush that draws with a linear gradient.
///
- public sealed class LinearGradientBrush : GradientBrush, ILinearGradientBrush
+ public sealed class LinearGradientBrush : GradientBrush, ILinearGradientBrush, IMutableBrush
{
///
/// Defines the property.
@@ -41,5 +41,11 @@ namespace Avalonia.Media
get { return GetValue(EndPointProperty); }
set { SetValue(EndPointProperty, value); }
}
+
+ ///
+ IBrush IMutableBrush.ToImmutable()
+ {
+ return new Immutable.ImmutableLinearGradientBrush(this);
+ }
}
}
\ No newline at end of file
diff --git a/src/Avalonia.Visuals/Media/RadialGradientBrush.cs b/src/Avalonia.Visuals/Media/RadialGradientBrush.cs
index b721e19138..9f9c2733ec 100644
--- a/src/Avalonia.Visuals/Media/RadialGradientBrush.cs
+++ b/src/Avalonia.Visuals/Media/RadialGradientBrush.cs
@@ -7,7 +7,7 @@ namespace Avalonia.Media
/// Paints an area with a radial gradient. A focal point defines the beginning of the gradient,
/// and a circle defines the end point of the gradient.
///
- public sealed class RadialGradientBrush : GradientBrush, IRadialGradientBrush
+ public sealed class RadialGradientBrush : GradientBrush, IRadialGradientBrush, IMutableBrush
{
///
/// Defines the property.
@@ -61,5 +61,11 @@ namespace Avalonia.Media
get { return GetValue(RadiusProperty); }
set { SetValue(RadiusProperty, value); }
}
+
+ ///
+ IBrush IMutableBrush.ToImmutable()
+ {
+ return new Immutable.ImmutableRadialGradientBrush(this);
+ }
}
}
\ No newline at end of file
diff --git a/src/Avalonia.Visuals/Media/VisualBrush.cs b/src/Avalonia.Visuals/Media/VisualBrush.cs
index 85ccf7afc9..a6d2b8ae8f 100644
--- a/src/Avalonia.Visuals/Media/VisualBrush.cs
+++ b/src/Avalonia.Visuals/Media/VisualBrush.cs
@@ -8,7 +8,7 @@ namespace Avalonia.Media
///
/// Paints an area with an .
///
- public class VisualBrush : TileBrush, IVisualBrush
+ public class VisualBrush : TileBrush, IVisualBrush, IMutableBrush
{
///
/// Defines the property.
@@ -40,5 +40,11 @@ namespace Avalonia.Media
get { return GetValue(VisualProperty); }
set { SetValue(VisualProperty, value); }
}
+
+ ///
+ IBrush IMutableBrush.ToImmutable()
+ {
+ return new Immutable.ImmutableVisualBrush(this);
+ }
}
}