diff options
Diffstat (limited to 'Xamarin.PropertyEditing.Mac/Controls/Custom/CommonBrushView.cs')
-rw-r--r-- | Xamarin.PropertyEditing.Mac/Controls/Custom/CommonBrushView.cs | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/Xamarin.PropertyEditing.Mac/Controls/Custom/CommonBrushView.cs b/Xamarin.PropertyEditing.Mac/Controls/Custom/CommonBrushView.cs index c9118de..d637b6d 100644 --- a/Xamarin.PropertyEditing.Mac/Controls/Custom/CommonBrushView.cs +++ b/Xamarin.PropertyEditing.Mac/Controls/Custom/CommonBrushView.cs @@ -5,13 +5,16 @@ using Xamarin.PropertyEditing.Drawing; namespace Xamarin.PropertyEditing.Mac { - internal class CommonBrushView : NSView + internal class CommonBrushView + : NSView, IValueView { public CommonBrush Brush { get => (Layer as CommonBrushLayer)?.Brush; set => (Layer as CommonBrushLayer).Brush = value; } + NSView IValueView.NativeView => this; + public CommonBrushView () { Initialize (); @@ -26,6 +29,15 @@ namespace Xamarin.PropertyEditing.Mac { } + void IValueView.SetValue (object value) + { + var brush = value as CommonBrush; + if (value != null && brush == null) + throw new ArgumentException (nameof (value)); + + Brush = brush; + } + private void Initialize () { WantsLayer = true; Layer = new CommonBrushLayer |