private void SwitchDemo(int demo) { //// Ignore if the demo request is too high //if (demo < 0 || demo + 1 > demos.Count) //{ // return; //} if (demo != this.demo) { this.demo = demo; // Stop the demo, if any StopDemo(); switch (demo) { case 0: currentDemo = new BounceMode(); currentDemo.Start(); break; case 1: currentDemo = new FontMode(); currentDemo.Start(); break; case 2: currentDemo = new DragMode(); currentDemo.Start(); break; case 3: currentDemo = new ViewportMode(); currentDemo.Start(); break; case 4: currentDemo = new MultipleMode(); currentDemo.Start(); break; default: currentDemo = new BounceMode(); currentDemo.Start(); break; } //// Start it //currentDemo = demos[demo]; //currentDemo.Start(); } }
/// <summary> /// /// </summary> /// <param name="disposing"></param> protected virtual void Dispose(bool disposing) { if (!this.disposed) { if (disposing) { this.screen.Dispose(); if (currentDemo != null) { currentDemo.Dispose(); currentDemo = null; } } this.disposed = true; } }
//private void LoadDemo(DemoMode mode) //{ // // Add to the array list // demos.Add(mode); //} //private void LoadDemos() //{ // Load the actual demos //LoadDemo(new BounceMode()); //LoadDemo(new FontMode()); //LoadDemo(new DragMode()); //LoadDemo(new ViewportMode()); //LoadDemo(new MultipleMode()); //} private void StopDemo() { // Stop the demo, if any if (currentDemo != null) { currentDemo.Stop(); //currentDemo.Dispose(); currentDemo = null; } //System.GC.Collect(); }