﻿using System;
using UnityEngine;
using UnityEngine.UI;

namespace JLGames.RocketDriver.Samples.i18nDemo
{
    [Serializable]
    public class I18NDemoLang
    {
        public bool Default;
        public string LangName;

        public override string ToString()
        {
            return $"{{Lang={LangName}, Default={Default}}}";
        }
    }

    public class I18NDemoLangNode : MonoBehaviour
    {
        public void UpdateView(I18NDemoLang info)
        {
            var toggleDefault = GetComponent<Toggle>();
            toggleDefault.isOn = info.Default;
            var inputLangName = transform.GetChild(1).GetComponent<Text>();
            inputLangName.text = info.LangName;
            gameObject.name = info.LangName;
        }

        public I18NDemoLang GetViewInfo()
        {
            var toggleDefault = GetComponent<Toggle>();
            var textLangName = transform.GetChild(1).GetComponent<Text>();
            return new I18NDemoLang
            {
                Default = toggleDefault.isOn,
                LangName = textLangName.text.Trim(),
            };
        }
    }
}