Opentk/Source/Examples/TextBoxTraceListener.cs
the_fiddler 7851bbff84 New sample browser with documentation and source code display.
Reduced example categories to OpenGL, OpenAL, OpenTK. Updated all samples to reflect this change.
Moved startup and loading code into separate files.
2009-04-20 07:20:25 +00:00

39 lines
1.1 KiB
C#

using System;
using System.Collections.Generic;
using System.Text;
using System.Diagnostics;
using System.Windows.Forms;
namespace Examples
{
public class TextBoxTraceListener : TraceListener
{
private TextBox _target;
private StringSendDelegate _invokeWrite;
public TextBoxTraceListener(TextBox target)
{
_target = target;
_invokeWrite = new StringSendDelegate(SendString);
}
public override void Write(string message)
{
_target.Invoke(_invokeWrite, new object[] { message });
}
public override void WriteLine(string message)
{
_target.Invoke(_invokeWrite, new object[] { message + Environment.NewLine });
}
private delegate void StringSendDelegate(string message);
private void SendString(string message)
{
// No need to lock text box as this function will only
// ever be executed from the UI thread
_target.Text += message;
}
}
}