将对象存储在FilteredItemsSelectionDialog的资源选择历史记录中而不是字符串

时间:2012-07-13 11:44:29

标签: java eclipse eclipse-plugin swt jface

我一直在关注教程here。在高级教程中,ResourceSelectionHistory存储所选项目,并在重新启动对话框时检索它们。我希望ResourceSelectionHistory存储对象而不仅仅是字符串,有没有办法做到这一点。 我还希望在用户点击它们时在编辑器中打开这些项目。当我点击实际填充列表中的某个项目时,它会打开,但不会在我点击显示历史记录的部分时显示。

提前致谢

是的,是的!

2 个答案:

答案 0 :(得分:0)

ResourceSelectionHistory非常特定于此对话框,只能存储资源。它使用IMemento机制存储它们。你可以做你想做的唯一方法就是制作一个班级的副本(FilteredResourcesSelectionDialog)并按照你的方式行事。如果您只是遵循API,这些对话框往往非常严格。

答案 1 :(得分:0)

您可以将字符串,整数和布尔值存储到IMemento。您可以巧妙地利用它们来揭示对象的类型。例如,如果您的对象是A类,则可以使用element.putInteger("objType", 1);;如果类型为B,则可以使用element.putInteger("objType", 2);