2016-02-29 50 views
0

是否可以在Eclipse 3.x應用程序中更改導入和導出嚮導的默認圖像?我並不意味着其可以在嚮導擴展點,但圖像在周圍的嚮導調用例如當顯示了被配置嚮導圖像:更改Eclipse RCP 3.x應用程序中的默認io嚮導圖像

IHandlerService service = (IHandlerService) PlatformUI.getWorkbench() 
          .getService(IHandlerService.class); 
service.executeCommand(ActionFactory.IMPORT.getCommandId(), null); 

有用於改變默認圖像爲標準命令的擴展點(保存,另存爲,刪除等):org.eclipse.ui.commandImages。但是,我並沒有發現在進口和出口對話框圖像(嚮導和類別圖標)

類似的東西(應用程序正在使用兼容性層上的Eclipse 4.4上運行一個Eclipse RCP 3.x的應用程序。)

謝謝, 邁克爾

回答

1

我不太確定你的意思是哪個圖像。對於嚮導頂部的大圖像,不支持此操作。

導入/導出嚮導(org.eclipse.ui.internal.dialogs.ImportExportWizard)從org.eclipse.ui.internal.WorkbenchImages獲取圖像。

WorkbenchImages中的路徑被硬編碼爲org.eclipse.ui插件的icons目錄。

嚮導的樹形部分中的圖像來自各個導入/導出嚮導擴展點聲明。

+0

非常感謝您的回答。在org.eclipse.ui.internal.WorkbenchImages'中聲明的圖像是我想改變的圖像。由於沒有正式的方法來改變它們,我把你的答案設定爲接受。但是,似乎可以通過內部API(請參閱我的答案)。 – Michael

0

正如接受的答案中所述,沒有官方方法可以做到這一點,但 可以通過內部類org.eclipse.ui.internal.WorkbenchImagesdeclareImage進行。

在我的我WorkbenchAdvisorinitialize我以下面的方式取代了共享的圖像:

@SuppressWarnings("restriction") 
public class MyWorkbenchAdvisor extends WorkbenchAdvisor { 
    ...  
    @Override 
    public void initialize(IWorkbenchConfigurer conf) { 
    ... 
    try { 
     // wizard icon 
     WorkbenchImages.declareImage(
       IWorkbenchGraphicConstants.IMG_WIZBAN_IMPORT_WIZ, 
       <get image descriptor>, true); 
     // folder icon     
     WorkbenchImages.declareImage(
       ISharedImages.IMG_OBJ_FOLDER, 
       <get image descriptor>, true); 
    }... 

這可以用每個Eclipse版本打破,因爲我訪問內部的API,但它 解決了這個問題對我來說。

相關問題