0420 펼치고접는 트리노드
IControl을 상속받아서,
기본적인 버튼인데
그걸 눌러서 펼치거나 접을 수 있음
-> 이러한 특수한 오브젝트는
"자기 자신의 min_size를 조정해서 방어할 수 있는 권한이 있다"
(원래라면 자신의 child만 조정할 수 있다.)
펼치면 자식이 모두 그려지고,
min_size가 커지고(=방어),
모든 자식을 매 프레임마다 업데어트함
접으면 이름 빼고 다 숨기고,
min_size가 작아지고,
모든 자식 업데이트를 중지.
이 섹션을 표현하는 노드 종류가 필요하고,
이 섹션 안에 들어갈 노드 종류가 필요하다.
(+또한 섹션 안에 들어가는 노드는 레이블을 포함한다.)
- Vector2 / 3 에디터
- float 슬라이더
- checkbox
- 문자열 입력
- 스핀박스 (이거 눌렀을 때 옵션 나오는 거는
defer 렌더링으로 구현하기
다시말해, 렌더러에 제출할 때
LateDraw로 해서
가장 위에 있게 하기.
)
- 컬러피커 (이것도 가장 위에 있어야 함.)
*** 이것들은 CheckBox 같은 공식적 노드와는 엄연히 다르다.
노드가 맞긴 하지만, 사용자가 쓸 일은 별로 없는,
서브 노드같은 개념.