private void PrepareView() { _view.OldMethodName = _model.SourceMember.IdentifierName; _view.MethodName = _model.SourceMember.IdentifierName + "_1"; _view.Inputs = _model.Inputs; _view.Outputs = _model.Outputs; _view.Locals = _model.Locals.Select( variable => new ExtractedParameter(variable.AsTypeName, ExtractedParameter.PassedBy.ByVal, variable.IdentifierName)) .ToList(); var returnValues = new[] { new ExtractedParameter(string.Empty, ExtractedParameter.PassedBy.ByVal) } .Union(_view.Outputs) .Union(_view.Inputs) .ToList(); _view.ReturnValues = returnValues; _view.ReturnValue = (_model.Outputs.Any() && !_model.Outputs.Skip(1).Any()) ? _model.Outputs.Single() : returnValues.First(); _view.RefreshPreview += _view_RefreshPreview; _view.OnRefreshPreview(); }
public void Show() { _view.MethodName = "Method1"; _view.Inputs = _input.ToList(); _view.Outputs = _output.Select(output => new ExtractedParameter(output.Name, output.TypeName, ExtractedParameter.PassedBy.ByRef)).ToList(); _view.Locals = _locals.Select(variable => new ExtractedParameter(variable.GetText(), string.Empty, ExtractedParameter.PassedBy.ByVal)).ToList(); var returnValues = new[] { new ExtractedParameter("(none)", string.Empty, ExtractedParameter.PassedBy.ByVal) } .Union(_view.Outputs) .Union(_view.Inputs) .ToList(); _view.ReturnValues = returnValues; if (_output.Count() == 1) { _view.ReturnValue = _output.Single(); } else { _view.ReturnValue = returnValues.First(); } _view.RefreshPreview += _view_RefreshPreview; _view.OnRefreshPreview(); var result = _view.ShowDialog(); if (result != DialogResult.OK) { return; } _vbe.ActiveCodePane.CodeModule.DeleteLines(_selection.Selection.StartLine, _selection.Selection.LineCount - 1); _vbe.ActiveCodePane.CodeModule.ReplaceLine(_selection.Selection.StartLine, GetMethodCall()); var insertionLine = ((ParserRuleContext)_parentMethodTree).GetSelection().EndLine - _selection.Selection.LineCount + 2; _vbe.ActiveCodePane.CodeModule.InsertLines(insertionLine, GetExtractedMethod()); }
private void PrepareView(IExtractMethodModel extractedMethodModel, IExtractMethodProc extractMethodProc) { _view.OldMethodName = extractedMethodModel.SourceMember.IdentifierName; _view.MethodName = extractedMethodModel.SourceMember.IdentifierName + "_1"; _view.Inputs = extractedMethodModel.Inputs; _view.Outputs = extractedMethodModel.Outputs; _view.Locals = extractedMethodModel.Locals.Select( variable => new ExtractedParameter(variable.AsTypeName, ExtractedParameter.PassedBy.ByVal, variable.IdentifierName)) .ToList(); var returnValues = new[] { new ExtractedParameter(string.Empty, ExtractedParameter.PassedBy.ByVal) } .Union(_view.Outputs) .Union(_view.Inputs) .ToList(); _view.ReturnValues = returnValues; _view.RefreshPreview += (object sender, EventArgs e) => { GeneratePreview(extractedMethodModel, extractMethodProc); }; _view.OnRefreshPreview(); }