Skip to content

Commit 6089f18

Browse files
committed
peformance improvements
1 parent ea3b255 commit 6089f18

File tree

1 file changed

+27
-38
lines changed

1 file changed

+27
-38
lines changed

Analogy.CommonControls/UserControls/LogMessagesUC.cs

+27-38
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@
3232
using DevExpress.XtraBars;
3333
using DevExpress.XtraBars.Alerter;
3434
using DevExpress.XtraBars.Docking;
35-
using DevExpress.XtraCharts;
3635
using DevExpress.XtraEditors;
3736
using DevExpress.XtraEditors.Controls;
3837
using DevExpress.XtraEditors.Mask;
@@ -205,7 +204,7 @@ public bool ServerSideModeEnabled
205204
private bool useSpecificColumnForJson;
206205
private string jsonColumnForInlineJsonViewer;
207206
private DataVisualizerForm frmDataVisualizer;
208-
207+
private MarkdownPipeline pipeline;
209208
#endregion fields
210209

211210
private JsonTreeUC JsonTreeView { get; set; }
@@ -222,6 +221,7 @@ public LogMessagesUC()
222221
{
223222
return;
224223
}
224+
pipeline = new MarkdownPipelineBuilder().UseAdvancedExtensions().Build();
225225
Id = Guid.NewGuid();
226226
SetupDependencies();
227227

@@ -2474,50 +2474,39 @@ private void ClearLogs(bool raiseEvent)
24742474

24752475
private void LoadTextBoxes(AnalogyLogMessage m)
24762476
{
2477-
switch (m.RawTextType)
2478-
{
2479-
case AnalogyRowTextType.None:
2480-
case AnalogyRowTextType.Unknown:
2481-
case AnalogyRowTextType.PlainText:
2482-
case AnalogyRowTextType.RichText:
2483-
case AnalogyRowTextType.XML:
2484-
case AnalogyRowTextType.HTML:
2485-
case AnalogyRowTextType.Markdown:
2486-
bbtnRawMessageViewer.Visibility = string.IsNullOrEmpty(m.RawText) ? BarItemVisibility.Never : BarItemVisibility.Always;
2487-
bbtnRawMessageViewer.Caption = "View Raw Data";
2488-
break;
2489-
case AnalogyRowTextType.JSON:
2490-
bbtnRawMessageViewer.Visibility = BarItemVisibility.Always;
2491-
bbtnRawMessageViewer.Caption = "View in Json Visualizer";
2492-
bbtnRawMessageViewer.ImageOptions.Image = Resources.json16x16;
2493-
break;
2494-
default:
2495-
throw new ArgumentOutOfRangeException();
2496-
}
2497-
var pipeline = new MarkdownPipelineBuilder().UseAdvancedExtensions()
2498-
.Build();
2499-
if (InvokeRequired)
2477+
meMessageDetails.InvokeIfRequired((_) =>
25002478
{
2501-
BeginInvoke(new MethodInvoker(() =>
2479+
if (!meMessageDetails.Visible)
25022480
{
2503-
bbtnRawMessageViewer.Tag = m;
2504-
recMessageDetails.Tag = m;
2505-
recMessageDetails.Text = Utils.ProcessLinuxMessage(m.Text, Settings.SupportLinuxFormatting);
2506-
meMessageDetails.Tag = m;
2507-
meMessageDetails.Text = Utils.ProcessLinuxMessage(m.Text, Settings.SupportLinuxFormatting); ;
2508-
recMessageDetails.HtmlText = Markdown.ToHtml(m.Text, pipeline);
2509-
}));
2510-
}
2511-
else
2512-
{
2481+
return;
2482+
}
2483+
switch (m.RawTextType)
2484+
{
2485+
case AnalogyRowTextType.None:
2486+
case AnalogyRowTextType.Unknown:
2487+
case AnalogyRowTextType.PlainText:
2488+
case AnalogyRowTextType.RichText:
2489+
case AnalogyRowTextType.XML:
2490+
case AnalogyRowTextType.HTML:
2491+
case AnalogyRowTextType.Markdown:
2492+
bbtnRawMessageViewer.Visibility = string.IsNullOrEmpty(m.RawText) ? BarItemVisibility.Never : BarItemVisibility.Always;
2493+
bbtnRawMessageViewer.Caption = "View Raw Data";
2494+
break;
2495+
case AnalogyRowTextType.JSON:
2496+
bbtnRawMessageViewer.Visibility = BarItemVisibility.Always;
2497+
bbtnRawMessageViewer.Caption = "View in Json Visualizer";
2498+
bbtnRawMessageViewer.ImageOptions.Image = Resources.json16x16;
2499+
break;
2500+
default:
2501+
throw new ArgumentOutOfRangeException();
2502+
}
25132503
bbtnRawMessageViewer.Tag = m;
25142504
recMessageDetails.Tag = m;
25152505
recMessageDetails.Text = Utils.ProcessLinuxMessage(m.Text, Settings.SupportLinuxFormatting); ;
25162506
meMessageDetails.Tag = m;
25172507
meMessageDetails.Text = Utils.ProcessLinuxMessage(m.Text, Settings.SupportLinuxFormatting); ;
25182508
recMessageDetails.HtmlText = Markdown.ToHtml(m.Text, pipeline);
2519-
}
2520-
2509+
});
25212510
}
25222511

25232512
#region Log grid Event Handlers

0 commit comments

Comments
 (0)