public override void Dispose() { running = false; try { if (avgThread != null) { avgThread.Interrupt(); avgThread = null; } } catch (Exception) { } if (desktop != null) { desktop.Dispose(); desktop = null; } if (sprites != null) { sprites.Dispose(); sprites = null; } if (command != null) { command = null; } if (scrCG != null) { scrCG.Dispose(); scrCG = null; } if (dialog != null) { if (dialog.GetFileName() != null) { dialog.Destroy(); dialog = null; } } base.Dispose(); }