Browse Source

Improved conditional highlighting.

pull/32/merge
Mike Krüger 13 years ago
parent
commit
0bcf543bf1
  1. 10
      ICSharpCode.NRefactory.CSharp/Analysis/SemanticHighlightingVisitor.cs

10
ICSharpCode.NRefactory.CSharp/Analysis/SemanticHighlightingVisitor.cs

@ -255,8 +255,8 @@ namespace ICSharpCode.NRefactory.CSharp.Analysis
if (target is IdentifierExpression || target is MemberReferenceExpression || target is PointerReferenceExpression) { if (target is IdentifierExpression || target is MemberReferenceExpression || target is PointerReferenceExpression) {
var invocationRR = resolver.Resolve(invocationExpression, cancellationToken) as CSharpInvocationResolveResult; var invocationRR = resolver.Resolve(invocationExpression, cancellationToken) as CSharpInvocationResolveResult;
if (invocationRR != null && IsInactiveConditionalMethod(invocationRR.Member)) { if (invocationRR != null && IsInactiveConditionalMethod(invocationRR.Member)) {
// mark the whole invocation expression as inactive code // mark the whole invocation statement as inactive code
Colorize(invocationExpression, inactiveCodeColor); Colorize(invocationExpression.Parent, inactiveCodeColor);
return; return;
} }
@ -338,6 +338,12 @@ namespace ICSharpCode.NRefactory.CSharp.Analysis
public override void VisitMethodDeclaration(MethodDeclaration methodDeclaration) public override void VisitMethodDeclaration(MethodDeclaration methodDeclaration)
{ {
var result = resolver.Resolve (methodDeclaration, cancellationToken) as MemberResolveResult;
if (IsInactiveConditionalMethod(result.Member as IMethod)) {
Colorize(methodDeclaration, inactiveCodeColor);
return;
}
var nameToken = methodDeclaration.NameToken; var nameToken = methodDeclaration.NameToken;
VisitChildrenUntil(methodDeclaration, nameToken); VisitChildrenUntil(methodDeclaration, nameToken);
if (!methodDeclaration.PrivateImplementationType.IsNull) { if (!methodDeclaration.PrivateImplementationType.IsNull) {

Loading…
Cancel
Save