16 * Assumptions/Requirement/Pre-requisites: |
16 * Assumptions/Requirement/Pre-requisites: |
17 * Failures and causes: |
17 * Failures and causes: |
18 *******************************************************************************/ |
18 *******************************************************************************/ |
19 package org.symbian.tools.wrttools.debug.ui; |
19 package org.symbian.tools.wrttools.debug.ui; |
20 |
20 |
|
21 import org.eclipse.jface.dialogs.MessageDialogWithToggle; |
21 import org.eclipse.jface.preference.DirectoryFieldEditor; |
22 import org.eclipse.jface.preference.DirectoryFieldEditor; |
22 import org.eclipse.jface.preference.FieldEditorPreferencePage; |
23 import org.eclipse.jface.preference.FieldEditorPreferencePage; |
|
24 import org.eclipse.swt.SWT; |
|
25 import org.eclipse.swt.layout.GridData; |
|
26 import org.eclipse.swt.widgets.Button; |
23 import org.eclipse.ui.IWorkbench; |
27 import org.eclipse.ui.IWorkbench; |
24 import org.eclipse.ui.IWorkbenchPreferencePage; |
28 import org.eclipse.ui.IWorkbenchPreferencePage; |
25 import org.symbian.tools.wrttools.debug.internal.Activator; |
29 import org.symbian.tools.wrttools.debug.internal.Activator; |
26 import org.symbian.tools.wrttools.debug.internal.IConstants; |
30 import org.symbian.tools.wrttools.debug.internal.IConstants; |
27 |
31 |
28 public class DebugPreferencePage extends FieldEditorPreferencePage implements |
32 public class DebugPreferencePage extends FieldEditorPreferencePage implements |
29 IWorkbenchPreferencePage { |
33 IWorkbenchPreferencePage { |
30 |
34 |
31 public DebugPreferencePage() { |
35 private Button check; |
|
36 |
|
37 public DebugPreferencePage() { |
32 super(GRID); |
38 super(GRID); |
33 setPreferenceStore(Activator.getDefault().getPreferenceStore()); |
39 setPreferenceStore(Activator.getDefault().getPreferenceStore()); |
34 setDescription("WRT debugger settings"); |
40 setDescription("WRT debugger settings"); |
35 } |
41 } |
36 |
42 |
37 @Override |
43 @Override |
38 protected void createFieldEditors() { |
44 protected void createFieldEditors() { |
39 DirectoryFieldEditor editor = new DirectoryFieldEditor("chrome", "Chrome Install Location:", getFieldEditorParent()); |
45 DirectoryFieldEditor editor = new DirectoryFieldEditor("chrome", "Chrome Install Location:", getFieldEditorParent()); |
40 editor.setPreferenceName(IConstants.PREF_NAME_CHROME_LOCATION); |
46 editor.setPreferenceName(IConstants.PREF_NAME_CHROME_LOCATION); |
41 addField(editor); |
47 addField(editor); |
|
48 |
|
49 check = new Button(getFieldEditorParent(), SWT.CHECK); |
|
50 check.setText("Show warning dialog when resources in the debugged project were changed"); |
|
51 check.setLayoutData(new GridData(GridData.BEGINNING, GridData.END, false, false, 3, 1)); |
|
52 |
|
53 check.setSelection(MessageDialogWithToggle.ALWAYS.equals(getPreferenceStore().getString( |
|
54 IConstants.PREF_SHOW_RESOURCE_CHANGE_ERROR))); |
42 } |
55 } |
|
56 |
|
57 @Override |
|
58 protected void performDefaults() { |
|
59 super.performDefaults(); |
|
60 check.setSelection(false); |
|
61 } |
|
62 |
|
63 @Override |
|
64 public boolean performOk() { |
|
65 if (check.getSelection()) { |
|
66 getPreferenceStore().setValue(IConstants.PREF_SHOW_RESOURCE_CHANGE_ERROR, MessageDialogWithToggle.ALWAYS); |
|
67 } else { |
|
68 getPreferenceStore().setToDefault(IConstants.PREF_SHOW_RESOURCE_CHANGE_ERROR); |
|
69 } |
|
70 return super.performOk(); |
|
71 } |
43 |
72 |
44 public void init(IWorkbench workbench) { |
73 public void init(IWorkbench workbench) { |
45 // Do nothing |
74 // Do nothing |
46 } |
75 } |
47 } |
76 } |