Я работаю над приложением rcp с панелью инструментов для быстрого доступа к определенным действиям, включая отмену и повтор.Моя проблема в том, что эти два конкретных действия не отображаются на панели инструментов.Я обнаружил причину в файле workbench.xmi
, который создается при запуске приложения.Тег persistedState
с атрибутом key="persp.hiddenItems"
содержит persp.hideToolbarSC:org.eclipse.ui.edit.undo,persp.hideToolbarSC:org.eclipse.ui.edit.redo
в атрибуте value="..."
.Если я удаляю эти записи из workbench.xmi
, действия «Отменить» и «Повторить» отображаются на панели инструментов, как и должно быть.
Мой вопрос: что я могу сделать, чтобы org.eclipse.ui.edit.undo
и org.eclipse.ui.edit.redo
незакончить в этом атрибуте, чтобы начать с?
Я первоначально использовал Eclipse Neon без этой проблемы, но при обновлении до затмения 2018-12 это начало происходить.
Редактировать:
Я наконец заставил его работать, изменив идентификаторы моих действий отмены и повтора на что-то другое.Мне пришлось установить идентификатор с помощью setId(...)
и setActionDefinedId(...)
в конструкторах действий, а затем команды должны были быть определены в plugin.xml
в <extension point="org.eclipse.ui.commands">
в теге <command id="..." name="Undo"></command>
.
ЭтоРешение выглядит скорее как обходной путь, чем реальное решение, но оно работает для меня.