Balíček org.eclipse.jface.dialogs poskytuje obslužnou třídu DialogSettings pro ukládání a načítání hodnot s klíči. Tuto třídu můžete použít k ukládání a načítání primitivních datových typů a řetězcových hodnot, kterým přiřadíte názvy klíčů. Nastavení se načítají a ukládají pomocí souboru XML.
AbstractUIPlugin poskytuje podporu pro nastavení dialogových oken, která platí v rámci celého modulu plug-in a jsou uložena v souboru XML v adresáři vašeho modulu plug-in. Pokud soubor nastavení dialogových oken nebyl v adresáři vašeho modulu plug-in nalezen, vytvoří se prázdný objekt DialogSettings. Když se modul plug-in ukončí, nastavení přidaná do tohoto objektu se uloží do souboru XML a znovu načtou při dalším spuštění modulu.
K nastavení dialogových oken můžete přistupovat kdekoliv v kódu modulu plug-in. Následující úsek ukazuje, jak můžete získat nastavení dialogových oken pro nástroj README.
IDialogSettings settings = ReadmePlugin.getDefault().getDialogSettings();
Hodnoty se ukládají a načítají pomocí metod get a put. Metody get jsou pojmenovány podle typu primitivu, ke kterému se přistupuje. Můžete ukládat a načítat hodnoty typu boolean, long, double, float, int, array a string. Následující úsek ukazuje, jak můžeme použít nastavení dialogových oken k inicializaci hodnot obslužných prvků v dialogovém okně.
protected Control createDialogArea(Composite parent) { IDialogSettings settings = ReadmePlugin.getDefault().getDialogSettings(); checkbox = new Button(parent,SWT.CHECK); checkbox.setText("Generovat ukázkové titulky oddílů"); // inicializace zaškrtávacího políčka podle nastavení dialogových oken checkbox.setSelection(settings.getBoolean("GenSections")); }
Hodnotu nastavení lze uložit později, když se stiskne tlačítko OK.
protected void okPressed() { IDialogSettings settings = ReadmePlugin.getDefault().getDialogSettings(); // uložit hodnotu zaškrtávacího políčka "Generovat oddíly" settings.put("GenSections", checkbox.getSelection()); super.okPressed(); }