【问题标题】:Problems view is not showing error & warning icons in my rcp product问题视图未在我的 rcp 产品中显示错误和警告图标
【发布时间】:2016-10-02 06:42:39
【问题描述】:

我在我的 rcp 应用程序(Eclipse Luna)中添加了 Eclipse 问题视图。在将 IMarker 添加到资源时,它成功地将标记(错误/警告)添加到资源。

但是,如果我尝试打开问题视图,它会显示所有警告和错误,但没有显示图标。

【问题讨论】:

    标签: icons eclipse-rcp


    【解决方案1】:

    问题视图预计 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 可能会更改,恕不另行通知。

    【讨论】:

    • 嗨,我试过上面提到的代码,现在问题视图图标显示在视图中。但不适用于视图中列出的警告和错误。对于列出的警告和错误,它显示为红色方框图标。
    • 那么您将不得不在 Eclipse 源代码中四处搜索以确定它需要哪些图像。
    猜你喜欢
    • 2023-04-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-30
    相关资源
    最近更新 更多