using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Data;

namespace FLY.HeatingHelper.UI.Converter
{
    public class StateToMessage : IValueConverter
    {
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            StateCode s = (StateCode)value;
            switch (s)
            {
                case StateCode.STC_IDLE:
                    return "等待新数据";
                case StateCode.STC_NODAT:
                    return "没有数据";
                case StateCode.STC_READING:
                    return "正在读取数据...";
                case StateCode.STC_UPDATING:
                    return "正在检查新数据...";
            }
            return "未知状态";
        }

        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
        {
            throw new NotImplementedException();
        }
    }

    public class LockFramesConverter : IValueConverter
    {
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            int locks = (int)value;
            string n = parameter.ToString();
            switch (n)
            {
                case "0":
                    return locks == 0;
                case "1":
                    return locks == 1;
                case "2":
                    return locks == 2;
            }
            return false;
        }

        public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
        {
            return int.Parse(parameter.ToString());
        }
    }
}