Example #1
0
        protected override Action <ITextControl> ExecutePsiTransaction(ISolution solution, IProgressIndicator progress)
        {
            ITypeDeclaration typeDeclaration = GetTargetTypeDeclaration(_highlighting.BaseClass);

            if (typeDeclaration == null)
            {
                return(null);
            }

            MemberSignature signature = CreateTransformTextSignature(typeDeclaration);
            TypeTarget      target    = CreateTarget(typeDeclaration);

            var context = new CreateMethodDeclarationContext {
                AccessRights = AccessRights.PUBLIC,
                ExecuteTemplateOverMemberBody = false,
                ExecuteTemplateOverName       = false,
                ExecuteTemplateOverParameters = false,
                ExecuteTemplateOverReturnType = false,
                IsAbstract       = true,
                IsStatic         = false,
                MethodSignatures = new[] { signature },
                MethodName       = T4CSharpIntermediateConverterBase.TransformTextMethodName,
                SourceReferenceExpressionReference = null,
                Target = target,
            };

            IntentionResult intentionResult = MethodDeclarationBuilder.Create(context);

            intentionResult.ExecuteTemplate();
            return(null);
        }