【发布时间】:2016-10-02 06:42:39
【问题描述】:
我在我的 rcp 应用程序(Eclipse Luna)中添加了 Eclipse 问题视图。在将 IMarker 添加到资源时,它成功地将标记(错误/警告)添加到资源。
但是,如果我尝试打开问题视图,它会显示所有警告和错误,但没有显示图标。
【问题讨论】:
标签: icons eclipse-rcp
我在我的 rcp 应用程序(Eclipse Luna)中添加了 Eclipse 问题视图。在将 IMarker 添加到资源时,它成功地将标记(错误/警告)添加到资源。
但是,如果我尝试打开问题视图,它会显示所有警告和错误,但没有显示图标。
【问题讨论】:
标签: icons eclipse-rcp
问题视图预计 RCP 应用程序顾问已设置了许多共享图像。这通常由IDEWorkbenchAdvisor 完成,但您必须在您的顾问中执行类似的操作。
执行此操作的代码如下所示:
Bundle ideBundle = Platform.getBundle(IDEWorkbenchPlugin.IDE_WORKBENCH);
declareWorkbenchImage(ideBundle,
IDEInternalWorkbenchImages.IMG_ETOOL_PROBLEMS_VIEW,
PATH_EVIEW + "problems_view.png", true); //$NON-NLS-1$
declareWorkbenchImage(ideBundle,
IDEInternalWorkbenchImages.IMG_ETOOL_PROBLEMS_VIEW_ERROR,
PATH_EVIEW + "problems_view_error.png", true); //$NON-NLS-1$
declareWorkbenchImage(ideBundle,
IDEInternalWorkbenchImages.IMG_ETOOL_PROBLEMS_VIEW_WARNING,
PATH_EVIEW + "problems_view_warning.png", true); //$NON-NLS-1$
declareWorkbenchImage(ideBundle,
IDEInternalWorkbenchImages.IMG_ETOOL_PROBLEMS_VIEW_INFO,
PATH_EVIEW + "problems_view_info.png", true); //$NON-NLS-1$
private void declareWorkbenchImage(Bundle ideBundle, String symbolicName,
String path, boolean shared) {
URL url = FileLocator.find(ideBundle, new Path(path), null);
ImageDescriptor desc = ImageDescriptor.createFromURL(url);
getWorkbenchConfigurer().declareImage(symbolicName, desc, shared);
}
注意:这使用了几个 internal 类,因此不是官方 Eclipse API 的一部分,Eclipse 可能会更改,恕不另行通知。
【讨论】: