Workbench 편집기

Workbench 편집기의 구현은 사용자의 플러그인 및 편집하려는 자원에 특정적이지만 Workbench는 편집기를 빌드하기 위한 일반 구조를 제공합니다. 다음 개념은 모든 Workbench 편집기에 적용됩니다.

편집기 파트 및 해당 입력

편집기는 IEditorPart를 구현해야 하며, 종종 EditorPart 클래스를 확장하여 빌드됩니다.  편집기는 createPartControl 메소드로 사용자 인터페이스를 구현합니다.  이 메소드는 편집기 컨텐츠를 표시하는 JFace 표시기나 SWT 위지트(widget)를 어셈블하는 데 사용됩니다. 

편집기 입력은 편집될 내용에 대한 설명입니다. 편집기 입력이라는 말이 일반적인 표현이긴 하지만 파일 이름으로 생각할 수 있습니다. IEditorInput은 편집기 입력(예: 입력 이름과 편집기 맨 위의 레이블에 입력을 표시하는 데 사용되는 이미지)에 대한 프로토콜을 정의합니다.

편집기 입력 레이블

플랫폼에 두 개의 일반 편집기 입력이 제공됩니다. IFileEditorInput은 파일 시스템의 파일인 입력을 표시합니다.  IStorageEditorInput은 바이트 스트림인 입력을 표시합니다. 이 바이트의 출처는 파일 시스템 이외의 다른 소스입니다.

편집기 입력 재설정

편집기가 진행 중인 편집기의 입력 오브젝트의 바꾸기를 지원할 수 있는 경우 IReusableEditor를 구현해야 합니다. 이 인터페이스를 구현하면 Workbench는 편집기를 "재생"할 수 있습니다. Workbench 사용자 환경 설정을 사용하여 일정한 편집기 수가 열린 후 편집기를 재사용하도록 지시할 수 있습니다.

편집기 입력 탐색 

편집기에서 탐색 히스토리를 구현하려면 INavigationLocationProvider를 구현해야 합니다. 탐색 히스토리를 유지하는 데 필요한 경우 이는 현재 탐색 위치(INavigationLocation)를 요청하는 메커니즘을 Workbench에 제공합니다. Workbench는 탐색 사용자 인터페이스 기술을 처리합니다. INavigationLocation은 표시하는 위치에 편집기를 복원해야 할 경우 통지됩니다.

나머지 편집기 구현은 제공하려는 컨텐츠에 따라 다릅니다.  다음에는 가장 일반적인 편집기 유형인 문서 편집기를 살펴 보겠습니다.