0420 펼치고접는 트리노드

IControl을 상속받아서,
기본적인 버튼인데 
그걸 눌러서 펼치거나 접을 수 있음

        -> 이러한 특수한 오브젝트는
            "자기 자신의 min_size를 조정해서 방어할 수 있는 권한이 있다"
            (원래라면 자신의 child만 조정할 수 있다.)

펼치면 자식이 모두 그려지고, 
       min_size가 커지고(=방어),
       모든 자식을 매 프레임마다 업데어트함
접으면 이름 빼고 다 숨기고,
        min_size가 작아지고,
        모든 자식 업데이트를 중지.

이 섹션을 표현하는 노드 종류가 필요하고,
    이 섹션 안에 들어갈 노드 종류가 필요하다.
    (+또한 섹션 안에 들어가는 노드는 레이블을 포함한다.)
    -  Vector2 / 3 에디터
    -  float 슬라이더
    -  checkbox
    -  문자열 입력
    -  스핀박스 (이거 눌렀을 때 옵션 나오는 거는
            defer 렌더링으로 구현하기
            다시말해, 렌더러에 제출할 때 
            LateDraw로 해서
            가장 위에 있게 하기.
       )
    - 컬러피커 (이것도 가장 위에 있어야 함.)

    *** 이것들은 CheckBox 같은 공식적 노드와는 엄연히 다르다.
        노드가 맞긴 하지만, 사용자가 쓸 일은 별로 없는,
        서브 노드같은 개념.