(Я немного новичок в Eclipse, поэтому прошу прощения за тупость с моей стороны...)
У меня есть несколько редакторов (производных от IEditorPart
) в моем приложении RCP, и возникло требование, чтобы один конкретный редактор был также доступен в модальном диалоговом окне (вместе с некоторыми дополнительными элементами управления), открытым одним из других классов редактора. . Встраиваемый редактор состоит из основного элемента управления просмотра, панели инструментов и пары десятков вспомогательных классов (поставщики меток, компараторы и т. д.).
Варианты передо мной кажутся:
Найдите способ поместить область редактора в стиле
IWorkbenchWindow
в (JFace или SWT)Dialog
.- Not had much luck searching for how to do this
Создайте новый
WorkBenchWindow
с перспективой, в которой видна только область редактора, а не виды. Сделайте это модальным.- On trying this, the new window seemed to inherit things (menus etc) from its parent window.
Рефакторинг рассматриваемого редактора, чтобы он теперь находился в одном элементе управления, а затем внедрите этот элемент управления как в редактор, так и в диалоговое окно.
- Potentially time-consuming, given the number of places the helper classes refer back to the main editor object.
Если выяснится, что это действительно извращенная и антиидиоматическая вещь, которую нужно делать, в терминах «Затмения», можете ли вы предложить более разумный план действий?
Спасибо