我已经创建了Eclipse插件来搜索一些内容并在eclipse搜索视图中更新它,但我无法这样做,因为createControl()
的{{1}}在其生命周期中只被调用一次。
每次我的搜索结果发生变化时都需要调用它,以便我可以删除所有以前的小部件并相应地使用新的小部件更新我的搜索结果。
答案 0 :(得分:0)
createContents
方法只被调用一次。您可以在结果页面中使用IQueryListener
来监听查询更改。
使用{<1}}方法添加侦听器:
createContents
您应该在页面NewSearchUI.addQueryListener(queryListener);
方法中删除侦听器:
dispose
请注意NewSearchUI.removeQueryListener(queryListener);
为您执行此操作,您可以扩展该页面,而不是编写自己的完整org.eclipse.search.ui.text.AbstractTextSearchViewPage
页面。