JFace - 如何删除首选项 属性?
JFace - How to remove preference property?
我正在使用一个小的 JFace 首选项存储,我可以在其中足够直接地添加首选项,但是当我想删除我放入的其中一个首选项时遇到了麻烦。
我在 API 中看不到任何允许删除的内容。这样做的正确方法是什么?
假设您正在使用 IPreferenceStore
,您调用 setToDefault("pref id")
将首选项重置为其默认值。
这很奇怪!!
我 3 天前在 eclipse JFace 论坛上问过同样的问题:https://www.eclipse.org/forums/index.php/t/1088245
我只得到了与我的需求无关的答案。
答案是不可能的。您也不能将首选项的值或默认设置为 "null"
在我的应用程序 (JMSToolBox) 中,需要 "cleanup" 支持 PersistenceStore
的文件,因为用户可能会存储很多 "keys/preferences",这些文件有时可能会过时时间点。我想要一种从文件中 "remove/delete" 它们的方法,以保持 PreferenceStore
文件尽可能紧凑。
我最终编写了自己的 PreferenceStore 版本,它从 PreferenceStore
使用的内部 "Properties" 对象公开了 "remove" 方法。这个 class 并不是为了满足我的需要而设计的。
代码是 here
我正在使用一个小的 JFace 首选项存储,我可以在其中足够直接地添加首选项,但是当我想删除我放入的其中一个首选项时遇到了麻烦。
我在 API 中看不到任何允许删除的内容。这样做的正确方法是什么?
假设您正在使用 IPreferenceStore
,您调用 setToDefault("pref id")
将首选项重置为其默认值。
这很奇怪!!
我 3 天前在 eclipse JFace 论坛上问过同样的问题:https://www.eclipse.org/forums/index.php/t/1088245
我只得到了与我的需求无关的答案。
答案是不可能的。您也不能将首选项的值或默认设置为 "null"
在我的应用程序 (JMSToolBox) 中,需要 "cleanup" 支持 PersistenceStore
的文件,因为用户可能会存储很多 "keys/preferences",这些文件有时可能会过时时间点。我想要一种从文件中 "remove/delete" 它们的方法,以保持 PreferenceStore
文件尽可能紧凑。
我最终编写了自己的 PreferenceStore 版本,它从 PreferenceStore
使用的内部 "Properties" 对象公开了 "remove" 方法。这个 class 并不是为了满足我的需要而设计的。
代码是 here