/// <summary>
        ///     SearchWindow에서 수정 요청 함수
        /// </summary>
        internal void UpdateSwitchData(SwitchDescriptionData descriptionData, List <SwitchComponentData> componentDataList, List <SwitchStateResultData> stateResultDataList)
        {
            if (null == descriptionData || null == componentDataList || null == stateResultDataList)
            {
                return;
            }

            IsUpdate = true;

            _descriptionData = descriptionData;

            int stateIdx = componentDataList[0].State;

            _stateList = new List <List <SwitchComponentData> >();
            _stateList.Add(new List <SwitchComponentData>());
            for (int i = 0; i < componentDataList.Count; ++i)
            {
                if (stateIdx == componentDataList[i].State)
                {
                    _stateList[stateIdx].Add(componentDataList[i]);
                }
                else
                {
                    ++stateIdx;
                    _stateList.Add(new List <SwitchComponentData>());
                    _stateList[stateIdx].Add(componentDataList[i]);
                }
            }

            _stateResultDataList = new List <SwitchStateResultData>();
            foreach (var stateResultData in stateResultDataList)
            {
                _stateResultDataList.Add(stateResultData);
            }
        }
 /// <summary>
 ///     창을 초기화하는 행동
 /// </summary>
 protected override void ResetEditor()
 {
     IsUpdate             = false;
     _stateIndex          = 0;
     _descriptionData     = new SwitchDescriptionData();
     _stateList           = new List <List <SwitchComponentData> >();
     _stateResultDataList = new List <SwitchStateResultData>();
     AddState();
 }