using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace VSview
{
    public class Setting : BaseViewModel
    {
        #region Constructors
        /// <summary>
        /// Default constructor
        /// </summary>
        public Setting()
        {
            SetupLists();
        }
        #endregion

        #region Public properties

        /// <summary>
        /// Property storing detector connection status
        /// </summary>
        public bool IsConnected { get; set; }

        /// <summary>
        /// Property storing autozero state
        /// </summary>
        public bool AutoZero { get; set; }

        /// <summary>
        /// Property storing zeroing state
        /// </summary>
        public bool Zero { get; set; }      

        /// <summary>
        /// Property storing detector operating mode
        /// </summary>
        public string DetectorMode { get; set; }

        /// <summary>
        /// Property storing preheat selection index
        /// </summary>
        public int PreaheatSelection { get; set; }

        /// <summary>
        /// Collection of preheat times
        /// </summary>
        public ObservableCollection<string> PreheatTimes { get; set; }      

        /// <summary>
        /// Property storing language selection index
        /// </summary>
        public int LanguageSelection { get; set; }

        /// <summary>
        /// Collection of availiable languages
        /// </summary>
        public ObservableCollection<string> Languages { get; set; }
        #endregion


        #region Methods

        /// <summary>
        /// Sets up default values for observable collections
        /// </summary>
        private void SetupLists()
        {

            PreheatTimes = new ObservableCollection<string>()
            {
                "5 minute",
                "9 minute",
                "15 minute"
            };
                     

            Languages = new ObservableCollection<string>()
            {
                "Czech",
                "English"
            };

        }
        #endregion
    }
}
