Вы можете добавить правую кнопку, как в этой теме :
, что можно сделать, добавив кнопку в панель быстрого просмотра и открыв стандартный вид в событии кнопки
Кнопка кнопка =
новая кнопка ((Composite) ((WorkbenchWindow) окно) .getFastViewBar () .getControl (), SWT.PUSH);
, чтобы избежать наложения на событие кнопки, сначала создайте макет папки для этого вида со ссылкой на исходный вид, а затем вызовите действие для добавления вида.
IFolderLayout ViewLayout1 = layout.createFolder ( "ViewLayout1",
IPageLayout.BOTTOM,
0.50f, initalView.ID);
OpenViewAction ov = new OpenViewAction (window, "label", secondview.ID);
ov.run ();
Отображение и минимизация быстрого просмотра программно должны выполняться командой "org.eclipse.ui.views.showView
" с параметром "org.eclipse.ui.views.showView.makeFast
".
См. Eclipse RCP: открыть вид с помощью стандартной команды org.eclipse.ui.handlers.ShowViewHandler
:
Eclipse предоставляет стандартную команду org.eclipse.ui.views.showView
для открытия произвольного представления.
По умолчанию используется обработчик org.eclipse.ui.handlers.ShowViewHandler
. Этот обработчик является хорошим примером того, как вы можете добавить свою собственную команду с аргументами. Требуется два параметра:
- Первый имеет
ID
org.eclipse.ui.views.showView.viewId
и идентифицирует идентификатор представления, который должен быть открыт,
- следующий имеет
ID
org.eclipse.ui.views.showView.makeFast
и определяет, должен ли вид быть открытым как быстрый вид.
Без параметров команда позволит пользователю выбрать, какой вид открыть.
См. Параметр для команд для некоторых примеров
Давайте посмотрим на реальный пример: команда «Показать представление». Команда является общей и может отображать любое представление. Идентификатор представления задается команде в качестве параметра:
<command
name="%command.showView.name"
description="%command.showView.description"
categoryId="org.eclipse.ui.category.views"
id="org.eclipse.ui.views.showView"
defaultHandler="org.eclipse.ui.handlers.ShowViewHandler">
<commandParameter
id="org.eclipse.ui.views.showView.viewId"
name="%command.showView.viewIdParameter"
values="org.eclipse.ui.internal.registry.ViewParameterValues" />
<commandParameter
id="org.eclipse.ui.views.showView.makeFast"
name="%command.showView.makeFastParameter"
optional="true"/>
</command>
Список всех возможных значений параметра задается классом ViewParameterValues
. Класс будет перебирать реестр представлений и возвращать его.
Примечание: просто для полноты, в теории ( эта тема )
Приложения RCP могут отключать быстрый просмотр, вызывая WorkbenchWindowConfigurer.setShowFastViewBar(false)
из своих
WorkbenchAdvisor
s preWindowOpen()
метод.
Это не только скрывает панель быстрого просмотра, но также скрывает пункт меню быстрого просмотра на видах.