BasicSplitPaneUI
BasicSplitPaneUI (분할 창용 기본 UI)
SplitPaneUI의 Basic L&F 구현입니다. JSplitPane의 레이아웃과 디바이더 동작을 관리합니다.
본문
JSplitPane은 두 컴포넌트를 나누는 분할 창입니다. 이 UI는 방향(수평/수직), 디바이더 위치, 연속 레이아웃(continuous layout) 여부를 관리합니다. NON_CONTINUOUS_DIVIDER 상수는 불연속 모드에서 사용하는 임시 디바이더의 속성 키입니다.
BasicHorizontalLayoutManager가 두 영역과 디바이더의 위치를 계산하고, divider가 경계 막대 역할을 합니다. propertyChangeListener와 focusListener가 속성 변경과 포커스 이동을 감지합니다.
불연속 레이아웃에서는 드래그 중 실제 분할이 일어나지 않고 nonContinuousLayoutDivider(임시 막대)만 이동하며, 드래그가 끝나야 최종 분할이 적용됩니다. KEYBOARD_DIVIDER_MOVE_OFFSET은 키보드로 디바이더를 움직일 때의 이동 단위입니다.
예외 없이 레이아웃·이벤트·디바이더를 함께 다루므로 커스텀 분할 창 L&F의 토대로 쓰입니다.