79a18f14ae0cc57c75a6c74451261acb2d4674e7
[Mograsim.git] / plugins / net.mograsim.plugin.core / src / net / mograsim / plugin / MainPreferencePage.java
1 package net.mograsim.plugin;
2
3 import org.eclipse.jface.preference.BooleanFieldEditor;
4 import org.eclipse.jface.preference.ComboFieldEditor;
5 import org.eclipse.jface.preference.FieldEditorPreferencePage;
6 import org.eclipse.jface.preference.IntegerFieldEditor;
7 import org.eclipse.swt.widgets.Composite;
8 import org.eclipse.ui.IWorkbench;
9 import org.eclipse.ui.IWorkbenchPreferencePage;
10
11 public class MainPreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage
12 {
13         private static final String[][] MOUSE_BUTTONS = { { "left", "1" }, { "middle", "2" }, { "right", "3" }, { "4th", "4" },
14                         { "5th", "5" } };
15
16         public MainPreferencePage()
17         {
18                 super(GRID);
19         }
20
21         @Override
22         public void init(IWorkbench workbench)
23         {
24                 setPreferenceStore(MograsimActivator.instance().getPreferenceStore());
25         }
26
27         @Override
28         protected void createFieldEditors()
29         {
30                 Composite parent = getFieldEditorParent();
31                 addField(new BooleanFieldEditor("net.mograsim.logic.model.debug.openhlsshell", "Open the debug HLS shell", parent));
32                 addField(new IntegerFieldEditor("net.mograsim.logic.model.debug.hlsshelldepth",
33                                 "Depth of components to list in the debug HLS shell (0: unbounded)", parent));
34                 addField(new ComboFieldEditor("net.mograsim.logic.model.button.action", "Mouse button for actions", MOUSE_BUTTONS, parent));
35                 addField(new ComboFieldEditor("net.mograsim.logic.model.button.drag", "Mouse button for dragging", MOUSE_BUTTONS, parent));
36                 addField(new ComboFieldEditor("net.mograsim.logic.model.button.zoom", "Mouse button for zooming", MOUSE_BUTTONS, parent));
37                 addField(new BooleanFieldEditor("net.mograsim.plugin.core.editors.mpm.bitsascolumnname",
38                                 "Use the raw bit indices of MPM columns as column titles in the MPM editor", parent));
39                 // TODO add other preferences
40         }
41 }