Вопрос:

Можно ли скрыть / удалить произвольные пункты контекстного меню в Eclipse (3.6)

eclipse eclipse-plugin contextmenu eclipse-3.6

12223 просмотра

1 ответ

1693 Репутация автора

Мой вопрос можно разделить на три:

Можно ли скрыть / удалить произвольные пункты контекстного меню в Eclipse (3.6) с помощью ...

  1. стандартный интерфейс?
  2. какой-нибудь существующий плагин?
  3. пользовательский плагин?

Мне не удалось найти способы сделать это методами 1 и 2. Если единственным вариантом является создание собственного плагина, может ли кто-нибудь подтолкнуть меня в правильном направлении, с чего начать (у меня есть некоторый опыт работы с Java, но не с плагином Eclipse). модули).

Автор: Vilius Normantas Источник Размещён: 14.08.2010 06:35

Ответы (1)


20 плюса

905709 Репутация автора

Решение

Вы можете скрыть меню или пункты меню через стандартный графический интерфейс: см. Справку

Чтобы скрыть пункт меню или кнопку панели инструментов:

  • Переключитесь на перспективу, которую вы хотите настроить.
  • Выбрать Window > Customize Perspective....
  • Откройте вкладку Видимость меню или Видимость панели инструментов.
  • Найдите предмет, который вы хотите скрыть.
  • Снимите флажок рядом с элементом. Снимите флажок с меню, чтобы скрыть всех его детей.
  • Нажмите кнопку ОК, чтобы изменения вступили в силу.

Но это скроет эту запись от всех меню (контекстного или нет), в котором она присутствует.
Так что это может быть не так детально, как вы хотите через графический интерфейс.


Вы также можете попробовать это через плагин (см. Также вклад в меню )

Первые шаги довольно стандартны для использования расширений в Eclipse.

  • Откройте plugin.xmlфайл и добавьте org.eclipse.ui.activities extension.
  • Затем создайте узел активности и присвойте ему уникальный идентификатор.
  • Затем создайте activityPatternBindingузел и используйте уникальный идентификатор для действия, чтобы найти узел шаблона для узла действия. Узел требует , чтобы вы передаете регулярное выражение для строки идентификатора элемента пользовательского интерфейса , который вы хотите скрыть.
    activityPatternBinding

Проблема в том, что, по-видимому, существует как минимум 3 способа добавления элементов меню и кнопок панели инструментов в пользовательский интерфейс.

  • Первый способ - через новые расширения команд / меню.
  • Второй путь - через старое расширение ActionSets.
  • Кроме того, существуют другие элементы пользовательского интерфейса, которые, по-видимому, жестко запрограммированы в Workbench, не имеют строк идентификаторов и не могут быть скрыты с помощью расширения операций. К счастью, этого третьего элемента пользовательского интерфейса немного.

Учитывая, что вы говорите о последней версии Eclipse, я скопирую только первый способ:

1 / Используйте Plug-In Spy

Первый способ - использовать Plug-In Spy.
Нажмите alt- shift- F2и нажмите на элемент меню или кнопку панели инструментов, которую вы хотите скрыть.
Если под заголовком «идентификатор определения активного действия» есть строка идентификатора, то вам повезло.
Этот элемент был добавлен с использованием расширения команды, и вы можете использовать этот идентификатор в качестве аргумента шаблона для расширения деятельности.
Но не все элементы, которые были добавлены с использованием расширения команды, представляют строку идентификатора шпиону плагина.

Как примечание, строки идентификатора разделены точкой.
Например, идентификатор кнопки может быть " org.eclipse.ui.navigate.backwardHistory".
Регулярные выражения используют точку для обозначения любого символа. К счастью, точка, используемая в качестве символа подстановки, совпадает с действительными символами периода, поэтому вам не нужно избегать их, если вы этого не хотите. Я считаю, что это немного облегчает чтение, если их не экранировать, и маловероятно, что это приведет к неоднозначным совпадениям.

Автор: VonC Размещён: 14.08.2010 06:54
Вопросы из категории :
32x32