Now uses disposable pattern when launching GameWindows and Forms.

This commit is contained in:
the_fiddler 2007-09-30 12:38:40 +00:00
parent cccb14446a
commit 50733e421d

View file

@ -84,7 +84,11 @@ namespace Examples
Type ex = example as Type; Type ex = example as Type;
try try
{ {
(ex.GetConstructor(Type.EmptyTypes).Invoke(null) as IExample).Launch(); using (GameWindow gw = (GameWindow)(ex.GetConstructor(Type.EmptyTypes).Invoke(null)))
{
(gw as IExample).Launch();
}
} }
catch (Exception expt) catch (Exception expt)
{ {
@ -120,10 +124,10 @@ namespace Examples
{ {
// In this we do not want a different thread: these examples rely on the Application.Idle // In this we do not want a different thread: these examples rely on the Application.Idle
// event, which would then be raised by both the ExampleLauncher thread *and* the new one! // event, which would then be raised by both the ExampleLauncher thread *and* the new one!
Form f = (Form)example.GetConstructor(Type.EmptyTypes).Invoke(null); using (Form f = (Form)example.GetConstructor(Type.EmptyTypes).Invoke(null))
f.ShowDialog(this); {
f.Dispose(); f.ShowDialog(this);
f = null; }
} }
catch (Exception expt) catch (Exception expt)
{ {