using System;
using Xamarin.Forms;

namespace InABox.Mobile
{
    public class MobilePageStackItem : BindableObject
    {
        private readonly BindableProperty ContentProperty = BindableProperty.Create(
            nameof(Content),
            typeof(View),
            typeof(MobilePageStackItem)
        );
        
        public View Content 
        { 
            get => GetValue(ContentProperty) as View; 
            set => SetValue(ContentProperty, value); 
        }
        
        public event EventHandler Appearing;
        public void DoAppearing() => Appearing?.Invoke(this, EventArgs.Empty);
        
        public event EventHandler Disappearing;
        public void DoDisappearing() => Disappearing?.Invoke(this, EventArgs.Empty);
    }
}