从 AbstractPropertySection 插入操作按钮

发布于 2024-10-25 12:17:40 字数 394 浏览 4 评论 0原文

我有一个选项卡式propertiesContributor(以及一些与之配套的propertySections),使用org.eclipse.ui.views.properties.tabbed.propertySections扩展点

我想放置一个选项卡特定的“刷新” ' 操作按钮进入操作栏,并且看不到应该如何完成。有一个非常诱人的方法

TabbedPropertySheetPage.setActionBars( ... )

......“createControls()”中可用,但我不知道如何使用它。

谁能给我指出一些关于如何实现这一目标的工作示例代码?

你的线索&嘘声是最受欢迎的。

M。

I have a tabbed propertiesContributor (and a few propertySections to go with it) using the org.eclipse.ui.views.properties.tabbed.propertySections extension point

I should like to place a tab-specific 'refresh' action-button into the action-bar, and cannot see how it should be done. There is a very tantalising method ..

TabbedPropertySheetPage.setActionBars( ... )

... available in 'createControls()' but I cannot see how I make use of that.

Can anyone point me at some working example code on how to achieve this?

Your clues & boos are most welcome.

M.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

踏雪无痕 2024-11-01 12:17:40

解决方案是使用 org.eclipse.ui.SubActionBars 的实例并向其添加特定于选项卡的操作,如下所示......

@Override
public void createControls(Composite parent, final TabbedPropertySheetPage aTabbedPropertySheetPage)
{
    ...

    makeActions();
    subActionBars = new SubActionBars( tabbedPropertySheetPage.getSite().getActionBars() );
    subActionBars.getToolBarManager().add( refreshAction );
    subActionBars.getMenuManager().add( refreshAction );
}

然后像这样覆盖 aboutToBeShown() 和 aboutToBeHidden() ...

@Override
public void aboutToBeShown()
{
    super.aboutToBeShown();
    subActionBars.activate();
    subActionBars.updateActionBars();
}

@Override
public void aboutToBeHidden()
{
    super.aboutToBeHidden();
    subActionBars.deactivate();
    subActionBars.updateActionBars();
}

The solution was to use an instance of org.eclipse.ui.SubActionBars and add the tab-specific Actions to it, like this ...

@Override
public void createControls(Composite parent, final TabbedPropertySheetPage aTabbedPropertySheetPage)
{
    ...

    makeActions();
    subActionBars = new SubActionBars( tabbedPropertySheetPage.getSite().getActionBars() );
    subActionBars.getToolBarManager().add( refreshAction );
    subActionBars.getMenuManager().add( refreshAction );
}

.. then override aboutToBeShown() and aboutToBeHidden() like this ...

@Override
public void aboutToBeShown()
{
    super.aboutToBeShown();
    subActionBars.activate();
    subActionBars.updateActionBars();
}

@Override
public void aboutToBeHidden()
{
    super.aboutToBeHidden();
    subActionBars.deactivate();
    subActionBars.updateActionBars();
}
上课铃就是安魂曲 2024-11-01 12:17:40

我认为没有办法将选项卡特定操作添加到视图的操作栏。您可能只需在该选项卡的一部分中添加操作。

I don't think there is a way to add a Tab specific action to the view's action bar. You may have to add the action in a section of that tab only.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文