2
* Created on Feb 1, 2005
4
* @author Fabio Zadrozny
6
package org.python.pydev.builder;
8
import org.eclipse.jface.preference.BooleanFieldEditor;
9
import org.eclipse.jface.preference.FieldEditorPreferencePage;
10
import org.eclipse.jface.preference.IntegerFieldEditor;
11
import org.eclipse.swt.widgets.Composite;
12
import org.eclipse.ui.IWorkbench;
13
import org.eclipse.ui.IWorkbenchPreferencePage;
14
import org.python.pydev.plugin.PydevPlugin;
15
import org.python.pydev.plugin.PydevPrefs;
16
import org.python.pydev.utils.LabelFieldEditor;
19
* @author Fabio Zadrozny
21
public class PyDevBuilderPrefPage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage {
23
public static final boolean DEFAULT_USE_PYDEV_BUILDERS = true;
24
public static final String USE_PYDEV_BUILDERS = "USE_PYDEV_BUILDERS";
26
public static final boolean DEFAULT_USE_PYDEV_ONLY_ON_DOC_SAVE = false;
27
public static final String USE_PYDEV_ANALYSIS_ONLY_ON_DOC_SAVE = "USE_PYDEV_ONLY_ON_DOC_SAVE";
29
public static final int DEFAULT_PYDEV_ELAPSE_BEFORE_ANALYSIS = 3000;
30
public static final String PYDEV_ELAPSE_BEFORE_ANALYSIS = "PYDEV_ELAPSE_BEFORE_ANALYSIS";
35
public PyDevBuilderPrefPage() {
37
setPreferenceStore(PydevPlugin.getDefault().getPreferenceStore());
38
setDescription("PyDev builders");
42
* @see org.eclipse.jface.preference.FieldEditorPreferencePage#createFieldEditors()
44
protected void createFieldEditors() {
45
Composite p = getFieldEditorParent();
47
String s = "WARNING: \n\n" +
48
"PyDev builders are required for many features \n" +
49
"provided by Pydev such as:\n" +
51
"- Code completion\n" +
55
"So, if you choose to disable it, note that the features \n" +
56
"mentioned above may not work as expected or may even not \n" +
57
"work at all (use at your own risk).\n";
59
addField(new LabelFieldEditor("LabelFieldEditor", s, p));
60
addField(new BooleanFieldEditor(USE_PYDEV_BUILDERS, "Use builders?", p));
61
addField(new BooleanFieldEditor(USE_PYDEV_ANALYSIS_ONLY_ON_DOC_SAVE, "Build only on save?", p));
62
addField(new IntegerFieldEditor(PYDEV_ELAPSE_BEFORE_ANALYSIS, "Time to elapse before analyzing changed file (millis)", p));
66
* @see org.eclipse.ui.IWorkbenchPreferencePage#init(org.eclipse.ui.IWorkbench)
68
public void init(IWorkbench workbench) {
71
public static boolean usePydevBuilders() {
72
return PydevPrefs.getPreferences().getBoolean(USE_PYDEV_BUILDERS);
75
public static boolean useAnalysisOnlyOnDocSave() {
76
return PydevPrefs.getPreferences().getBoolean(USE_PYDEV_ANALYSIS_ONLY_ON_DOC_SAVE);
79
public static int getElapseMillisBeforeAnalysis() {
80
return PydevPrefs.getPreferences().getInt(PYDEV_ELAPSE_BEFORE_ANALYSIS);