public interface PreferenceDefinition
enum NotepadPref implements PreferenceDefinition {
\@ReadWrite
\@Value(type = PVInteger.class, defaultValue = "800")
WIDTH,
\@ReadWrite
\@Value(type = PVInteger.class, defaultValue = "800")
HEIGHT;
}
No código acima, cada constante denota uma preferência. Esta constante deve
ser anotada com a anotação Value onde definimos qual a classe que
encapsula um valor de preferência e qual o seu valor default. Além disso, é
possível descrevermos qual a política de visibilidade da preferência usando
as anotações Hidden, ReadWrite e ReadOnly.
Basicamente, cada enumeração é mapeada para um conceito que chamamos de
categoria. Uma categoria nada mais é do que um agregador de preferências.
Também é possível criarmos categorias aninhadas. Para isso, podemos
referênciar uma outra enumeração ou podemos declarar uma nova enumeração
aninhada. Obviamente, essa enumeração aninhada também deve seguir as mesmas
convenções (implementar PreferenceDefinition).
As anotações disponíveis são:Hidden,
ReadOnly,
ReadWrite,
Editor,
Outras classes úteis que fazem parte da lógica do sistema de
preferências:,
PreferenceCategory PreferenceManagerCopyright © 2016. All Rights Reserved.