1 package org.eparapher.rcp.preferences;
2
3 import org.apache.log4j.Level;
4 import org.apache.log4j.Logger;
5 import org.eclipse.jface.preference.FieldEditorPreferencePage;
6 import org.eclipse.jface.preference.FileFieldEditor;
7 import org.eclipse.jface.preference.PathEditor;
8 import org.eclipse.jface.preference.RadioGroupFieldEditor;
9 import org.eclipse.ui.IWorkbench;
10 import org.eclipse.ui.IWorkbenchPreferencePage;
11 import org.eparapher.core.EParapherManager;
12 import org.eparapher.rcp.Activator;
13 import org.eparapher.rcp.EPReferences;
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 public class EParapherPreferencePage
31 extends FieldEditorPreferencePage
32 implements IWorkbenchPreferencePage {
33
34 private static Logger log = Logger.getLogger(EParapherPreferencePage.class);
35
36 public static final String ID = "org.eparapher.rcp.preferences.EParapherPreferencePage";
37
38 private final static String[][] LoglevelFamilies = { { "OFF", Level.OFF.toString() },
39 { "FATAL", Level.FATAL.toString() },
40 { "ERROR", Level.ERROR.toString() },
41 { "WARNING", Level.WARN.toString() },
42 { "INFO", Level.INFO.toString() },
43 { "DEBUG", Level.DEBUG.toString() },
44 { "ALL", Level.ALL.toString() } };
45
46 PathEditor localdocspath;
47 FileFieldEditor localpsafepath;
48 RadioGroupFieldEditor loglevel;
49
50 public EParapherPreferencePage() {
51 super(GRID);
52 setPreferenceStore(Activator.getDefault().getPreferenceStore());
53 setDescription("eParapher Configuration");
54 }
55
56
57
58
59
60
61
62 public void createFieldEditors() {
63
64 localdocspath = new PathEditor(PreferenceConstants.P_LOCALDOCPATH, "&Local documents Directories :", "Choose a Path", getFieldEditorParent());
65 addField(localdocspath);
66
67
68
69
70
71
72 loglevel = new RadioGroupFieldEditor( PreferenceConstants.P_LOGLEVEL,"&eParapher Log level : ", 7, LoglevelFamilies, getFieldEditorParent(), true);
73 addField(loglevel);
74 }
75
76
77
78
79 public void init(IWorkbench workbench) {
80
81 }
82
83 public boolean performOk() {
84
85
86 boolean save = super.performOk();
87
88
89 EParapherManager.setLogLevel(EParapherManager.getInstance().getSettings().getEPLogLevel());
90
91
92 if (EPReferences.getInstance().getDocviews()!=null)
93 EPReferences.getInstance().getDocviews().refreshView();
94
95 return save;
96 }
97 }