// Project: XnaGraphicEngine, File: TestGame.cs // Namespace: XnaGraphicEngine.Game, Class: TestGame // Path: C:\code\XnaBook\XnaGraphicEngine\Game, Author: Abi // Code lines: 125, Size of file: 2,82 KB // Creation date: 26.11.2006 12:22 // Last modified: 27.11.2006 03:50 // Generated with Commenter by abi.exDream.com // Only used in debug mode #if DEBUG #region Using directives using Microsoft.Xna.Framework; using System; using System.Collections.Generic; using System.Text; using XnaGraphicEngine.Helpers; #endregion namespace XnaGraphicEngine.Game { /// /// Test game /// public class TestGame : YourGame { #region Variables /// /// Init code /// protected RenderDelegate initCode, renderCode; #endregion #region Constructor /// /// Create test game /// /// Set windows title /// Window width /// Window height /// Set init code /// Set render code protected TestGame(string setWindowsTitle, RenderDelegate setInitCode, RenderDelegate setRenderCode) { this.Window.Title = setWindowsTitle; #if !XBOX360 #if DEBUG // Force window on top WindowsHelper.ForceForegroundWindow(this.Window.Handle.ToInt32()); #endif #endif initCode = setInitCode; renderCode = setRenderCode; } // TestGame(setWindowsTitle, setRenderCode) /// /// Initialize /// protected override void Initialize() { // Initialize game base.Initialize(); // Call our custom initCode if (initCode != null) initCode(); } // Initialize() #endregion #region Update /// /// Update /// protected override void Update(GameTime time) { base.Update(time); } // Update(time) #endregion #region Draw /// /// Draw /// protected override void Draw(GameTime gameTime) { ClearBackground(); // Drawing code if (renderCode != null) renderCode(); base.Draw(gameTime); } // Draw(gameTime) #endregion #region Start test /// /// Game /// public static TestGame game; /// /// Start /// /// Test name /// Init code /// Render code public static void Start(string testName, RenderDelegate initCode, RenderDelegate renderCode) { using (game = new TestGame(testName, initCode, renderCode)) { game.Run(); } // using (game) } // Start(testName, initCode, renderCode) /// /// Start /// /// Test name /// Render code public static void Start(string testName, RenderDelegate renderCode) { Start(testName, null, renderCode); } // Start(testName, renderCode) /// /// Start /// /// Render code public static void Start(RenderDelegate renderCode) { Start("Unit Test", null, renderCode); } // Start(renderCode) #endregion #region Unit Testing #if DEBUG #region TestEmptyGame /// /// Test empty game /// public static void TestEmptyGame() { TestGame.Start(null); } // TestEmptyGame() #endregion #endif #endregion } // class TestGame } // namespace XnaGraphicEngine.Game #endif