Добавление проекции

Если приложение расширенного клиента использует интерфейс WorkbenchAdvisor в качестве основного средства для настройки рабочей среды, необходимо задать проекцию, которая будет показана в окне рабочей среды. Эта проекция должна быть определена в классе советника рабочей среды приложения. Класс BrowserAdvisor содержит следующий код:

	public String getInitialWindowPerspectiveId() {
		return BrowserApp.BROWSER_PERSPECTIVE_ID; 
	}

Класс BrowserApp содержит следующие определения:

	public static final String PLUGIN_ID = "org.eclipse.ui.examples.rcp.browser";
	public static final String BROWSER_PERSPECTIVE_ID = PLUGIN_ID + ".browserPerspective";

Соответствующая проекция определена в манифесте модуля браузера:

   <extension
         point="org.eclipse.ui.perspectives">
      <perspective
            id="org.eclipse.ui.examples.rcp.browser.browserPerspective"
            name="%perspectives.browser.name"
            class="org.eclipse.ui.examples.rcp.browser.BrowserPerspectiveFactory"
            fixed="true"/>
   </extension>

BrowserPerspectiveFactory отвечает за создание макета панелей.

	public void createInitialLayout(IPageLayout layout) {
		layout.addView(BrowserApp.BROWSER_VIEW_ID, IPageLayout.RIGHT, .25f, IPageLayout.ID_EDITOR_AREA);
		layout.addPlaceholder(BrowserApp.HISTORY_VIEW_ID, IPageLayout.LEFT, .3f, IPageLayout.ID_EDITOR_AREA); 
		IViewLayout historyLayout = layout.getViewLayout(BrowserApp.HISTORY_VIEW_ID);
		historyLayout.setCloseable(true);
		layout.setEditorAreaVisible(false);
	}

Проекция браузера определяет две панели (одну видимую, с заменителем для другой) и делает область редактирования невидимой. Полное описание проекций и соответствующих им макетов можно найти в разделе Проекции.