using System;
using Xamarin.Forms;

namespace InABox.Mobile
{
    public class MobileTabStripItem : BindableObject
    {
        
        private readonly BindableProperty TextProperty = BindableProperty.Create(
            nameof(Text),
            typeof(String),
            typeof(MobileTabStripItem),
            "");
        
        public String Text
        {
            get => (String)GetValue(TextProperty);
            set => SetValue(TextProperty, value);
        }
        
        private readonly BindableProperty ImageProperty = BindableProperty.Create(
            nameof(Image),
            typeof(ImageSource),
            typeof(MobileTabStripItem));

        public ImageSource Image
        {
            get => (ImageSource)GetValue(ImageProperty);
            set => SetValue(ImageProperty, value);
        }
        
        private readonly BindableProperty SelectedProperty = BindableProperty.Create(
            nameof(Selected),
            typeof(bool),
            typeof(MobileTabStripItem),
            false);
        
        public bool Selected
        {
            get => (bool)GetValue(SelectedProperty);
            set => SetValue(SelectedProperty, value);
        }
        
        private readonly BindableProperty IndexProperty = BindableProperty.Create(
            nameof(Index),
            typeof(Int32),
            typeof(MobileTabStripItem),
            0);
        
        public Int32 Index
        {
            get => (Int32)GetValue(IndexProperty);
            set => SetValue(IndexProperty, value);
        }
        
        // private readonly BindableProperty IsVisibleProperty = BindableProperty.Create(
        //     nameof(IsVisible),
        //     typeof(bool),
        //     typeof(MobileTabStripItem),
        //     true);
        //
        // public bool IsVisible
        // {
        //     get => (bool)GetValue(IsVisibleProperty);
        //     set => SetValue(IsVisibleProperty, value);
        // }
        
        
    }
}