public ExpressionResult getExpressionFromCodeSnippet(TextArea textArea) { IExpressionFinder finder = new CSharpExpressionFinder(this.parseInformation); var firstMethodOffset = calculateFirstMethodOffset(); var adjustedSnippeetText = getAdjustedSnippetText(textArea, firstMethodOffset); var offset = firstMethodOffset + textArea.Caret.Offset; var expression = finder.FindExpression(adjustedSnippeetText, offset); return expression; }
bool ShowNewCompletion(SharpDevelopTextAreaControl editor) { CSharpExpressionFinder ef = new CSharpExpressionFinder(editor.FileName); int cursor = editor.ActiveTextAreaControl.Caret.Offset; ExpressionContext context = ef.FindExpression(editor.Document.GetText(0, cursor) + " T.", cursor + 2).Context; if (context.IsObjectCreation) { editor.ShowCompletionWindow(new CtrlSpaceCompletionDataProvider(context), ' '); return true; } return false; }
public ExpressionResult getExpressionFromTextArea(TextArea textArea) { IExpressionFinder finder = new CSharpExpressionFinder(parseInformation); return finder.FindExpression(textArea.Document.TextContent, textArea.Caret.Offset); }