是否有提示Eclipse RCP用户重置透视图的最佳方法?

时间:2014-10-24 05:46:42

标签: eclipse eclipse-rcp

我最近修剪了Eclipse RCP Workbench风格的应用程序的UI,以使用hiddenMenuItem删除一些不相关的默认操作。

为了让用户获得这种清理的好处,他们需要运行"重置视角"。

是否存在我可以使用的最佳实践(或技巧),这将导致用户被提示运行"重置视角"在这个大型UI更新后?

我考虑将隐藏的.resetPerspective文件放在root_installs文件夹中。然后,在启动时,检查它是否存在。如果是,请邀请用户重置透视图,然后删除该文件。

但是,显然如果用户碰巧在只读文件夹中有root_installs会很烦人 - 因为每次应用程序打开时都会弹出消息。遗憾的是,它还会触发重新安装的消息。

还有其他建议吗?

3 个答案:

答案 0 :(得分:2)

我将使用从InstanceScope(存储在.metadata / .plugins / {bundleName}下的工作空间中)或ConfigurationScope(用于Eclipse安装,存储在eclipse / configuration / .settings目录中)获得的IEclipsePreferences。我相信Eclipse会在用户家中创建一个配置目录,如果Eclipse安装目录中的那个目录无法写入。我认为工作区必须始终可写。

你的bundle激活器(或其他东西)可以检查来自IEclipsePreferences的标志,以确定是否应该提供'Reset Perspective'并在之后设置相同的标志。我想不出一个在新安装中不显示“重置透视”消息的好方法,但这应该只发生一次。

答案 1 :(得分:1)

我对您的用户诚实。给他们一次性弹出窗口,告诉他们如果他们想要使用新的和改进的功能xyz,他们必须重置透视图。如果他们不想立即这样做,请添加一个提示,以便他们自己找到一个选项。

如果他们想要重置,请点击这里的链接in e4

编辑:如果您的主要问题是,隐藏用户决策的位置,那么他只需获得一次性弹出窗口,就可以通过各种方式实现这一目标。这取决于你已经得到了什么。

1)如果您已经有项目的首选项页面,可以在那里添加一个选项(如其他答案中的建议)。然后,用户可以决定是否要再次看到该弹出窗口。这几乎就是Eclipse的做事方式。

2)如果您没有/想要它,您还可以使用带有键/值对的配置文件(has.seen.popup = false)并检查该键。如果他不想在那一刻做出决定,你可以再次让用户选择下次再次显示对话框。

3)第三种选择是使用IMemento。但该技术主要围绕存储视图更改。

答案 2 :(得分:0)

嗯,这篇文章讨论了如何删除恼人的“你想重置”消息:

Eclipse RCP: Get rid of "reset perspective" message

我想我的解决方案可能涉及尝试重现上述问题。在上面的帖子中,通过以编程方式安装捆绑包来触发消息,但我不这样做。