[tiled] r686 - in trunk: . src/tiled/core src/tiled/io/xml src/tiled/mapeditor src/tiled/mapeditor/actions src/tiled/util
svn@biggeruniverse.com
svn at biggeruniverse.com
Thu Jun 29 16:17:50 PDT 2006
Author: bjorn
Date: 2006-06-29 18:17:49 -0500 (Thu, 29 Jun 2006)
New Revision: 686
Modified:
trunk/CHANGES
trunk/src/tiled/core/TileSet.java
trunk/src/tiled/io/xml/XMLMapTransformer.java
trunk/src/tiled/mapeditor/MapEditor.java
trunk/src/tiled/mapeditor/actions/SaveAsAction.java
trunk/src/tiled/util/NumberedSet.java
Log:
Fixed creation of one-tile gaps between tilesets on saving (patch by Christian Henz)
Modified: trunk/CHANGES
===================================================================
--- trunk/CHANGES 2006-06-26 00:07:11 UTC (rev 685)
+++ trunk/CHANGES 2006-06-29 23:17:49 UTC (rev 686)
@@ -3,7 +3,8 @@
* Added support for tile instance properties (by Christian Henz)
* Added ability to create stamp brushes from the tile palette
* Embedded the tile palette
-* Fixed selection of map format by extention also when plugins are loaded
+* Fixed creation of one-tile gaps between tilesets on saving (Christian Henz)
+* Fixed failing to default to map format by extention when plugins are loaded
* Fixed active marquee not being reset on loading a map
* Fixed layer duplicates to not share layer properties with the original
* Fixed width of tile button changing between selecting a tile and no tile
Modified: trunk/src/tiled/core/TileSet.java
===================================================================
--- trunk/src/tiled/core/TileSet.java 2006-06-26 00:07:11 UTC (rev 685)
+++ trunk/src/tiled/core/TileSet.java 2006-06-29 23:17:49 UTC (rev 686)
@@ -213,7 +213,7 @@
*/
public int addTile(Tile t) {
if (t.getId() < 0) {
- t.setId(tiles.getMaxId());
+ t.setId(tiles.getMaxId() + 1);
}
if (tileDimensions.width < t.getWidth()) {
@@ -295,7 +295,7 @@
public Vector generateGaplessVector() {
Vector gapless = new Vector();
- for (int i = 0; i < getMaxTileId(); i++) {
+ for (int i = 0; i <= getMaxTileId(); i++) {
if (getTile(i) != null) gapless.add(getTile(i));
}
Modified: trunk/src/tiled/io/xml/XMLMapTransformer.java
===================================================================
--- trunk/src/tiled/io/xml/XMLMapTransformer.java 2006-06-26 00:07:11 UTC (rev 685)
+++ trunk/src/tiled/io/xml/XMLMapTransformer.java 2006-06-29 23:17:49 UTC (rev 686)
@@ -15,24 +15,29 @@
import java.awt.Color;
import java.awt.Image;
import java.io.*;
-import java.lang.reflect.*;
+import java.lang.reflect.Constructor;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Properties;
import java.util.zip.GZIPInputStream;
-
import javax.imageio.ImageIO;
-import javax.xml.parsers.*;
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
-import org.w3c.dom.*;
+import org.w3c.dom.Document;
+import org.w3c.dom.NamedNodeMap;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
-
import tiled.core.*;
import tiled.io.ImageHelper;
import tiled.io.MapReader;
import tiled.io.PluginLogger;
import tiled.mapeditor.util.cutter.BasicTileCutter;
-import tiled.util.*;
+import tiled.util.Base64;
+import tiled.util.Util;
/**
* @version $Id$
@@ -373,7 +378,7 @@
}
else if (child.getNodeName().equalsIgnoreCase("tile")) {
Tile tile = unmarshalTile(set, child, tilesetBaseDir);
- if (!hasTilesetImage || tile.getId() >= set.getMaxTileId()) {
+ if (!hasTilesetImage || tile.getId() > set.getMaxTileId()) {
set.addTile(tile);
} else {
Tile myTile = set.getTile(tile.getId());
Modified: trunk/src/tiled/mapeditor/MapEditor.java
===================================================================
--- trunk/src/tiled/mapeditor/MapEditor.java 2006-06-26 00:07:11 UTC (rev 685)
+++ trunk/src/tiled/mapeditor/MapEditor.java 2006-06-29 23:17:49 UTC (rev 686)
@@ -1949,7 +1949,7 @@
while (it.hasNext() && firstTile == null) {
TileSet set = (TileSet) it.next();
int i = 0;
- while (firstTile == null && i < set.getMaxTileId()) {
+ while (firstTile == null && i <= set.getMaxTileId()) {
firstTile = set.getTile(i);
i++;
}
Modified: trunk/src/tiled/mapeditor/actions/SaveAsAction.java
===================================================================
--- trunk/src/tiled/mapeditor/actions/SaveAsAction.java 2006-06-26 00:07:11 UTC (rev 685)
+++ trunk/src/tiled/mapeditor/actions/SaveAsAction.java 2006-06-29 23:17:49 UTC (rev 686)
@@ -15,15 +15,15 @@
import java.awt.event.ActionEvent;
import java.io.File;
import javax.swing.AbstractAction;
-import javax.swing.KeyStroke;
import javax.swing.JFileChooser;
import javax.swing.JOptionPane;
+import javax.swing.KeyStroke;
+import tiled.io.MapHelper;
+import tiled.io.MapWriter;
import tiled.mapeditor.MapEditor;
import tiled.mapeditor.Resources;
import tiled.mapeditor.util.TiledFileFilter;
-import tiled.io.MapWriter;
-import tiled.io.MapHelper;
import tiled.util.TiledConfiguration;
/**
@@ -184,7 +184,7 @@
// Add a dot if it wasn't at the end already
if (lastDot != filename.length() - 1) {
- newFilePath = newFilePath + ".";
+ newFilePath += ".";
}
file = new File(newFilePath + saver.getFirstExtention());
Modified: trunk/src/tiled/util/NumberedSet.java
===================================================================
--- trunk/src/tiled/util/NumberedSet.java 2006-06-26 00:07:11 UTC (rev 685)
+++ trunk/src/tiled/util/NumberedSet.java 2006-06-29 23:17:49 UTC (rev 686)
@@ -92,18 +92,22 @@
}
/**
- * Returns the last id in the NumberedSet that is associated with an element,
- * or -1 if the NumberedSet is empty.
+ * Returns the last id in the NumberedSet that is associated with an
+ * element, or -1 if the NumberedSet is empty.
*
* @return int
*/
public int getMaxId() {
- int id = -1;
- for (int i = 0; i < data.size(); i++) {
- if (data.get(i) != null) id = i;
- }
+ int maxId = data.size() - 1;
- return id + 1;
+ while (maxId >= 0) {
+ if (data.get(maxId) != null) {
+ break;
+ }
+ maxId--;
+ }
+
+ return maxId;
}
/**
@@ -122,7 +126,7 @@
* @return int
*/
public int add(Object o) {
- int id = getMaxId();
+ int id = getMaxId() + 1;
put(id, o);
return id;
}
@@ -164,4 +168,4 @@
public int size() {
return data.size();
}
-}
\ No newline at end of file
+}
More information about the tiled-commit
mailing list