如何更改Eclipse插件中的默认IDetailPane?

时间:2014-03-11 04:51:53

标签: java eclipse eclipse-plugin

我正在编写一个Eclipse插件,为调试器创建一个替代IDetailPane

我创建了IDetailPaneFactory的实现,该实现返回了我的IDetailPane ID,并调用了.getDetailPaneTypes(...)方法。

但是,现在字段DetailPaneManager.fPreferredDetailPanesMap<Set<String>, String>,内容为:

{
  [DefaultDetailPane]=DefaultDetailPane
  [DefaultDetailPane, MyDetailPane]=DefaultDetailPane
}

我想更改第二项,以便它将映射到“MyDetailPane”。

这是一个用户设置,我可以在设置中的某处更改吗? (尝试在偏好中找到它但没有看到任何相关的东西)。这是硬编码的吗?我可以更改插件的Activator中的某些内容来控制它吗? (尝试在Activator.start(...)期间更改值,但此时fPreferredDetailPanes不包含地图中的第二项

1 个答案:

答案 0 :(得分:0)

看起来chooseDetailsAreaIDInSet中的DetailPaneManager方法通过遍历调用getDefaultDetailPane(selection)的详细信息窗格工厂来选择首选窗格,第一个工厂从此获胜返回id。

AvailableDetailPanesAction.SetDetailPaneAction菜单操作可以根据用户的选择覆盖它。