【问题标题】:Project explorer, item with children项目探索者,有孩子的项目
【发布时间】:2012-09-20 07:35:21
【问题描述】:

我想在 Eclipse 4.2 的 Project Explorer 中将子项添加到我的文件中。我使用“带有多页编辑器的插件”模板制作了一个 RCP 项目。运行它,使用向导将我的文件类型(.mpe)添加到一些现有的项目中,一切正常。现在我想允许我的文件类型 (1) 具有可点击的子项,例如 .h 文件具有 (2)。这个怎么做?

【问题讨论】:

    标签: eclipse eclipse-rcp rcp


    【解决方案1】:

    您必须为“org.eclipse.ui.navigator.viewer”和“org.eclipse.ui.navigator.navigatorContent”提供扩展名。项目浏览器基于通用导航框架,允许用户扩展功能。

    一个例子

    “org.eclipse.ui.navigator.viewer”扩展

     <extension
              id="navigator-viewbinding"
              point="org.eclipse.ui.navigator.viewer">
           <viewerContentBinding
                 viewerId="org.eclipse.ui.navigator.ProjectExplorer">
              <includes>
                 <contentExtension
                       pattern="<plugin_name>.myResourceContent">
                 </contentExtension>             
              </includes>
           </viewerContentBinding>      
        </extension>
    

    以及“org.eclipse.ui.navigator.navigatorContent”扩展

       <extension
             id="navigator-content"
             point="org.eclipse.ui.navigator.navigatorContent">
          <navigatorContent
                activeByDefault="true"
                contentProvider="MyNavigatorContentProvider"
                icon="icon.gif"
                id="myResourceContent"
                labelProvider="MyNavigatorLabelProvider"
                name="Some Name"
                priority="normal">
             <triggerPoints>
                <or>
                   <and>
                      <instanceof
                            value="org.eclipse.core.resources.IFile">
                      </instanceof>
                      <test
                            property="org.eclipse.core.resources.extension"
                            value="mpe">
                      </test>
                   </and>
                </or>
             </triggerPoints>
             <possibleChildren>
                <or>
                   <instanceof
                         value="<Class name of possible children>">
                   </instanceof>
                </or>
             </possibleChildren>      
       </extension>
    

    “MyNavigatorContentProvider”类实现了“ICommonContentProvider”,您必须在其中解析文件并获取您想要显示的孩子。“MyNavigatorLabelProvider”类用于在查看器中装饰您的孩子..

    希望这个link 应该有所帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-20
      • 1970-01-01
      • 2018-01-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多