[1146] | 1 | using System;
|
---|
| 2 | using System.Collections.Generic;
|
---|
| 3 | using System.ComponentModel;
|
---|
| 4 | using System.Drawing;
|
---|
| 5 | using System.Data;
|
---|
| 6 | using System.Text;
|
---|
| 7 | using System.Windows.Forms;
|
---|
| 8 | using IndianHealthService.BMXNet.Services;
|
---|
| 9 |
|
---|
| 10 |
|
---|
| 11 | namespace IndianHealthService.BMXNet.Tools.ComponentTestBench
|
---|
| 12 | {
|
---|
| 13 | public partial class LogTranscriptControl : UserControl,Log
|
---|
| 14 | {
|
---|
| 15 | public LogTranscriptControl()
|
---|
| 16 | {
|
---|
| 17 | InitializeComponent();
|
---|
| 18 | }
|
---|
| 19 |
|
---|
| 20 |
|
---|
| 21 | private bool _isLogging = true;
|
---|
| 22 |
|
---|
| 23 | public bool IsLogging
|
---|
| 24 | {
|
---|
| 25 | get { return _isLogging; }
|
---|
| 26 | set { _isLogging = value; }
|
---|
| 27 | }
|
---|
| 28 |
|
---|
| 29 | public delegate void UiLogDelegate(string aClass, string aCategory, params string[] lines);
|
---|
| 30 |
|
---|
| 31 |
|
---|
| 32 | public void Log(string aClass, string aCategory, params string[] lines)
|
---|
| 33 | {
|
---|
| 34 | if (!this.IsLogging)
|
---|
| 35 | {
|
---|
| 36 | return;
|
---|
| 37 | }
|
---|
| 38 |
|
---|
| 39 | // if (this.InvokeRequired)
|
---|
| 40 | // {
|
---|
| 41 | // this.Invoke(new UiLogDelegate(this.UiLog), aClass, aCategory, lines);
|
---|
| 42 | // }
|
---|
| 43 | // else
|
---|
| 44 | // {
|
---|
| 45 | this.UiLog(aClass, aCategory, lines);
|
---|
| 46 | // }
|
---|
| 47 |
|
---|
| 48 | }
|
---|
| 49 |
|
---|
| 50 | protected void UiLog(string aClass, string aCategory, params string[] lines) {
|
---|
| 51 |
|
---|
| 52 |
|
---|
| 53 | this.transcriptBox.AppendText("\r\n-------------------\r\n");
|
---|
| 54 | this.transcriptBox.AppendText(DateTime.Now.ToString("HH:MM:ss.mm").PadRight(12)+" "+aClass.PadRight(12) + " " + aCategory.PadRight(12));
|
---|
| 55 | if (lines.Length == 1)
|
---|
| 56 | {
|
---|
| 57 | this.transcriptBox.AppendText(" ");
|
---|
| 58 | this.transcriptBox.AppendText(lines[0]);
|
---|
| 59 | } else {
|
---|
| 60 |
|
---|
| 61 | for (int i=0;i<lines.Length;i++)
|
---|
| 62 | {
|
---|
| 63 | this.transcriptBox.AppendText("\r\n");
|
---|
| 64 | this.transcriptBox.AppendText("[" + (i+1).ToString().PadLeft(2) + "] ");
|
---|
| 65 | this.transcriptBox.AppendText(lines[i]);
|
---|
| 66 | }
|
---|
| 67 | }
|
---|
| 68 | }
|
---|
| 69 |
|
---|
| 70 | public void Log(string aClass, string aCategory, Exception anException, params string[] lines)
|
---|
| 71 | {
|
---|
| 72 | if (!this.IsLogging)
|
---|
| 73 | {
|
---|
| 74 | return;
|
---|
| 75 | }
|
---|
| 76 |
|
---|
| 77 | this.Log(aClass, aCategory, lines);
|
---|
| 78 | this.transcriptBox.AppendText("#####");
|
---|
| 79 | this.transcriptBox.AppendText(anException.Message);
|
---|
| 80 | this.transcriptBox.AppendText("#####");
|
---|
| 81 | this.transcriptBox.AppendText(anException.StackTrace);
|
---|
| 82 | }
|
---|
| 83 |
|
---|
| 84 | private void LogTranscriptControl_Load(object sender, EventArgs e)
|
---|
| 85 | {
|
---|
| 86 | this.transcriptBox.ScrollBars = ScrollBars.Vertical;
|
---|
| 87 | this.transcriptBox.WordWrap = true;
|
---|
| 88 | }
|
---|
| 89 |
|
---|
| 90 |
|
---|
| 91 | }
|
---|
| 92 | }
|
---|