2
我在Eclipse RCP應用程序中有一個自定義圖形EditorPart。如何將啓用Eclipse的自定義ISelectionProvider集成到表達式中?
它設置的createPartControl定製ISelectionProvider(..)方法:
@Override
public void createPartControl(Composite parent) {
// [snip]
getSite().setSelectionProvider((ISelectionProvider)model.getSelection());
}
我有兩個ViewParts聽經ISelectionService選擇更改。當EditorPart中的選擇發生變化時,他們會收到通知。到現在爲止還挺好。
現在,我使用下面的XML添加一個處理程序:
<handlerclass="my.custom.Handler" commandId="org.eclipse.ui.edit.delete"> <enabledWhen> <count value="+"/> </enabledWhen> </handler>
如果EditPart的選擇包含> 0元素,這應使處理器my.custom.Handler,但它沒有。
但是,如果內置選擇提供程序提供的選擇更改爲> 0元素(即由JFace觀衆提供的選擇),則啓用該選項。
任何提示如何將ISelectionProvider的自定義實現與處理程序聲明中使用的表達式框架集成?
你可以發佈你的ISelectionProvider的實現嗎?即在'model.getSelection()返回的類 '我懷疑問題在於你的ISelectionProvider的實現。 – 2011-01-26 14:05:08