public int ProcessData(string aMessage, IVsHierarchy aHierarchy, OutputContentModel aOutputContent) { aOutputContent.Buffer.Add(aMessage); if (mErrorDetector.LlvmIsMissing(aMessage)) { aOutputContent.MissingLLVM = true; return(VSConstants.S_FALSE); } var text = String.Join("\n", aOutputContent.Buffer.ToList()) + "\n"; if (mErrorDetector.Detect(text, out Match aMatchResult)) { GetOutputAndErrors(text, aHierarchy, out string outputText, out List <TaskErrorModel> aDetectedErrors); aOutputContent.Text = outputText; aOutputContent.Errors.UnionWith(aDetectedErrors); aOutputContent.Buffer.Clear(); return(VSConstants.S_OK); } else if (kBufferSize <= aOutputContent.Buffer.Count) { aOutputContent.Text = aOutputContent.Buffer[0]; aOutputContent.Buffer.RemoveAt(0); return(VSConstants.S_OK); } return(VSConstants.S_FALSE); }
public void Clear() { mOutputContent = new OutputContentModel(); var outputWindow = mOutputWindowBuilder.GetResult(); UIUpdater.Invoke(() => { outputWindow.Pane.Clear(); }); }
public void Clear() { mOutputContent = new OutputContentModel(); var outputWindow = mOutputWindowBuilder.GetResult(); UIUpdater.InvokeAsync(() => { outputWindow.Pane.Clear(); }).SafeFireAndForget(); }