Call WIN_32 CHM files for "function help"
[phpeclipse.git] / net.sourceforge.phpeclipse.phphelp / src / net / sourceforge / phpdt / phphelp / PHPHelpPreferencePage.java
diff --git a/net.sourceforge.phpeclipse.phphelp/src/net/sourceforge/phpdt/phphelp/PHPHelpPreferencePage.java b/net.sourceforge.phpeclipse.phphelp/src/net/sourceforge/phpdt/phphelp/PHPHelpPreferencePage.java
new file mode 100644 (file)
index 0000000..2b5f3c1
--- /dev/null
@@ -0,0 +1,96 @@
+package net.sourceforge.phpdt.phphelp;
+
+import org.eclipse.jface.preference.BooleanFieldEditor;
+import org.eclipse.jface.preference.DirectoryFieldEditor;
+import org.eclipse.jface.preference.FileFieldEditor;
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.jface.preference.PreferencePage;
+import org.eclipse.jface.preference.StringFieldEditor;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Group;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPreferencePage;
+
+public class PHPHelpPreferencePage extends PreferencePage implements IWorkbenchPreferencePage {
+
+
+  FileFieldEditor phpCHMHelpFile;
+  BooleanFieldEditor phpCHMHelpEnabled;
+  StringFieldEditor phpCHMHelpCommand;
+
+  public PHPHelpPreferencePage() {
+    super();
+    setPreferenceStore(PHPHelpPlugin.getDefault().getPreferenceStore());
+    setDescription("PHP Help Settings (WIN_32 only)"); //$NON-NLS-1$
+  }
+  
+  public void init(IWorkbench workbench) {
+  }
+  
+  protected void performDefaults() {
+    phpCHMHelpFile.loadDefault();
+    phpCHMHelpEnabled.loadDefault();
+    phpCHMHelpCommand.loadDefault();
+    super.performDefaults();
+  }
+
+  public boolean performOk() {
+    phpCHMHelpFile.store();
+    phpCHMHelpEnabled.store();
+    phpCHMHelpCommand.store();
+    return super.performOk();
+  }
+
+  protected Control createContents(Composite parent) {
+    initializeDialogUnits(parent);
+    final IPreferenceStore store = PHPHelpPlugin.getDefault().getPreferenceStore();
+    Composite composite = new Composite(parent, SWT.LEFT);
+    composite.setLayout(new GridLayout());
+    composite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+    
+//    Composite helpSettingsComposite = new Composite(composite, SWT.NONE);
+//    helpSettingsComposite.setLayout(new GridLayout());
+//    helpSettingsComposite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+//    Group helpSettingsGroup = new Group(helpSettingsComposite, SWT.NONE);
+//    helpSettingsGroup.setText("Windows CHM settings");
+//    helpSettingsGroup.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+//    helpSettingsGroup.setLayout(new GridLayout());
+
+    phpCHMHelpEnabled =
+      new BooleanFieldEditor(
+        PHPHelpPlugin.PHP_CHM_ENABLED,
+        "Show Help in *.chm format?",
+    composite);
+    phpCHMHelpEnabled.setPreferencePage(this);
+    phpCHMHelpEnabled.setPreferenceStore(getPreferenceStore());
+    phpCHMHelpEnabled.load();
+    
+    new Label(composite, SWT.NONE);
+    phpCHMHelpFile =
+      new FileFieldEditor(
+    PHPHelpPlugin.PHP_CHM_FILE,"PHP *.chm file:",
+    composite);
+    phpCHMHelpFile.setPreferencePage(this);
+    phpCHMHelpFile.setPreferenceStore(getPreferenceStore());
+    phpCHMHelpFile.load();
+    
+    new Label(composite, SWT.NONE);
+    phpCHMHelpCommand =
+      new StringFieldEditor(
+        PHPHelpPlugin.PHP_CHM_COMMAND,
+        "PHP Help command:",
+    composite);
+    phpCHMHelpCommand.setPreferencePage(this);
+    phpCHMHelpCommand.setPreferenceStore(getPreferenceStore());
+    phpCHMHelpCommand.load();
+
+    
+    return composite;
+  }
+}