public static void SetCurrent(DocumentViewModel value) { if (value == null) { return; } OutputService.Log($"SET Current request for {value.Model.File.Path}"); _queue.Add(value); }
public void Render(string model) { _renderComplete.Reset(); var r = new ReleaseUI($"Render ReleaseUI for {ViewModel.Model.File.Path}", true); ViewModel.RenderStarted(); SuspendLayout(); try { if (model == null) { Log.WriteError("Model is NULL, this should not happen!", typeof(DocumentWindow).FullName, MethodBase.GetCurrentMethod().Name); return; } if (InvokeRequired) { Invoke(new Action <string>(Render), model); return; } PerformanceService.StartEvent($"{PerformanceService.CONST_RenderDocument}{ViewModel.Model.File.Path}"); OutputService.Log($"Document Render for {ViewModel.Model.File.Path}"); Log.WriteEnter(typeof(DocumentWindow).FullName, MethodBase.GetCurrentMethod().Name); // Setting SelectionChangedDelayedEnabled for the first time if (!fctbDocument.SelectionChangedDelayedEnabled) { fctbDocument.SelectionChangedDelayedEnabled = true; } scBase.Panel1Collapsed = !XmlDal.DataModel.Options.DocumentSourceInfo; PreCachePropertyLineData(); r.DoEvents(); sourceInfo.Render(ViewModel.Model.File); fctbDocument.ClearCache(); r.DoEvents(); fctbDocument.Text = model; r.DoEvents(); ApplyFolding(); // Force the control to paint itself now fctbDocument.Invalidate(); StatusUpdate(StatusModel.Completed); Log.WriteTrace("Document Render Complete...", typeof(DocumentWindow).FullName, MethodBase.GetCurrentMethod().Name); PerformanceService.StopEvent($"Rebuild Active Document for {ViewModel.Model.File.Path}", true); PerformanceService.StopEvent($"{PerformanceService.CONST_RenderDocument}{ViewModel.Model.File.Path}", true); r.Stop(); } finally { ResumeLayout(); ViewModel.DocumentRenderComplete(); _renderComplete.Set(); } }
public override void RenderDocument() { if (MainViewModel.Current == null) { return; } if (!View.Visible) { return; } OutputService.Log($"DocumentMap Render Request for {MainViewModel.Current.Model.File.Path}"); _queue.Add(MainViewModel.Current.Model.File); }
public void Render(SockDrawerModel model) { OutputService.Log("Rendering SockDrawer."); StatusPanel.StatusUpdate(StatusModel.StartStopWatch); StatusPanel.SP_FullScreen = false; StatusPanel.SP_DisplayRemainingTime = false; StatusPanel.StatusUpdate(StatusModel.Update("Loading")); Model = model; if (!_treeViewInvalidated) { return; } _treeViewInvalidated = false; RenderTreeView(); }
public static void Warning(string message) { OutputService.Log(message); }
private void QueueRender(FileData file) { OutputService.Log($"Document Map Queue Render for {MainViewModel.Current.Model.File.Path}"); _current = file; base.RenderDocument(); }
/// <summary> /// Current is only set by the following Events /// 1.) MainViewModel.Startup Method /// 2.) OpenDocument /// 3.) DocumentWindow.Enter /// 4.) When all documents are closed /// </summary> private static void QueueCurrent(DocumentViewModel value) { var complete = true; try { var sw = new Stopwatch(MethodBase.GetCurrentMethod().Name); if (_current == value) { return; } if (_current != null && _current.Model.File.DataController.InvalidateNotificationEvent != null) { foreach (var viewModel in DocumentViewModels) { if (viewModel.GetType().Name == "DocumentViewModel") { continue; } _current.Model.File.DataController.InvalidateNotificationEvent -= viewModel.RenderDocument; } _current.Model.File.DataController.InvalidateNotificationEvent -= _current.RenderDocument; } _current = value; if (_current == null) { return; } OutputService.Log($"SET Current for {value.Model.File.Path}"); foreach (var viewModel in DocumentViewModels) { if (viewModel.GetType().Name == "DocumentViewModel") { continue; } _current.Model.File.DataController.InvalidateNotificationEvent += viewModel.RenderDocument; } _current.Model.File.DataController.InvalidateNotificationEvent += _current.RenderDocument; if (!StartupComplete) { return; } // We only Render the Document if 'IsCached' is false OR the first time we render the Document // Otherwise we are just setting focus to this document - Sara if ((!_current.IsCached || !_current.FirstRenderComplete) & !_current.IsRendering) { _current.RenderDocument(); complete = false; } RenderViews(); PrepareHideOptions(); sw.Stop(); } finally { if (complete) { _queue.ItemComplete(); } } }