using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;
using System.ComponentModel;
namespace DevComponents.DotNetBar.Controls
{
    [ToolboxItem(false)]
    [Designer("DevComponents.DotNetBar.Design.PageSliderPageDesigner, DevComponents.DotNetBar.Design, Version=14.1.0.37, Culture=neutral,  PublicKeyToken=90f470f34c89ccaf")]
    public class PageSliderPage : Panel
    {
        #region Constructor
        #endregion
        #region Implementation
        private int _PageNumber = 1;
        /// 
        /// Gets or sets page number. Page number determines the order in which pages are displayed inside of the PageSlider control.
        /// 
        [DefaultValue(1), Category("Behavior"), Description("Indicates page number. Page number determines the order in which pages are displayed inside of the PageSlider control.")]
        public int PageNumber
        {
            get { return _PageNumber; }
            set
            {
                if (value != _PageNumber)
                {
                    int oldValue = _PageNumber;
                    _PageNumber = value;
                    OnPageNumberChanged(oldValue, value);
                }
            }
        }
        /// 
        /// Called when PageNumber property has changed.
        /// 
        /// Old property value
        /// New property value
        protected virtual void OnPageNumberChanged(int oldValue, int newValue)
        {
            //OnPropertyChanged(new PropertyChangedEventArgs("PageNumber"));
            
        }
        protected override void OnMouseDown(MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                PageSlider parent = this.Parent as PageSlider;
                if (parent != null) parent.StartPageDrag();
            }
            base.OnMouseDown(e);
        }
        #endregion
    }
}