0419 고도의 세퍼레이터구현
일단 H/VSeparator라는 노드가 있는데,
얘는 입력받아서 콘테이너 안의 노드들을 조정하지 못한다.
(애초에 자신의 parent에 영향끼치는 게 불법이다.)
그리고 중요한 핵심은,
HContainer가 있고,
HSplitContainer가 있는데,
후자의 경우 마우스 입력을 지원해서
드래그하면 자식들의 크기가 바뀐다.
-> 이거 구현은 그냥
vec<control*> m_contens
이거와
vec<Splitter> m_splitter
이거를 연동하면 된다.
다시말해, m_splitter를 순회하면서
마우스를 드래그하고 있다면
Spliiter가 참조하는 2개의
control* m_Left
control* m_Right의
사이즈를 적절히 바꾸면 되는 것이다.
(위치는 바꾸지 않음.)
물론, 스플리터의 개수는 (m_contents.size() - 1) 이며,
모든 유효한 오브젝트 사이사이에 끼어 있다.