1) Moved net.sourceforge.phpeclipse.ui\src\net\sourceforge\phpdt back to net.sourcefo...
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpdt / internal / ui / text / JavaWordFinder.java
index 63934fa..37944fb 100644 (file)
@@ -1,16 +1,15 @@
 /*******************************************************************************
  * Copyright (c) 2000, 2003 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials 
+ * 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.ui.text;
 
 import net.sourceforge.phpdt.internal.compiler.parser.Scanner;
 
 import org.eclipse.jface.text.BadLocationException;
@@ -19,42 +18,46 @@ import org.eclipse.jface.text.IRegion;
 import org.eclipse.jface.text.Region;
 
 public class JavaWordFinder {
-       
+
        public static IRegion findWord(IDocument document, int offset) {
-               
-               int start= -1;
-               int end= -1;
-               
-               
+
+               int start = -1;
+               int end = -1;
+
                try {
-                       
-                       int pos= offset;
-                       char c;
-                       
+
+                       int pos = offset;
+                       char c = ' ';
+
                        while (pos >= 0) {
-                               c= document.getChar(pos);
+                               c = document.getChar(pos);
+                               if (c == '$') {
+                                       --pos;
+                                       break;
+                               }
                                if (!Scanner.isPHPIdentifierPart(c))
                                        break;
+
                                --pos;
                        }
-                       
-                       start= pos;
-                       
-                       pos= offset;
-                       int length= document.getLength();
-                       
+
+                       start = pos;
+
+                       pos = offset;
+                       int length = document.getLength();
+
                        while (pos < length) {
-                               c= document.getChar(pos);
+                               c = document.getChar(pos);
                                if (!Scanner.isPHPIdentifierPart(c))
                                        break;
                                ++pos;
                        }
-                       
-                       end= pos;
-                       
+
+                       end = pos;
+
                } catch (BadLocationException x) {
                }
-               
+
                if (start > -1 && end > -1) {
                        if (start == offset && end == offset)
                                return new Region(offset, 0);
@@ -63,7 +66,7 @@ public class JavaWordFinder {
                        else
                                return new Region(start + 1, end - start - 1);
                }
-               
+
                return null;
        }
 }