diff -r bb40f1316d616d7b41c5dd47a25f21d813de9fbe -r 9b4390d6d1d1278d0fd4ddf70defde338dbf52c9 axios/Axios_settings.cs --- a/axios/Axios_settings.cs Sat May 12 17:54:30 2012 -0500 +++ b/axios/Axios_settings.cs Sat May 12 18:36:46 2012 -0500 @@ -72,6 +72,7 @@ * - Adding support for Gleed2D * - Splitting the code for Gleed2D into seperate files * - Adding a cache for loading in textures for Gleed2D + * - Adding GetStream(FileMode) to get the stream of a file * */ diff -r bb40f1316d616d7b41c5dd47a25f21d813de9fbe -r 9b4390d6d1d1278d0fd4ddf70defde338dbf52c9 axios/Engine/File/AxiosFile.cs --- a/axios/Engine/File/AxiosFile.cs Sat May 12 17:54:30 2012 -0500 +++ b/axios/Engine/File/AxiosFile.cs Sat May 12 18:36:46 2012 -0500 @@ -28,5 +28,10 @@ { throw new NotImplementedException(); } + + public virtual FileStream GetStream(FileMode mode) + { + throw new NotImplementedException(); + } } } diff -r bb40f1316d616d7b41c5dd47a25f21d813de9fbe -r 9b4390d6d1d1278d0fd4ddf70defde338dbf52c9 axios/Engine/File/AxiosIsolatedFile.cs --- a/axios/Engine/File/AxiosIsolatedFile.cs Sat May 12 17:54:30 2012 -0500 +++ b/axios/Engine/File/AxiosIsolatedFile.cs Sat May 12 18:36:46 2012 -0500 @@ -50,5 +50,18 @@ Content = ret; return ret; } + + public override FileStream GetStream(FileMode mode) + { +#if WINDOWS + IsolatedStorageFile savegameStorage = IsolatedStorageFile.GetUserStoreForDomain(); +#else + IsolatedStorageFile savegameStorage = IsolatedStorageFile.GetUserStoreForApplication(); +#endif + IsolatedStorageFileStream fs = null; + fs = savegameStorage.OpenFile(_filename, mode); + return fs; + } + } } diff -r bb40f1316d616d7b41c5dd47a25f21d813de9fbe -r 9b4390d6d1d1278d0fd4ddf70defde338dbf52c9 axios/Engine/File/AxiosRegularFile.cs --- a/axios/Engine/File/AxiosRegularFile.cs Sat May 12 17:54:30 2012 -0500 +++ b/axios/Engine/File/AxiosRegularFile.cs Sat May 12 18:36:46 2012 -0500 @@ -36,5 +36,11 @@ sr.Close(); return ret; } + + public override FileStream GetStream(FileMode mode) + { + FileStream fs = new FileStream(_filename, mode); + return fs; + } } } diff -r bb40f1316d616d7b41c5dd47a25f21d813de9fbe -r 9b4390d6d1d1278d0fd4ddf70defde338dbf52c9 axios/Engine/File/AxiosTitleFile.cs --- a/axios/Engine/File/AxiosTitleFile.cs Sat May 12 17:54:30 2012 -0500 +++ b/axios/Engine/File/AxiosTitleFile.cs Sat May 12 18:36:46 2012 -0500 @@ -27,5 +27,11 @@ sr.Close(); return this.Content; } + + public override FileStream GetStream(FileMode mode) + { + FileStream fs = (FileStream)TitleContainer.OpenStream(_filename); + return fs; + } } } diff -r bb40f1316d616d7b41c5dd47a25f21d813de9fbe -r 9b4390d6d1d1278d0fd4ddf70defde338dbf52c9 axios/Engine/Interfaces/IAxiosFile.cs --- a/axios/Engine/Interfaces/IAxiosFile.cs Sat May 12 17:54:30 2012 -0500 +++ b/axios/Engine/Interfaces/IAxiosFile.cs Sat May 12 18:36:46 2012 -0500 @@ -6,5 +6,6 @@ { void WriteData(string data, FileMode mode); string ReadData(); + FileStream GetStream(FileMode mode); } }