对状态栏的贡献控制不可见

Rüd*_*ann 5 eclipse eclipse-plugin eclipse-rcp

我想在工作台窗口的状态栏中放置一个控件.整个过程应该是直截了当的,但无论我尝试什么,状态栏贡献都不会变得明显.

因为我不拥有应用程序而只是设计IDE的插件,WorkbenchWindowAdvisor而朋友不是一个选择.

扩展点是这样的:

<extension point="org.eclipse.ui.menus">
   <menuContribution locationURI="toolbar:org.eclipse.ui.trim.status" allPopups="false">
      <control class="MyContributionItem" id="myContributionItem" />
   </menuContribution>
</extension>
Run Code Online (Sandbox Code Playgroud)

这个MyContributionItem班是这样的:

public class MyContributionItem extends WorkbenchWindowControlContribution {
  protected Control createControl( Composite parent ) {
    Label label = new Label( parent, SWT.NONE );
    label.setText( "STATUS BAR!" );
    return label;
  }
}
Run Code Online (Sandbox Code Playgroud)

我到目前为止所做的一切都没有成功(即状态栏贡献没有显示):

  • 加入?after=org.eclipse.jface.action.StatusLineManagerlocationURI
  • 把断点放进去MyContributionItem#createControl(),永远不会到达
  • 目标平台:Eclipse Platform SDK 3.8或4.4:没有区别
  • allPopups属性更改为true

我很确定我正在搞一些非常明显的事情......

Cha*_*G K 5

试试这个:Plugin.xml

<extension
     point="org.eclipse.ui.menus">
      <menuContribution
        allPopups="false"
        locationURI="toolbar:org.eclipse.ui.trim.status">
     <toolbar
           id="org.ancit.search.web.searchbar"
           label="Search Bar">
        <control
              class="org.ancit.search.web.controlContributions.GoogleSearchControlContribution"
              id="org.ancit.search.web.controlContributions.GoogleSearchControlContribution">
        </control>
     </toolbar>
      </menuContribution>
   </extension>
Run Code Online (Sandbox Code Playgroud)

检查github上的GoogleSearchControlContribution