project_files/Android-build/SDL-android-project/src/org/hedgewars/hedgeroid/MapPreviewGenerator.java
changeset 7588 27e5857da6af
parent 7584 7831c84cc644
child 10017 de822cd3df3a
equal deleted inserted replaced
7586:33924ff4af50 7588:27e5857da6af
    25 import org.hedgewars.hedgeroid.Datastructures.MapFile;
    25 import org.hedgewars.hedgeroid.Datastructures.MapFile;
    26 import org.hedgewars.hedgeroid.Datastructures.MapRecipe;
    26 import org.hedgewars.hedgeroid.Datastructures.MapRecipe;
    27 import org.hedgewars.hedgeroid.EngineProtocol.PascalExports;
    27 import org.hedgewars.hedgeroid.EngineProtocol.PascalExports;
    28 import org.hedgewars.hedgeroid.frontlib.Flib;
    28 import org.hedgewars.hedgeroid.frontlib.Flib;
    29 import org.hedgewars.hedgeroid.frontlib.Frontlib;
    29 import org.hedgewars.hedgeroid.frontlib.Frontlib;
       
    30 import org.hedgewars.hedgeroid.frontlib.Frontlib.ByteArrayPtr;
    30 import org.hedgewars.hedgeroid.frontlib.Frontlib.MapRecipePtr;
    31 import org.hedgewars.hedgeroid.frontlib.Frontlib.MapRecipePtr;
    31 import org.hedgewars.hedgeroid.frontlib.Frontlib.MapconnPtr;
    32 import org.hedgewars.hedgeroid.frontlib.Frontlib.MapconnPtr;
    32 import org.hedgewars.hedgeroid.frontlib.Frontlib.MapimageCallback;
    33 import org.hedgewars.hedgeroid.frontlib.Frontlib.MapimageCallback;
    33 import org.hedgewars.hedgeroid.frontlib.Frontlib.StrCallback;
    34 import org.hedgewars.hedgeroid.frontlib.Frontlib.StrCallback;
    34 import org.hedgewars.hedgeroid.util.FileUtils;
    35 import org.hedgewars.hedgeroid.util.FileUtils;
   159 	/**
   160 	/**
   160 	 * Let's be extra nice here and clip off the left and right sides, so the preview is centered...
   161 	 * Let's be extra nice here and clip off the left and right sides, so the preview is centered...
   161 	 * Since the image is present in bytes, we can save some effort by checking entire byte-columns first.
   162 	 * Since the image is present in bytes, we can save some effort by checking entire byte-columns first.
   162 	 */
   163 	 */
   163 	private final MapimageCallback successCb = new MapimageCallback() {
   164 	private final MapimageCallback successCb = new MapimageCallback() {
   164 		public void callback(Pointer context, Pointer buffer, int hedgehogCount) {
   165 		public void callback(Pointer context, ByteArrayPtr buffer, int hedgehogCount) {
   165 			byte[] mapdata = buffer.getByteArray(0, Frontlib.MAPIMAGE_BYTES);
   166 			byte[] mapdata = buffer.deref(Frontlib.MAPIMAGE_BYTES);
   166 			
   167 			
   167 			int leftmostPixel = Frontlib.MAPIMAGE_WIDTH;
   168 			int leftmostPixel = Frontlib.MAPIMAGE_WIDTH;
   168 			int rightmostPixel = -1;
   169 			int rightmostPixel = -1;
   169 			int bytesPerLine = Frontlib.MAPIMAGE_WIDTH/8;
   170 			int bytesPerLine = Frontlib.MAPIMAGE_WIDTH/8;
   170 			
   171