diff -r 83549dbfc1c0f66892507a5319932e4a19e1a40b -r c4506ad5a55e135ee73f534ce95672d7e2579100 axios/Axios_WP7.csproj --- a/axios/Axios_WP7.csproj Fri May 18 21:32:22 2012 -0500 +++ b/axios/Axios_WP7.csproj Fri May 18 21:35:58 2012 -0500 @@ -166,6 +166,7 @@ + diff -r 83549dbfc1c0f66892507a5319932e4a19e1a40b -r c4506ad5a55e135ee73f534ce95672d7e2579100 axios/Axios_Windows.csproj --- a/axios/Axios_Windows.csproj Fri May 18 21:32:22 2012 -0500 +++ b/axios/Axios_Windows.csproj Fri May 18 21:35:58 2012 -0500 @@ -209,6 +209,7 @@ + diff -r 83549dbfc1c0f66892507a5319932e4a19e1a40b -r c4506ad5a55e135ee73f534ce95672d7e2579100 axios/Axios_Xbox_360.csproj --- a/axios/Axios_Xbox_360.csproj Fri May 18 21:32:22 2012 -0500 +++ b/axios/Axios_Xbox_360.csproj Fri May 18 21:35:58 2012 -0500 @@ -159,6 +159,7 @@ + diff -r 83549dbfc1c0f66892507a5319932e4a19e1a40b -r c4506ad5a55e135ee73f534ce95672d7e2579100 axios/Axios_settings.cs --- a/axios/Axios_settings.cs Fri May 18 21:32:22 2012 -0500 +++ b/axios/Axios_settings.cs Fri May 18 21:35:58 2012 -0500 @@ -86,6 +86,7 @@ * 1.0.1.6 - 5/18/2012 * - Adding cut extension - [Author: BJD] * - Adding support for custom handling of Gleed2D items + * - Changing location of GetTexture to extensions * */ #endregion diff -r 83549dbfc1c0f66892507a5319932e4a19e1a40b -r c4506ad5a55e135ee73f534ce95672d7e2579100 axios/Engine/AxiosGameScreen.cs --- a/axios/Engine/AxiosGameScreen.cs Fri May 18 21:32:22 2012 -0500 +++ b/axios/Engine/AxiosGameScreen.cs Fri May 18 21:35:58 2012 -0500 @@ -415,39 +415,6 @@ return true; } -#if WINDOWS -// System.Drawing is NOT avaiable on WP7 or Xbox - /* - * http://stackoverflow.com/a/7394185/195722 - * - * - * - */ - public Texture2D GetTexture(System.Drawing.Bitmap bitmap) - { - BlendState oldstate = ScreenManager.GraphicsDevice.BlendState; - ScreenManager.GraphicsDevice.BlendState = BlendState.AlphaBlend; - Texture2D tex = new Texture2D(this.ScreenManager.GraphicsDevice, bitmap.Width, bitmap.Height, true, SurfaceFormat.Color); - System.Drawing.Imaging.BitmapData data = bitmap.LockBits(new System.Drawing.Rectangle(0, 0, bitmap.Width, bitmap.Height), System.Drawing.Imaging.ImageLockMode.ReadOnly, bitmap.PixelFormat); - - int bufferSize = data.Height * data.Stride; - - //create data buffer - byte[] bytes = new byte[bufferSize]; - - // copy bitmap data into buffer - System.Runtime.InteropServices.Marshal.Copy(data.Scan0, bytes, 0, bytes.Length); - - // copy our buffer to the texture - tex.SetData(bytes); - - // unlock the bitmap data - bitmap.UnlockBits(data); - - this.ScreenManager.GraphicsDevice.BlendState = oldstate; - return tex; - } -#endif } } diff -r 83549dbfc1c0f66892507a5319932e4a19e1a40b -r c4506ad5a55e135ee73f534ce95672d7e2579100 axios/Engine/Extensions/Bitmap.cs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/axios/Engine/Extensions/Bitmap.cs Fri May 18 21:35:58 2012 -0500 @@ -0,0 +1,49 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using Microsoft.Xna.Framework.Graphics; +using Microsoft.Xna.Framework; +using Microsoft.Xna.Framework.Content; +using GameStateManagement; + +namespace Axios.Engine.Extensions +{ + public static class Bitmap_extension + { +#if WINDOWS + // System.Drawing is NOT avaiable on WP7 or Xbox + /* + * http://stackoverflow.com/a/7394185/195722 + * + * + * + */ + public static Texture2D GetTexture(this System.Drawing.Bitmap bitmap, GameScreen gameScreen) + { + BlendState oldstate = gameScreen.ScreenManager.GraphicsDevice.BlendState; + gameScreen.ScreenManager.GraphicsDevice.BlendState = BlendState.AlphaBlend; + Texture2D tex = new Texture2D(gameScreen.ScreenManager.GraphicsDevice, bitmap.Width, bitmap.Height, true, SurfaceFormat.Color); + + System.Drawing.Imaging.BitmapData data = bitmap.LockBits(new System.Drawing.Rectangle(0, 0, bitmap.Width, bitmap.Height), System.Drawing.Imaging.ImageLockMode.ReadOnly, bitmap.PixelFormat); + + int bufferSize = data.Height * data.Stride; + + //create data buffer + byte[] bytes = new byte[bufferSize]; + + // copy bitmap data into buffer + System.Runtime.InteropServices.Marshal.Copy(data.Scan0, bytes, 0, bytes.Length); + + // copy our buffer to the texture + tex.SetData(bytes); + + // unlock the bitmap data + bitmap.UnlockBits(data); + + gameScreen.ScreenManager.GraphicsDevice.BlendState = oldstate; + return tex; + } +#endif + } +}