diff --git a/axios/Axios_WP7.csproj b/axios/Axios_WP7.csproj
index 8b2eaf3..70983a8 100644
--- a/axios/Axios_WP7.csproj
+++ b/axios/Axios_WP7.csproj
@@ -166,6 +166,7 @@
+
diff --git a/axios/Axios_Windows.csproj b/axios/Axios_Windows.csproj
index 3fa789c..9f27321 100644
--- a/axios/Axios_Windows.csproj
+++ b/axios/Axios_Windows.csproj
@@ -209,6 +209,7 @@
+
diff --git a/axios/Axios_Xbox_360.csproj b/axios/Axios_Xbox_360.csproj
index df47048..4ccbed8 100644
--- a/axios/Axios_Xbox_360.csproj
+++ b/axios/Axios_Xbox_360.csproj
@@ -159,6 +159,7 @@
+
diff --git a/axios/Axios_settings.cs b/axios/Axios_settings.cs
index 63d0b20..3e8d458 100644
--- a/axios/Axios_settings.cs
+++ b/axios/Axios_settings.cs
@@ -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 --git a/axios/Engine/AxiosGameScreen.cs b/axios/Engine/AxiosGameScreen.cs
index 1fd0873..211795f 100644
--- a/axios/Engine/AxiosGameScreen.cs
+++ b/axios/Engine/AxiosGameScreen.cs
@@ -415,39 +415,6 @@ namespace Axios.Engine
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 --git a/axios/Engine/Extensions/Bitmap.cs b/axios/Engine/Extensions/Bitmap.cs
new file mode 100644
index 0000000..c540362
--- /dev/null
+++ b/axios/Engine/Extensions/Bitmap.cs
@@ -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
+ }
+}