﻿using System.Collections;
using System.Collections.Generic;
using UnityEngine;

namespace GameAnvilSampleForTemplate {
    public class ButtonContainer : MonoBehaviour {
        [SerializeField]
        Transform contentsRoot = null;
        [SerializeField]
        ButtonElement buttonElementDummy = null;

        Dictionary<string, ButtonElement> elementMap = new Dictionary<string, ButtonElement>();

        public ButtonElement addButton(string name) {
            if (elementMap.ContainsKey(name)) {
                return elementMap[name];
            }
            ButtonElement newElement = GameObject.Instantiate<ButtonElement>(buttonElementDummy, contentsRoot);
            newElement.text.text = name;
            newElement.gameObject.SetActive(true);
            elementMap.Add(name, newElement);
            return newElement;
        }

        public void Clear() {
            foreach(var element in elementMap) {
                DestroyImmediate(element.Value.gameObject);
            }
            elementMap.Clear();
        }
    }
}