마법사 대화 상자

이전 예는 지정된 확장점에 마법사를 제공했습니다. 보다 일반적인 또다른 경우는 사용자가 정의한 일부 조치에서 사용자 고유의 플러그인 마법사를 실행하는 경우입니다. Workbench 메뉴 컨트리뷰션에서 Workbench에 조치를 제공할 수 있는 방법을 설명합니다.

포함하고 있는 대화 상자에 마법사를 배치하면 UI에 마법사가 표시됩니다. 마법사 확장에 이러한 세부사항을 제공하면 세부사항이 자동으로 처리됩니다.  고유의 마법사를 실행하는 경우에는, WizardDialog에서 줄 바꾸기하여 표시해야 합니다.

예를 들어, ReadmeCreationWizard는 마법사 대화 상자를 작성하고 ReadmeCreationWizard와 연관시켜 독립적으로 실행될 수 있습니다. 다음 코드 스니펫은 일부 조치 위임에서 이를 수행할 수 있는 방법을 표시한 것입니다 (메소드가 Workbench와 선택사항을 알고 있다고 가정).

public void run(IAction action) {
      // Create the wizard
      ReadmeCreationWizard wizard = new ReadmeCreationWizard();
      wizard.init(getWorkbench(), selection);

      // Create the wizard dialog
      WizardDialog dialog = new WizardDialog
         (getWorkbench().getActiveWorkbenchWindow().getShell(),wizard);
      // Open the wizard dialog
      dialog.open();
   }

플러그인의 사용자 인터페이스에서 어딘가에 마법사를 임베드해야 할 경우 인터페이스 IWizardContainer는 마법사 호스팅에 필요한 프로토콜을 정의합니다.