오래 전 포스팅에서 한번 언급했었던 Annotation을 이용한 EditPartFactory를 정리합니다.
설치
위의 플러그인을 plugins 폴더에 넣은 후 이클립스를 재시작합니다.
Dependencies 추가
Plug-in Manifest Editor에서
kr.co.vicki.gef.mvc
의 Dependency를 추가합니다.
구현
[Listing 1] 기존 방식의 EditPartFactory
[Listing 2] Viewer에 EditPartFactory 적용
model 객체의 개수가 적다면 if ~ else if 로 작성하는데도 별 문제가 없겠지만, 20~30 여개의 model이 있다면 여간 귀찮은 일이 아닐 수 없습니다.
[Listing 3] model에 직접 연관된 EditPart 설정
[Listing 4] Viewer에 AnnotatedEditPartFactory 적용
AnnotatedEditPartFactory에 의해서 어노테이션으로 설정된 EditPart를 반환하게 됩니다.
(AnnotatedTreeEditPartFactory는 EditTreePart를 반환하게 됩니다.)
왜 플러그인 이름을 그렇게 지었냐고 물어보신다면... 그냥 웃지요...
아직 GEF를 하시는 분이 계실지는 모르겠으나 삽질을 줄일 수 있는 방법을 서로 공유했으면 좋겠습니다.
댓글
댓글 쓰기