X-Git-Url: http://git.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/php/PHPCodeScanner.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/php/PHPCodeScanner.java index 446c745..1fd27c1 100644 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/php/PHPCodeScanner.java +++ b/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/php/PHPCodeScanner.java @@ -13,17 +13,23 @@ package net.sourceforge.phpeclipse.phpeditor.php; import java.util.ArrayList; import java.util.List; -import java.util.Vector; import net.sourceforge.phpdt.internal.ui.text.AbstractJavaScanner; import net.sourceforge.phpdt.ui.text.IColorManager; -import net.sourceforge.phpdt.ui.text.IJavaColorConstants; +import net.sourceforge.phpeclipse.IPreferenceConstants; import net.sourceforge.phpeclipse.phpeditor.PHPSyntaxRdr; import net.sourceforge.phpeclipse.phpeditor.util.PHPWhitespaceDetector; import net.sourceforge.phpeclipse.phpeditor.util.PHPWordDetector; import org.eclipse.jface.preference.IPreferenceStore; -import org.eclipse.jface.text.rules.*; +import org.eclipse.jface.text.rules.EndOfLineRule; +import org.eclipse.jface.text.rules.ICharacterScanner; +import org.eclipse.jface.text.rules.IToken; +import org.eclipse.jface.text.rules.IWordDetector; +import org.eclipse.jface.text.rules.MultiLineRule; +import org.eclipse.jface.text.rules.Token; +import org.eclipse.jface.text.rules.WhitespaceRule; +import org.eclipse.jface.text.rules.WordRule; /** * PHP Code Scanner @@ -70,7 +76,7 @@ public class PHPCodeScanner scanner.unread(); if (isVariable) { - return getToken(IJavaColorConstants.PHP_VARIABLE); + return getToken(IPreferenceConstants.PHP_VARIABLE); } IToken token = (IToken) fWords.get(fBuffer.toString()); if (token != null) @@ -91,15 +97,15 @@ public class PHPCodeScanner //private PHPColorProvider fColorProvider; private static String[] fgTokenProperties = { - IJavaColorConstants.PHP_MULTI_LINE_COMMENT, - IJavaColorConstants.PHP_SINGLE_LINE_COMMENT, - IJavaColorConstants.PHP_KEYWORD, - IJavaColorConstants.PHP_FUNCTIONNAME, - IJavaColorConstants.PHP_VARIABLE, - IJavaColorConstants.PHP_STRING, - IJavaColorConstants.PHP_TYPE, - IJavaColorConstants.PHP_CONSTANT, - IJavaColorConstants.PHP_DEFAULT }; + IPreferenceConstants.PHP_MULTILINE_COMMENT, + IPreferenceConstants.PHP_SINGLELINE_COMMENT, + IPreferenceConstants.PHP_KEYWORD, + IPreferenceConstants.PHP_FUNCTIONNAME, + IPreferenceConstants.PHP_VARIABLE, + IPreferenceConstants.PHP_STRING, + IPreferenceConstants.PHP_TYPE, + IPreferenceConstants.PHP_CONSTANT, + IPreferenceConstants.PHP_DEFAULT }; /** * Creates a PHP code scanner */ @@ -242,12 +248,12 @@ public class PHPCodeScanner */ protected List createRules() { List rules = new ArrayList(); - Token token= getToken(IJavaColorConstants.PHP_SINGLE_LINE_COMMENT); + Token token= getToken(IPreferenceConstants.PHP_SINGLELINE_COMMENT); // Add rule for single line comments. rules.add(new EndOfLineRule("//", token)); //$NON-NLS-1$ rules.add(new EndOfLineRule("#", token)); //$NON-NLS-1$ // Add rule for strings and character constants. - token= getToken(IJavaColorConstants.PHP_STRING); + token= getToken(IPreferenceConstants.PHP_STRING); rules.add(new MultiLineRule("\"", "\"", token, '\\')); //$NON-NLS-2$ //$NON-NLS-1$ rules.add(new MultiLineRule("`", "`", token, '\\')); //$NON-NLS-2$ //$NON-NLS-1$ rules.add(new MultiLineRule("'", "'", token, '\\')); //$NON-NLS-2$ //$NON-NLS-1$ @@ -255,26 +261,28 @@ public class PHPCodeScanner //previous version //rules.add(new SingleLineRule("'", "'", token, '\\')); //$NON-NLS-2$ //$NON-NLS-1$ - - token= getToken(IJavaColorConstants.PHP_MULTI_LINE_COMMENT); + + token= getToken(IPreferenceConstants.PHP_MULTILINE_COMMENT); rules.add(new MultiLineRule("/*", "*/", token)); //$NON-NLS-2$ //$NON-NLS-1$ // Add generic whitespace rule. rules.add(new WhitespaceRule(new PHPWhitespaceDetector())); // Add word rule for keywords, types, and constants. - token= getToken(IJavaColorConstants.PHP_DEFAULT); + token= getToken(IPreferenceConstants.PHP_DEFAULT); PHPWordRule wordRule = new PHPWordRule(new PHPWordDetector(), token); - Token keyword= getToken(IJavaColorConstants.PHP_KEYWORD); - Token functionName= getToken(IJavaColorConstants.PHP_FUNCTIONNAME); - Token type= getToken(IJavaColorConstants.PHP_TYPE); - Token constant= getToken(IJavaColorConstants.PHP_CONSTANT); - PHPSyntaxRdr.readInSyntax(); - Vector buffer = PHPSyntaxRdr.getsyntaxdata(); + Token keyword= getToken(IPreferenceConstants.PHP_KEYWORD); + Token functionName= getToken(IPreferenceConstants.PHP_FUNCTIONNAME); + Token type= getToken(IPreferenceConstants.PHP_TYPE); + Token constant= getToken(IPreferenceConstants.PHP_CONSTANT); + + ArrayList buffer = PHPSyntaxRdr.getSyntaxData(); // String strbuffer = null; unused PHPElement elbuffer = null; - while ((buffer != null) - && (!buffer.isEmpty() - && ((elbuffer = (PHPElement) buffer.remove(0)) != null))) { + for (int i=0;i