/********************************************************************** Copyright (c) 2000, 2002 IBM Corp. and others. All rights reserved. This program and the accompanying materials are made available under the terms of the Common Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/cpl-v10.html Contributors: IBM Corporation - Initial implementation Klaus Hartlage - www.eclipseproject.de **********************************************************************/ package net.sourceforge.phpeclipse; import java.io.IOException; import java.text.MessageFormat; import org.eclipse.jface.preference.BooleanFieldEditor; import org.eclipse.jface.preference.DirectoryFieldEditor; import org.eclipse.jface.preference.FieldEditorPreferencePage; import org.eclipse.jface.preference.IPreferenceStore; import org.eclipse.jface.preference.StringFieldEditor; import org.eclipse.swt.SWT; import org.eclipse.swt.events.SelectionAdapter; import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Shell; import org.eclipse.ui.IWorkbench; import org.eclipse.ui.IWorkbenchPreferencePage; /** * * @author khartlage */ public class PHPEclipsePreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage { public PHPEclipsePreferencePage() { super(FieldEditorPreferencePage.GRID); //Initialize the preference store we wish to use setPreferenceStore(PHPeclipsePlugin.getDefault().getPreferenceStore()); } protected void createFieldEditors() { Shell shell = getShell(); final IPreferenceStore store = PHPeclipsePlugin.getDefault().getPreferenceStore(); StringFieldEditor localhost = new StringFieldEditor(PHPeclipsePlugin.LOCALHOST_PREF, "&Localhost:", 60, getFieldEditorParent()); DirectoryFieldEditor documentRoot = new DirectoryFieldEditor(PHPeclipsePlugin.DOCUMENTROOT_PREF, "&DocumentRoot:", getFieldEditorParent()); BooleanFieldEditor useExternalBrowser = new BooleanFieldEditor(PHPeclipsePlugin.USE_EXTERNAL_BROWSER_PREF, "&Use External Browser", 60, getFieldEditorParent()); StringFieldEditor externalBrowser = new StringFieldEditor(PHPeclipsePlugin.EXTERNAL_BROWSER_PREF, "&External Browser command:", 60, getFieldEditorParent()); StringFieldEditor startMySQL = new StringFieldEditor(PHPeclipsePlugin.MYSQL_PREF, "&MySQL command:", 60, getFieldEditorParent()); // Button button = new Button(shell, SWT.PUSH); // button.setText("Start MySQL"); // button.addSelectionListener(new SelectionAdapter() { // public void widgetSelected(SelectionEvent e) { // try { // Runtime runtime = Runtime.getRuntime(); // runtime.exec(store.getString(PHPeclipsePlugin.MYSQL_PREF)); // } catch (IOException e1) { // } // } // }); StringFieldEditor startApache = new StringFieldEditor(PHPeclipsePlugin.APACHE_START_PREF, "Start &Apache command:", 60, getFieldEditorParent()); // Button startButton = new Button(shell, SWT.PUSH); // startButton.setText("Start Apache"); // startButton.addSelectionListener(new SelectionAdapter() { // public void widgetSelected(SelectionEvent e) { // String[] arguments = { store.getString(PHPeclipsePlugin.DOCUMENTROOT_PREF)}; // MessageFormat form = new MessageFormat(store.getString(PHPeclipsePlugin.APACHE_START_PREF)); // // try { // Runtime runtime = Runtime.getRuntime(); // runtime.exec(form.format(arguments)); // } catch (IOException e2) { // } // } // }); StringFieldEditor stopApache = new StringFieldEditor(PHPeclipsePlugin.APACHE_STOP_PREF, "&Stop Apache command:", 60, getFieldEditorParent()); Button stopButton = new Button(shell, SWT.PUSH); stopButton.setText("Stop Apache"); stopButton.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { try { Runtime runtime = Runtime.getRuntime(); runtime.exec(store.getString(PHPeclipsePlugin.MYSQL_PREF)); } catch (IOException e1) { } } }); StringFieldEditor restartApache = new StringFieldEditor(PHPeclipsePlugin.APACHE_RESTART_PREF, "&Restart Apache command:", 60, getFieldEditorParent()); Button restartButton = new Button(shell, SWT.PUSH); restartButton.setText("Restart Apache"); restartButton.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { try { Runtime runtime = Runtime.getRuntime(); runtime.exec(store.getString(PHPeclipsePlugin.MYSQL_PREF)); } catch (IOException e1) { } } }); addField(localhost); addField(documentRoot); addField(useExternalBrowser); addField(externalBrowser); addField(startMySQL); addField(startApache); // add(startButton); addField(stopApache); addField(restartApache); } /** * @see IWorkbenchPreferencePage#init */ public void init(IWorkbench workbench) { } }