summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Core/MasterDetailPage.cs
diff options
context:
space:
mode:
authorkingces95 <kingces95@users.noreply.github.com>2017-04-11 14:02:06 -0400
committerRui Marinho <me@ruimarinho.net>2017-04-11 19:02:06 +0100
commit093a4efa2da9cb681890158ca8ee9bb6f30b0a8c (patch)
treeccc17255876e40d2c845d7b2c62dfc930156729d /Xamarin.Forms.Core/MasterDetailPage.cs
parent7458ca37330f424bf7fb1447580b0fa9c34c6db4 (diff)
downloadxamarin-forms-093a4efa2da9cb681890158ca8ee9bb6f30b0a8c.tar.gz
xamarin-forms-093a4efa2da9cb681890158ca8ee9bb6f30b0a8c.tar.bz2
xamarin-forms-093a4efa2da9cb681890158ca8ee9bb6f30b0a8c.zip
Implicit impl of controller ifaces (#807)
* Simplify ICtrl callsites * Rebase fix
Diffstat (limited to 'Xamarin.Forms.Core/MasterDetailPage.cs')
-rw-r--r--Xamarin.Forms.Core/MasterDetailPage.cs44
1 files changed, 22 insertions, 22 deletions
diff --git a/Xamarin.Forms.Core/MasterDetailPage.cs b/Xamarin.Forms.Core/MasterDetailPage.cs
index 4fe1c49d..b628a427 100644
--- a/Xamarin.Forms.Core/MasterDetailPage.cs
+++ b/Xamarin.Forms.Core/MasterDetailPage.cs
@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
+using System.ComponentModel;
using Xamarin.Forms.Internals;
using Xamarin.Forms.Platform;
@@ -24,8 +25,6 @@ namespace Xamarin.Forms
Rectangle _masterBounds;
- IPageController PageController => this as IPageController;
-
public Page Detail
{
get { return _detail; }
@@ -42,9 +41,9 @@ namespace Xamarin.Forms
OnPropertyChanging();
if (_detail != null)
- PageController.InternalChildren.Remove(_detail);
+ InternalChildren.Remove(_detail);
_detail = value;
- PageController.InternalChildren.Add(_detail);
+ InternalChildren.Add(_detail);
OnPropertyChanged();
}
}
@@ -80,9 +79,9 @@ namespace Xamarin.Forms
OnPropertyChanging();
if (_master != null)
- PageController.InternalChildren.Remove(_master);
+ InternalChildren.Remove(_master);
_master = value;
- PageController.InternalChildren.Add(_master);
+ InternalChildren.Add(_master);
OnPropertyChanged();
}
}
@@ -93,9 +92,11 @@ namespace Xamarin.Forms
set { SetValue(MasterBehaviorProperty, value); }
}
- bool IMasterDetailPageController.CanChangeIsPresented { get; set; } = true;
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool CanChangeIsPresented { get; set; } = true;
- Rectangle IMasterDetailPageController.DetailBounds
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public Rectangle DetailBounds
{
get { return _detailBounds; }
set
@@ -107,7 +108,8 @@ namespace Xamarin.Forms
}
}
- Rectangle IMasterDetailPageController.MasterBounds
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public Rectangle MasterBounds
{
get { return _masterBounds; }
set
@@ -119,7 +121,8 @@ namespace Xamarin.Forms
}
}
- bool IMasterDetailPageController.ShouldShowSplitMode
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public bool ShouldShowSplitMode
{
get
{
@@ -160,7 +163,7 @@ namespace Xamarin.Forms
protected override void OnAppearing()
{
- ((IMasterDetailPageController)this).CanChangeIsPresented = true;
+ CanChangeIsPresented = true;
UpdateMasterBehavior(this);
base.OnAppearing();
}
@@ -173,7 +176,7 @@ namespace Xamarin.Forms
return true;
}
- EventHandler<BackButtonPressedEventArgs> handler = BackButtonPressedInternal;
+ EventHandler<BackButtonPressedEventArgs> handler = BackButtonPressed;
if (handler != null)
{
var args = new BackButtonPressedEventArgs();
@@ -197,25 +200,22 @@ namespace Xamarin.Forms
base.OnParentSet();
}
- event EventHandler<BackButtonPressedEventArgs> BackButtonPressedInternal;
- event EventHandler<BackButtonPressedEventArgs> IMasterDetailPageController.BackButtonPressed
- {
- add { BackButtonPressedInternal += value; }
- remove { BackButtonPressedInternal -= value; }
- }
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public event EventHandler<BackButtonPressedEventArgs> BackButtonPressed;
- void IMasterDetailPageController.UpdateMasterBehavior()
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public void UpdateMasterBehavior()
{
UpdateMasterBehavior(this);
}
internal static void UpdateMasterBehavior(MasterDetailPage page)
{
- if (((IMasterDetailPageController)page).ShouldShowSplitMode)
+ if (page.ShouldShowSplitMode)
{
page.SetValueCore(IsPresentedProperty, true);
if (page.MasterBehavior != MasterBehavior.Default)
- ((IMasterDetailPageController)page).CanChangeIsPresented = false;
+ page.CanChangeIsPresented = false;
}
}
@@ -230,7 +230,7 @@ namespace Xamarin.Forms
static void OnIsPresentedPropertyChanging(BindableObject sender, object oldValue, object newValue)
{
var page = (MasterDetailPage)sender;
- if (!((IMasterDetailPageController)page).CanChangeIsPresented)
+ if (!page.CanChangeIsPresented)
throw new InvalidOperationException(string.Format("Can't change IsPresented when setting {0}", page.MasterBehavior));
}