import java.util.Map;
+import net.sourceforge.phpdt.core.compiler.IScanner;
+import net.sourceforge.phpdt.internal.compiler.parser.Scanner;
+import net.sourceforge.phpdt.internal.formatter.CodeFormatter;
import net.sourceforge.phpeclipse.PHPCore;
import org.eclipse.core.runtime.Plugin;
-import net.sourceforge.phpdt.internal.formatter.CodeFormatter;
/**
* Factory for creating various compiler tools, such as scanners, parsers and compilers.
* @see ToolFactory#createScanner(boolean,boolean,boolean,boolean, boolean)
* @see org.phpeclipse.phpdt.core.compiler.IScanner
*/
-// public static IScanner createScanner(boolean tokenizeComments, boolean tokenizeWhiteSpace, boolean assertMode, boolean recordLineSeparator){
-// return createScanner(tokenizeComments, tokenizeWhiteSpace, assertMode, recordLineSeparator, false);
+// public static IScanner createScanner(boolean tokenizeComments, boolean tokenizeWhiteSpace, boolean recordLineSeparator){
+// return createScanner(tokenizeComments, tokenizeWhiteSpace, recordLineSeparator);
// }
/**
* @see org.phpeclipse.phpdt.core.compiler.IScanner
* @since 2.1
*/
-// public static IScanner createScanner(boolean tokenizeComments, boolean tokenizeWhiteSpace, boolean assertMode, boolean recordLineSeparator, boolean strictCommentMode){
-//
-// PublicScanner scanner = new PublicScanner(tokenizeComments, tokenizeWhiteSpace, false/*nls*/, assertMode, strictCommentMode /*strict comment*/, null/*taskTags*/, null/*taskPriorities*/);
-// scanner.recordLineSeparator = recordLineSeparator;
-// return scanner;
-// }
+ public static IScanner createScanner(boolean tokenizeComments, boolean tokenizeWhiteSpace, boolean recordLineSeparator){
+
+ Scanner scanner = new Scanner(tokenizeComments, tokenizeWhiteSpace, false/*nls*/);
+ scanner.recordLineSeparator = recordLineSeparator;
+ return scanner;
+ }
}
--- /dev/null
+/*
+ * (c) Copyright IBM Corp. 2000, 2001.
+ * All Rights Reserved.
+ */
+package net.sourceforge.phpdt.internal.corext;
+
+//import org.phpeclipse.phpdt.internal.corext.refactoring.RefactoringCoreMessages;
+
+/**
+ * <code>Assert</code> is useful for for embedding runtime sanity checks
+ * in code. The static predicate methods all test a condition and throw some
+ * type of unchecked exception if the condition does not hold.
+ * <p>
+ * Assertion failure exceptions, like most runtime exceptions, are
+ * thrown when something is misbehaving. Assertion failures are invariably
+ * unspecified behavior; consequently, clients should never rely on
+ * these being thrown (or not thrown). <b>If you find yourself in the
+ * position where you need to catch an assertion failure, you have most
+ * certainly written your program incorrectly.</b>
+ * </p>
+ * <p>
+ * Note that an <code>assert</code> statement is slated to be added to the
+ * Java language in JDK 1.4, rending this class obsolete.
+ * </p>
+ */
+public final class Assert {
+
+ /**
+ * <code>AssertionFailedException</code> is a runtime exception thrown
+ * by some of the methods in <code>Assert</code>.
+ * <p>
+ * This class is not declared public to prevent some misuses; programs that catch
+ * or otherwise depend on assertion failures are susceptible to unexpected
+ * breakage when assertions in the code are added or removed.
+ * </p>
+ */
+ private static class AssertionFailedException extends RuntimeException {
+
+ /**
+ * Constructs a new exception.
+ */
+ public AssertionFailedException() {
+ }
+
+ /**
+ * Constructs a new exception with the given message.
+ */
+ public AssertionFailedException(String detail) {
+ super(detail);
+ }
+ }
+
+ /* This class is not intended to be instantiated. */
+ private Assert() {
+ }
+
+ /**
+ * Asserts that the given object is not <code>null</code>. If this
+ * is not the case, some kind of unchecked exception is thrown.
+ * <p>
+ * As a general rule, parameters passed to API methods must not be
+ * <code>null</code> unless <b>explicitly</b> allowed in the method's
+ * specification. Similarly, results returned from API methods are never
+ * <code>null</code> unless <b>explicitly</b> allowed in the method's
+ * specification. Implementations are encouraged to make regular use of
+ * <code>Assert.isNotNull</code> to ensure that <code>null</code>
+ * parameters are detected as early as possible.
+ * </p>
+ *
+ * @param object the value to test
+ */
+ public static void isNotNull(Object object) {
+ // succeed as quickly as possible
+ if (object != null) {
+ return;
+ }
+ isNotNull(object, ""); //$NON-NLS-1$
+ }
+
+ /**
+ * Asserts that the given object is not <code>null</code>. If this
+ * is not the case, some kind of unchecked exception is thrown.
+ * The given message is included in that exception, to aid debugging.
+ * <p>
+ * As a general rule, parameters passed to API methods must not be
+ * <code>null</code> unless <b>explicitly</b> allowed in the method's
+ * specification. Similarly, results returned from API methods are never
+ * <code>null</code> unless <b>explicitly</b> allowed in the method's
+ * specification. Implementations are encouraged to make regular use of
+ * <code>Assert.isNotNull</code> to ensure that <code>null</code>
+ * parameters are detected as early as possible.
+ * </p>
+ *
+ * @param object the value to test
+ * @param message the message to include in the exception
+ */
+ public static void isNotNull(Object object, String message) {
+ if (object == null)
+ throw new AssertionFailedException("nullargument" + message); //$NON-NLS-1$
+ }
+
+ /**
+ * Asserts that the given boolean is <code>true</code>. If this
+ * is not the case, some kind of unchecked exception is thrown.
+ *
+ * @param expression the outcome of the check
+ * @return <code>true</code> if the check passes (does not return
+ * if the check fails)
+ */
+ public static boolean isTrue(boolean expression) {
+ // succeed as quickly as possible
+ if (expression) {
+ return true;
+ }
+ return isTrue(expression, ""); //$NON-NLS-1$
+ }
+
+ /**
+ * Asserts that the given boolean is <code>true</code>. If this
+ * is not the case, some kind of unchecked exception is thrown.
+ * The given message is included in that exception, to aid debugging.
+ *
+ * @param expression the outcome of the check
+ * @param message the message to include in the exception
+ * @return <code>true</code> if the check passes (does not return
+ * if the check fails)
+ */
+ public static boolean isTrue(boolean expression, String message) {
+ if (!expression)
+ throw new AssertionFailedException("assertion failed" + message); //$NON-NLS-1$
+ return expression;
+ }
+
+}
--- /dev/null
+/*******************************************************************************
+ * Copyright (c) 2000, 2002 International Business Machines 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 API and implementation
+ ******************************************************************************/
+package net.sourceforge.phpdt.internal.corext;
+
+import java.text.MessageFormat;
+import java.util.MissingResourceException;
+import java.util.ResourceBundle;
+
+public class CorextMessages {
+
+ private static final String BUNDLE_NAME= CorextMessages.class.getName();
+
+ private static final ResourceBundle RESOURCE_BUNDLE =
+ ResourceBundle.getBundle(BUNDLE_NAME);
+
+ private CorextMessages() {
+ }
+
+ public static String getString(String key) {
+ try {
+ return RESOURCE_BUNDLE.getString(key);
+ } catch (MissingResourceException e) {
+ return '!' + key + '!';
+ }
+ }
+
+ public static String getFormattedString(String key, Object arg) {
+ return getFormattedString(key, new Object[] { arg });
+ }
+
+ public static String getFormattedString(String key, Object[] args) {
+ return MessageFormat.format(getString(key), args);
+ }
+}
\ No newline at end of file
--- /dev/null
+Assertnull_argument=null argument
+Assertassertion_failed=assertion failed
+
+Resources.outOfSyncResources= Some resources are out of sync
+Resources.outOfSync= Resource ''{0}'' is out of sync with file system.
+Resources.modifiedResources= There are modified resources
+Resources.fileModified= File ''{0}'' has been modified since the beginning of the operation
--- /dev/null
+/*******************************************************************************
+ * Copyright (c) 2002 International Business Machines 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 API and implementation
+ ******************************************************************************/
+package net.sourceforge.phpdt.internal.corext;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IStatus;
+
+/**
+ * Exception thrown if a valid edit failed.
+ */
+public class ValidateEditException extends CoreException {
+
+ public ValidateEditException(IStatus status) {
+ super(status);
+ }
+
+}
--- /dev/null
+/*******************************************************************************
+ * Copyright (c) 2002 International Business Machines Corp. and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Common Public License v0.5
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/cpl-v05.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ ******************************************************************************/
+package net.sourceforge.phpdt.internal.ui.actions;
+
+import org.eclipse.swt.widgets.Shell;
+
+import org.eclipse.jface.action.Action;
+import org.eclipse.jface.text.ITextSelection;
+import org.eclipse.jface.util.Assert;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.ISelectionProvider;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+
+import org.eclipse.ui.IWorkbenchSite;
+
+/**
+ * Action that dispatches the <code>IAction#run()</code> and the
+ * <code>ISelectionChangedListener#selectionChanged</code>
+ * according to the type of the selection.
+ *
+ * <ul>
+ * <li>if selection is of type <code>ITextSelection</code> then
+ * <code>run(ITextSelection)</code> and <code>selectionChanged(ITextSelection)</code>
+ * is called.</li>
+ * <li>if selection is of type <code>IStructuredSelection</code> then
+ * <code>run(IStructuredSelection)</code> and <code>
+ * selectionChanged(IStructuredSelection)</code> is called.</li>
+ * <li>default is to call <code>run(ISelection)</code> and <code>
+ * selectionChanged(ISelection)</code>.</li>
+ * </ul>
+ *
+ * <p>
+ * Note: This class is not intended to be subclassed outside the JDT UI plugin.
+ * </p>
+ *
+ * @since 2.0
+ */
+public abstract class SelectionDispatchAction extends Action implements ISelectionChangedListener {
+
+ private IWorkbenchSite fSite;
+
+ /**
+ * Creates a new action with no text and no image.
+ * <p>
+ * Configure the action later using the set methods.
+ * </p>
+ *
+ * @param site the site this action is working on
+ */
+ protected SelectionDispatchAction(IWorkbenchSite site) {
+ Assert.isNotNull(site);
+ fSite= site;
+ }
+
+ /**
+ * Returns the site owning this action.
+ *
+ * @return the site owning this action
+ */
+ public IWorkbenchSite getSite() {
+ return fSite;
+ }
+
+ /**
+ * Returns the selection provided by the site owning this action.
+ *
+ * @return the site's selection
+ */
+ public ISelection getSelection() {
+ return getSelectionProvider().getSelection();
+ }
+
+ /**
+ * Returns the shell provided by the site owning this action.
+ *
+ * @return the site's shell
+ */
+ public Shell getShell() {
+ return fSite.getShell();
+ }
+
+ /**
+ * Returns the selection provider managed by the site owning this action.
+ *
+ * @return the site's selection provider
+ */
+ public ISelectionProvider getSelectionProvider() {
+ return fSite.getSelectionProvider();
+ }
+
+ /**
+ * Updates the action's enablement state according to the given selection. This
+ * default implementation calls one of the <code>selectionChanged</code>
+ * methods depending on the type of the passed selection.
+ *
+ * @param selection the selection this action is working on
+ */
+ public void update(ISelection selection) {
+ dispatchSelectionChanged(selection);
+ }
+
+ /**
+ * Notifies this action that the given structured selection has changed. This default
+ * implementation calls <code>selectionChanged(ISelection selection)</code>.
+ *
+ * @param selection the new selection
+ */
+ protected void selectionChanged(IStructuredSelection selection) {
+ selectionChanged((ISelection)selection);
+ }
+
+ /**
+ * Executes this actions with the given structured selection. This default implementation
+ * calls <code>run(ISelection selection)</code>.
+ */
+ protected void run(IStructuredSelection selection) {
+ run((ISelection)selection);
+ }
+
+ /**
+ * Notifies this action that the given text selection has changed. This default
+ * implementation calls <code>selectionChanged(ISelection selection)</code>.
+ *
+ * @param selection the new selection
+ */
+ protected void selectionChanged(ITextSelection selection) {
+ selectionChanged((ISelection)selection);
+ }
+
+ /**
+ * Executes this actions with the given text selection. This default implementation
+ * calls <code>run(ISelection selection)</code>.
+ */
+ protected void run(ITextSelection selection) {
+ run((ISelection)selection);
+ }
+
+ /**
+ * Notifies this action that the given selection has changed. This default
+ * implementation sets the action's enablement state to <code>false</code>.
+ *
+ * @param selection the new selection
+ */
+ protected void selectionChanged(ISelection selection) {
+ setEnabled(false);
+ }
+
+ /**
+ * Executes this actions with the given selection. This default implementation
+ * does nothing.
+ */
+ protected void run(ISelection selection) {
+ }
+
+ /* (non-Javadoc)
+ * Method declared on IAction.
+ */
+ public void run() {
+ dispatchRun(getSelection());
+ }
+
+ /* (non-Javadoc)
+ * Method declared on ISelectionChangedListener.
+ */
+ public void selectionChanged(SelectionChangedEvent event) {
+ dispatchSelectionChanged(event.getSelection());
+ }
+
+ private void dispatchSelectionChanged(ISelection selection) {
+ if (selection instanceof IStructuredSelection) {
+ selectionChanged((IStructuredSelection)selection);
+ } else if (selection instanceof ITextSelection) {
+ selectionChanged((ITextSelection)selection);
+ } else {
+ selectionChanged(selection);
+ }
+ }
+
+ private void dispatchRun(ISelection selection) {
+ if (selection instanceof IStructuredSelection) {
+ run((IStructuredSelection)selection);
+ } else if (selection instanceof ITextSelection) {
+ run((ITextSelection)selection);
+ } else {
+ run(selection);
+ }
+ }
+}
\ No newline at end of file
import net.sourceforge.phpdt.internal.ui.util.TabFolderLayout;
import net.sourceforge.phpeclipse.PHPCore;
import net.sourceforge.phpeclipse.PHPeclipsePlugin;
+import net.sourceforge.phpeclipse.phpeditor.PHPSourceViewerConfiguration;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.jface.preference.PreferencePage;
+import org.eclipse.jface.resource.JFaceResources;
import org.eclipse.jface.text.Document;
import org.eclipse.jface.text.IDocument;
+import org.eclipse.jface.text.source.SourceViewer;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
private IDocument fPreviewDocument;
private Text fTabSizeTextBox;
- // private SourceViewer fSourceViewer;
+ // private SourceViewer fSourceViewer;
public CodeFormatterPreferencePage() {
item.setText(PHPUIMessages.getString("CodeFormatterPreferencePage.tab.style.tabtitle")); //$NON-NLS-1$
item.setControl(styleComposite);
- // fSourceViewer= createPreview(parent);
+// fSourceViewer= createPreview(parent);
updatePreview();