2015-05-13 98 views
1

我正在嘗試使用自定義標籤提供程序將工具提示添加到基於CommonNavigator類的導航器中。然而,工具提示永遠不會顯示,實現的方法永遠不會被調用。我在Eclipe Bug Report網站上看​​到了一些錯誤,但我不確定這是因爲錯誤還是因爲我做錯了什麼,以及是否有解決方法。Eclipse RCP CommonNavigator工具提示?

這些是主要的類(我改變了類名)。

Navigator視圖:

public class MyNavigatorView extends CommonNavigator { 
    //... 
    @Override 
    public void initListeners(TreeViewer viewer) { 
     ColumnViewerToolTipSupport.enableFor(viewer); 
     //... 
    } 
} 

標籤提供類:

public class MyNavigatorLabelContentProvider extends CellLabelProvider implements ILabelProvider, IStyledLabelProvider { 
    //... 
    @Override 
    public String getToolTipText(Object element) { 
     return "Tooltip Test"; 
    } 

    @Override 
    public boolean useNativeToolTip(Object object) { 
     return true; 
    } 
} 

是否有這個工作解決方案?

感謝

+0

如下:https://www.eclipse.org/forums/index.php/t/167586/ –

+0

謝謝格雷格,一如既往非常有幫助,如果其他人有同樣的問題,我會更新我的文章發佈解決方法。祝你今天愉快! – breakline

回答

0

對於其他人誰都有同樣的問題:

鏈接格雷格-449提供的解決這個問題。

我不得不重寫createCommonViewer方法在我看來,並手動設置標籤提供:

public class MyNavigatorView extends CommonNavigator { 
    //... 
    @Override 
    public void initListeners(TreeViewer viewer) { 
     ColumnViewerToolTipSupport.enableFor(viewer); 
     //... 
    } 

    @Override 
    protected CommonViewer createCommonViewer(Composite aParent) { 
     CommonViewer cv = super.createCommonViewer(aParent); 
     cv.setLabelProvider(new MyNavigatorLabelContentProvider()); 
     return cv; 
    } 

}