MyNes_src/MyNes/MyNes/FormGeneratingDatabaseTraceListner.cs
2024-07-03 18:15:19 +08:00

61 lines
1.2 KiB
C#

using System.Diagnostics;
using System.Drawing;
namespace MyNes;
public class FormGeneratingDatabaseTraceListner : TraceListener
{
private FormGeneratingDatabase form;
public FormGeneratingDatabaseTraceListner(FormGeneratingDatabase form)
{
this.form = form;
}
public override void Write(string message)
{
if (form != null)
{
form.WriteStatus(message, Color.Black);
}
}
public override void WriteLine(string message)
{
if (form != null)
{
form.WriteStatus(message, Color.Black);
}
}
public override void WriteLine(string message, string category)
{
if (form != null)
{
form.WriteStatus(category + ": " + message, Color.Black);
}
}
public override void TraceEvent(TraceEventCache eventCache, string source, TraceEventType eventType, int id, string message)
{
if (form != null)
{
switch (eventType)
{
case TraceEventType.Information:
form.WriteStatus(source + ": " + message, Color.Black);
break;
case TraceEventType.Warning:
form.WriteStatus(source + ": " + message, Color.Yellow);
break;
case TraceEventType.Error:
form.WriteStatus(source + ": " + message, Color.Red);
break;
default:
form.WriteStatus(source + ": " + message, Color.Black);
break;
}
}
}
}