Lines 76-81
Link Here
|
76 |
import java.util.regex.Matcher; |
76 |
import java.util.regex.Matcher; |
77 |
import java.util.regex.Pattern; |
77 |
import java.util.regex.Pattern; |
78 |
import javax.lang.model.element.Element; |
78 |
import javax.lang.model.element.Element; |
|
|
79 |
import javax.lang.model.element.Name; |
80 |
import javax.lang.model.element.TypeElement; |
79 |
import javax.swing.Icon; |
81 |
import javax.swing.Icon; |
80 |
import org.netbeans.api.actions.Openable; |
82 |
import org.netbeans.api.actions.Openable; |
81 |
import org.netbeans.api.java.lexer.JavaTokenId; |
83 |
import org.netbeans.api.java.lexer.JavaTokenId; |
Lines 153-159
Link Here
|
153 |
case INTERFACE: |
155 |
case INTERFACE: |
154 |
case ENUM: |
156 |
case ENUM: |
155 |
case ANNOTATION_TYPE: |
157 |
case ANNOTATION_TYPE: |
156 |
return new BreadCrumbsNodeImpl(parent, tph, iconFor(info, path), className(path), info.getFileObject(), pos); |
158 |
//by default use simpleName |
|
|
159 |
String className = className(path); |
160 |
//but use FQN for topmost class/enum/interface... |
161 |
for (TypeElement typeElement : info.getTopLevelElements()) { |
162 |
if (typeElement.equals(info.getTrees().getElement(path))) { |
163 |
className = typeElement.getQualifiedName().toString(); |
164 |
} |
165 |
} |
166 |
return new BreadCrumbsNodeImpl(parent, tph, iconFor(info, path), className, info.getFileObject(), pos); |
157 |
case METHOD: |
167 |
case METHOD: |
158 |
MethodTree mt = (MethodTree) leaf; |
168 |
MethodTree mt = (MethodTree) leaf; |
159 |
CharSequence name; |
169 |
CharSequence name; |