using System;

namespace PostCardHitsuji.Ui.RowPanel
{
    public class BaseRowPanel : System.Windows.Forms.UserControl
    {
        /// <summary>
        /// パネルの見せ方・振舞いの種類
        /// 検索用途・情報表示用途 など
        /// </summary>
        public enum PanelTypes
        {
            UpdateType,
            InsertType
        }

        public PanelTypes PanelType { get; set; }

        /// <summary>
        /// データクラス
        /// </summary>
        public Hitsuji.Framework.DataClient.Model.BaseContentModel Model
        {
            get { return model_; }
            set
            {
                model_ = value;
                notifyModelChanged();
            }
        }
        protected Hitsuji.Framework.DataClient.Model.BaseContentModel model_;

        /// <summary>
        /// モデルクラスが更新された時の処理
        /// </summary>
        protected virtual void notifyModelChanged()
        {
            throw new NotImplementedException();
        }

        /// <summary>
        /// パネル表示タイプが更新された時の処理
        /// </summary>
        protected virtual void notifyPanelTypeChanged()
        {
            throw new NotImplementedException();
        }

        protected System.Windows.Forms.Button createButton_ForUpdate()
        {
            var btn = new System.Windows.Forms.Button();
            btn.Size = new System.Drawing.Size(50, 22);
            btn.ForeColor = System.Drawing.Color.Gray;
            btn.BackColor = System.Drawing.Color.LightYellow;
            btn.FlatStyle = System.Windows.Forms.FlatStyle.System;
            return btn;
        }

    }
}
