내부적으로 사용하는 객체의 equals, hashcode 등이 잘 정의되었다고 가정
트리.addListener(SWT.Expand, new Listener() {
public void handleEvent(Event e) {
if (e.item.getData() instanceof 트리아이템데이터Class) {
트리아이템데이터Class 트리아이템데이터 = (트리아이템데이터Class)e.item.getData();
try {
트리아이템데이터 변경 또는 추가(자식값이면 내부 Map, Array등에 추가)
트리뷰.refresh(false);
트리뷰.expandToLevel(트리아이템데이터, TreeViewer.ALL_LEVELS);
}
catch(Exception ex) {
ex.printStackTrace();
}
}
}
});;