[tiled] r573 - in branches/bjorn/src/tiled: core mapeditor mapeditor/dialogs mapeditor/util plugins/mappy

svn@biggeruniverse.com svn at biggeruniverse.com
Fri Feb 10 19:31:00 PST 2006


Author: bjorn
Date: 2006-02-10 21:30:59 -0600 (Fri, 10 Feb 2006)
New Revision: 573

Modified:
   branches/bjorn/src/tiled/core/Map.java
   branches/bjorn/src/tiled/core/Tile.java
   branches/bjorn/src/tiled/core/TileSet.java
   branches/bjorn/src/tiled/mapeditor/BrushDialog.java
   branches/bjorn/src/tiled/mapeditor/dialogs/SearchDialog.java
   branches/bjorn/src/tiled/mapeditor/dialogs/TileImageDialog.java
   branches/bjorn/src/tiled/mapeditor/util/LayerTableModel.java
   branches/bjorn/src/tiled/mapeditor/util/MapChangedEvent.java
   branches/bjorn/src/tiled/mapeditor/util/MapEventAdapter.java
   branches/bjorn/src/tiled/mapeditor/util/MultisetListRenderer.java
   branches/bjorn/src/tiled/mapeditor/util/PropertiesTableModel.java
   branches/bjorn/src/tiled/mapeditor/util/TiledFileFilter.java
   branches/bjorn/src/tiled/mapeditor/util/TilesetTableModel.java
   branches/bjorn/src/tiled/plugins/mappy/Util.java
Log:
Optimized MultisetListRenderer both in code size and overall efficiency, improving the user experience with the Search dialog. Also made some small changes throughout the code, mostly getting rid of redundant stuff.

Modified: branches/bjorn/src/tiled/core/Map.java
===================================================================
--- branches/bjorn/src/tiled/core/Map.java	2006-02-10 00:50:38 UTC (rev 572)
+++ branches/bjorn/src/tiled/core/Map.java	2006-02-11 03:30:59 UTC (rev 573)
@@ -12,11 +12,14 @@
 
 package tiled.core;
 
-import java.util.*;
-
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.Properties;
+import java.util.Vector;
 import javax.swing.event.EventListenerList;
 
-import tiled.mapeditor.util.*;
+import tiled.mapeditor.util.MapChangeListener;
+import tiled.mapeditor.util.MapChangedEvent;
 
 
 /**
@@ -44,7 +47,7 @@
     private LinkedList objects;
 
     int tileWidth, tileHeight;
-    int totalObjects = 0;
+    int totalObjects;
     int orientation = MDO_ORTHO;
     EventListenerList mapChangeListeners;
     Properties properties;
@@ -132,7 +135,7 @@
      */
     public MapLayer addLayer() {
         MapLayer layer = new TileLayer(this, widthInTiles, heightInTiles);
-        layer.setName("Layer "+super.getTotalLayers());
+        layer.setName("Layer " + super.getTotalLayers());
         super.addLayer(layer);
         fireMapChanged();
         return layer;
@@ -473,11 +476,10 @@
      * 
      * @param x
      * @param y
-     * @return <code>true</code> if the point is within the map boundaries, <code>false</code> otherwise
+     * @return <code>true</code> if the point is within the map boundaries,
+     *         <code>false</code> otherwise
      */
     public boolean inBounds(int x, int y) {
-        return (x >= 0 && y >= 0 &&
-                x < this.widthInTiles && y < this.heightInTiles);
+        return x >= 0 && y >= 0 && x < widthInTiles && y < heightInTiles;
     }
-
 }

Modified: branches/bjorn/src/tiled/core/Tile.java
===================================================================
--- branches/bjorn/src/tiled/core/Tile.java	2006-02-10 00:50:38 UTC (rev 572)
+++ branches/bjorn/src/tiled/core/Tile.java	2006-02-11 03:30:59 UTC (rev 573)
@@ -14,16 +14,18 @@
 
 import java.awt.*;
 import java.awt.image.BufferedImage;
-import java.util.*;
+import java.util.Properties;
 
 /**
  * The core class for our tiles.
+ *
+ * @version $Id$
  */
 public class Tile
 {
     private Image internalImage, scaledImage;
     private int id = -1;
-    private int groundHeight = 0;          // Height above/below ground
+    private int groundHeight;          // Height above/below ground
     private int tileImageId = -1;
     private int tileOrientation;
     private double myZoom = 1.0;
@@ -67,7 +69,7 @@
      */
     public void setImage(Image i) {
         if (tileset != null) {
-            tileset.overlayImage("" + tileImageId, i);
+            tileset.overlayImage(String.valueOf(tileImageId), i);
         } else {
             internalImage = i;
         }
@@ -78,7 +80,7 @@
     }
 
     public void setImageOrientation(int orientation) {
-        this.tileOrientation = orientation;
+        tileOrientation = orientation;
     }
 
     public void setTileSet(TileSet set) {
@@ -164,7 +166,7 @@
     public int getWidth() {
         if (tileset != null) {
             Dimension d
-              = tileset.getImageDimensions("" + tileImageId, tileOrientation);
+              = tileset.getImageDimensions(String.valueOf(tileImageId), tileOrientation);
             return d.width;
         } else if (internalImage != null){
             return internalImage.getWidth(null);
@@ -175,7 +177,7 @@
     public int getHeight() {
         if (tileset != null) {
             Dimension d
-              = tileset.getImageDimensions("" + tileImageId, tileOrientation);
+              = tileset.getImageDimensions(String.valueOf(tileImageId), tileOrientation);
             return d.height;
         } else if (internalImage != null) {
             return internalImage.getHeight(null);
@@ -223,9 +225,6 @@
     }
 
     public String toString() {
-        String out = "";
-        out += "Tile: " + id + " Image: " + tileImageId + " (" + getWidth() +
-            "x" + getHeight() + ")";
-        return out;
+        return "Tile " + id + " (" + getWidth() + "x" + getHeight() + ")";
     }
 }

Modified: branches/bjorn/src/tiled/core/TileSet.java
===================================================================
--- branches/bjorn/src/tiled/core/TileSet.java	2006-02-10 00:50:38 UTC (rev 572)
+++ branches/bjorn/src/tiled/core/TileSet.java	2006-02-11 03:30:59 UTC (rev 573)
@@ -18,10 +18,12 @@
 import java.io.ByteArrayInputStream;
 import java.io.File;
 import java.io.IOException;
-import java.util.*;
+import java.util.Enumeration;
+import java.util.Hashtable;
+import java.util.Iterator;
+import java.util.Vector;
 import java.util.zip.CRC32;
 import java.util.zip.Checksum;
-
 import javax.imageio.ImageIO;
 import javax.imageio.stream.ImageInputStream;
 
@@ -49,6 +51,8 @@
  *
  * <p>The TileSet also handles 'cutting' tile images from a tileset image, and
  * can optionally create Tile objects that reference the images.</p>
+ *
+ * @version $Id$
  */
 public class TileSet
 {
@@ -346,10 +350,9 @@
      */
     public Tile getFirstTile() {
         Tile ret = null;
-        Iterator itr = iterator();
-        while (itr.hasNext()) {
+        final Iterator itr = iterator();
+        if (itr.hasNext()) {
             ret = (Tile)itr.next();
-            break;
         }
         return ret;
     }
@@ -430,7 +433,7 @@
      * @param i a preloaded Image object
      * @return a String containing the checksum value
      */
-    private String checksumImage(Image i) {
+    private static String checksumImage(Image i) {
         PixelGrabber pg = new PixelGrabber(i, 0, 0, -1, -1, false);
         Checksum sum = new CRC32();
 
@@ -440,7 +443,7 @@
 
             try {
                 int psize = pg.getColorModel().getPixelSize();
-                ByteArrayInputStream bais = null;
+                ByteArrayInputStream bais;
 
                 // Handle different pixel sizes
                 if (psize >= 15 ) {
@@ -450,7 +453,7 @@
                     bais = new ByteArrayInputStream((byte[])pg.getPixels());
                 }
                 byte[] bytes = new byte[1024];
-                int len = 0;
+                int len;
 
                 while ((len = bais.read(bytes)) >= 0) {
                     sum.update(bytes, 0, len);
@@ -602,11 +605,11 @@
      * @return the id as an <code>int</code> of the image in the cache
      */
     public int addImage(Image image) {
-        int t;
-        if ((t = Integer.parseInt((String)queryImageId(image))) >= 0) {
+        int t = Integer.parseInt((String)queryImageId(image));
+        if (t >= 0) {
             return t;
         } else {
-            //image ids should be unique.
+            // Image ids should be unique.
             t = images.size();
             addImage(image, Integer.toString(t));
             return t;
@@ -656,8 +659,8 @@
             } catch (InterruptedException e) {
             }
             int[] new_pixels = new int[w * h];
-            int dest_w = ((orientation & 4) != 0) ? h : w;
-            int dest_h = ((orientation & 4) != 0) ? w : h;
+            int dest_w = (orientation & 4) != 0 ? h : w;
+            int dest_h = (orientation & 4) != 0 ? w : h;
             for (int dest_y = 0; dest_y < dest_h; ++dest_y) {
                 for (int dest_x = 0; dest_x < dest_w; ++dest_x) {
                     int src_x = dest_x, src_y = dest_y;
@@ -675,7 +678,6 @@
                         = old_pixels[src_x + src_y * w];
                 }
             }
-            old_pixels = null;
             BufferedImage new_img = new BufferedImage(dest_w, dest_h,
                     BufferedImage.TYPE_INT_ARGB);
             new_img.setRGB(0, 0, dest_w, dest_h, new_pixels, 0, dest_w);

Modified: branches/bjorn/src/tiled/mapeditor/BrushDialog.java
===================================================================
--- branches/bjorn/src/tiled/mapeditor/BrushDialog.java	2006-02-10 00:50:38 UTC (rev 572)
+++ branches/bjorn/src/tiled/mapeditor/BrushDialog.java	2006-02-11 03:30:59 UTC (rev 573)
@@ -13,10 +13,12 @@
 package tiled.mapeditor;
 
 import java.awt.*;
-import java.awt.event.*;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.awt.event.ItemEvent;
+import java.awt.event.ItemListener;
 import java.beans.PropertyChangeEvent;
 import java.beans.PropertyChangeListener;
-
 import javax.swing.*;
 import javax.swing.event.ChangeEvent;
 import javax.swing.event.ChangeListener;
@@ -36,7 +38,9 @@
 import tiled.mapeditor.widget.VerticalStaticJPanel;
 import tiled.util.TiledConfiguration;
 
-
+/**
+ * @version $Id$
+ */
 public class BrushDialog extends JDialog implements ActionListener,
        ItemListener, ChangeListener, PropertyChangeListener,
        ListSelectionListener
@@ -50,10 +54,9 @@
     private JButton bOk, bApply, bCancel;
     private BrushBrowser brushes;
     private MiniMapViewer mmv;
-    private JTable layerTable;
 
     public BrushDialog(MapEditor editor, JFrame parent,
-            AbstractBrush currentBrush)
+                       AbstractBrush currentBrush)
     {
         super(parent, "Brush Options", false);
         myBrush = currentBrush;
@@ -154,7 +157,7 @@
         bCreate.setEnabled(false);
         JButton bLoad = new JButton("Load...");
         bLoad.addActionListener(this);
-        layerTable = new JTable(new LayerTableModel(myBrush));
+        JTable layerTable = new JTable(new LayerTableModel(myBrush));
         layerTable.getColumnModel().getColumn(0).setPreferredWidth(32);
         layerTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
         layerTable.getSelectionModel().addListSelectionListener(this);
@@ -320,8 +323,7 @@
         JFileChooser ch = new JFileChooser(startLocation);
 
         try {
-            MapReader readers[] =
-                (MapReader[])PluginClassLoader.getInstance().getReaders();
+            MapReader[] readers = PluginClassLoader.getInstance().getReaders();
             for(int i = 0; i < readers.length; i++) {
                 ch.addChoosableFileFilter(new TiledFileFilter(
                             readers[i].getFilter(), readers[i].getName()));

Modified: branches/bjorn/src/tiled/mapeditor/dialogs/SearchDialog.java
===================================================================
--- branches/bjorn/src/tiled/mapeditor/dialogs/SearchDialog.java	2006-02-10 00:50:38 UTC (rev 572)
+++ branches/bjorn/src/tiled/mapeditor/dialogs/SearchDialog.java	2006-02-11 03:30:59 UTC (rev 573)
@@ -13,15 +13,16 @@
 package tiled.mapeditor.dialogs;
 
 import java.awt.*;
-import java.awt.event.*;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+import java.util.Iterator;
 import java.util.Vector;
-import java.util.Iterator;
 import javax.swing.*;
 
+import tiled.core.*;
 import tiled.mapeditor.selection.SelectionLayer;
 import tiled.mapeditor.util.MultisetListRenderer;
-import tiled.mapeditor.widget.*;
-import tiled.core.*;
+import tiled.mapeditor.widget.VerticalStaticJPanel;
 
 /**
  * @version $Id$
@@ -33,8 +34,9 @@
     private JButton bFind, bFindAll;
     private JButton bReplace, bReplaceAll;
     private JButton bClose;
-    private Point currentMatch = null;
+    private Point currentMatch;
     private SelectionLayer sl;
+    private static final double LIST_TILE_SCALE = 0.5;
 
     public SearchDialog(JFrame parent) {
         this(parent, null);
@@ -48,6 +50,9 @@
     }
 
     private void init() {
+        final MultisetListRenderer tileListRenderer;
+        tileListRenderer = new MultisetListRenderer(LIST_TILE_SCALE);
+
         /* SEARCH PANEL */
         JPanel searchPanel = new JPanel();
         searchPanel.setBorder(BorderFactory.createEtchedBorder());
@@ -58,7 +63,7 @@
         searchPanel.add(new JLabel("Find:"), c);
         c.gridx = 1;
         searchCBox = new JComboBox();
-        searchCBox.setRenderer(new MultisetListRenderer(myMap, .5));
+        searchCBox.setRenderer(tileListRenderer);
         //searchCBox.setSelectedIndex(1);
         searchCBox.setEditable(false);
         searchPanel.add(searchCBox, c);
@@ -67,7 +72,7 @@
         searchPanel.add(new JLabel("Replace:"), c);
         c.gridx = 1;
         replaceCBox = new JComboBox();
-        replaceCBox.setRenderer(new MultisetListRenderer(myMap, .5));
+        replaceCBox.setRenderer(tileListRenderer);
         //searchCBox.setSelectedIndex(1);
         replaceCBox.setEditable(false);
         searchPanel.add(replaceCBox,c);
@@ -145,7 +150,7 @@
 
         if (command.equalsIgnoreCase("close")) {
             myMap.removeLayerSpecial(sl);
-            this.dispose();
+            dispose();
         } else if (command.equalsIgnoreCase("find")) {
             if (searchCBox.getSelectedItem() instanceof Tile) {
                 find((Tile)searchCBox.getSelectedItem());
@@ -177,7 +182,7 @@
             if (!(searchCBox.getSelectedItem() instanceof TileSet) && !(replaceCBox.getSelectedItem() instanceof TileSet))
                 replaceAll((Tile) searchCBox.getSelectedItem(),(Tile) replaceCBox.getSelectedItem());
         } else if (command.equalsIgnoreCase("replace")) {
-            if ((searchCBox.getSelectedItem() instanceof Tile) && (replaceCBox.getSelectedItem() instanceof Tile)) {
+            if (searchCBox.getSelectedItem() instanceof Tile && replaceCBox.getSelectedItem() instanceof Tile) {
                 if (currentMatch == null) {
                     find((Tile)searchCBox.getSelectedItem());
                 }

Modified: branches/bjorn/src/tiled/mapeditor/dialogs/TileImageDialog.java
===================================================================
--- branches/bjorn/src/tiled/mapeditor/dialogs/TileImageDialog.java	2006-02-10 00:50:38 UTC (rev 572)
+++ branches/bjorn/src/tiled/mapeditor/dialogs/TileImageDialog.java	2006-02-11 03:30:59 UTC (rev 573)
@@ -14,19 +14,17 @@
 package tiled.mapeditor.dialogs;
 
 import java.awt.*;
-import java.awt.event.*;
-//import java.awt.image.BufferedImage;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
 import java.util.Enumeration;
 import java.util.Vector;
-
-//import javax.imageio.ImageIO;
 import javax.swing.*;
 import javax.swing.event.ListSelectionEvent;
 import javax.swing.event.ListSelectionListener;
 
-import tiled.core.*;
-import tiled.mapeditor.util.*;
-import tiled.mapeditor.widget.*;
+import tiled.core.TileSet;
+import tiled.mapeditor.util.ImageCellRenderer;
+import tiled.mapeditor.widget.VerticalStaticJPanel;
 
 /**
  * @version $Id$
@@ -146,10 +144,10 @@
         Object source = event.getSource();
 
         if (source == bOk) {
-            this.dispose();
+            dispose();
         } else if (source == bCancel) {
             imageId = -1;
-            this.dispose();
+            dispose();
         } else if (source == horizFlipCheck) {
             imageOrientation ^= 1;
             updateImageLabel();

Modified: branches/bjorn/src/tiled/mapeditor/util/LayerTableModel.java
===================================================================
--- branches/bjorn/src/tiled/mapeditor/util/LayerTableModel.java	2006-02-10 00:50:38 UTC (rev 572)
+++ branches/bjorn/src/tiled/mapeditor/util/LayerTableModel.java	2006-02-11 03:30:59 UTC (rev 573)
@@ -17,10 +17,15 @@
 import tiled.core.MapLayer;
 import tiled.core.MultilayerPlane;
 
+/**
+ * @version $Id$
+ */
 public class LayerTableModel extends AbstractTableModel
 {
     private MultilayerPlane map;
-    private String[] columnNames = { "Locked", "Show", "Layer name" };
+    private static final String[] columnNames = {
+            "Locked", "Show", "Layer name"
+    };
 
     public LayerTableModel(MultilayerPlane map) {
         this.map = map;
@@ -89,7 +94,7 @@
     public boolean isCellEditable(int row, int col) {
     	MapLayer layer = map.getLayer(getRowCount() - row - 1);
 
-        return (!(col == 0 && layer != null && !layer.isVisible()));
+        return !(col == 0 && layer != null && !layer.isVisible());
     }
 
     public void setValueAt(Object value, int row, int col) {

Modified: branches/bjorn/src/tiled/mapeditor/util/MapChangedEvent.java
===================================================================
--- branches/bjorn/src/tiled/mapeditor/util/MapChangedEvent.java	2006-02-10 00:50:38 UTC (rev 572)
+++ branches/bjorn/src/tiled/mapeditor/util/MapChangedEvent.java	2006-02-11 03:30:59 UTC (rev 573)
@@ -16,10 +16,12 @@
 
 import tiled.core.Map;
 
-
+/**
+ * @version $Id$
+ */
 public class MapChangedEvent //extends EventObject
 {
-    private Map map;
+    private final Map map;
 
     public MapChangedEvent(Map map) {
         this.map = map;

Modified: branches/bjorn/src/tiled/mapeditor/util/MapEventAdapter.java
===================================================================
--- branches/bjorn/src/tiled/mapeditor/util/MapEventAdapter.java	2006-02-10 00:50:38 UTC (rev 572)
+++ branches/bjorn/src/tiled/mapeditor/util/MapEventAdapter.java	2006-02-11 03:30:59 UTC (rev 573)
@@ -12,16 +12,19 @@
  
 package tiled.mapeditor.util;
 
-import java.awt.Component;
-import java.util.*;
+import java.awt.*;
+import java.util.LinkedList;
+import java.util.ListIterator;
 
-
+/**
+ * @version $Id$
+ */
 public class MapEventAdapter
 {
     public static final int ME_MAPACTIVE   = 1;
     public static final int ME_MAPINACTIVE = 2;
 
-    private LinkedList listeners = null;
+    private LinkedList listeners;
 
     public MapEventAdapter() {
         listeners = new LinkedList();

Modified: branches/bjorn/src/tiled/mapeditor/util/MultisetListRenderer.java
===================================================================
--- branches/bjorn/src/tiled/mapeditor/util/MultisetListRenderer.java	2006-02-10 00:50:38 UTC (rev 572)
+++ branches/bjorn/src/tiled/mapeditor/util/MultisetListRenderer.java	2006-02-11 03:30:59 UTC (rev 573)
@@ -14,111 +14,72 @@
 
 import java.awt.*;
 import java.io.IOException;
-import java.util.*;
+import java.util.HashMap;
 import javax.swing.*;
 
-import tiled.core.*;
+import tiled.core.Tile;
+import tiled.core.TileSet;
 import tiled.mapeditor.MapEditor;
-import tiled.core.Map;
 
-public class MultisetListRenderer extends DefaultListCellRenderer
-{
-    private Map myMap;
-    private ImageIcon[] tileImages;
-    private Image setImage = null;
-    private int highestTileId = 0;
-    private double zoom = 1;
+/**
+ * This list renderer is used for rendering a list of tiles associated with a
+ * certain map. The list renderer produces {@link ImageIcon} instances on
+ * demand and caches them in a {@link HashMap}.
+ *
+ * todo: check whether assuming all tiles have an image is safe
+ *
+ * @version $Id$
+ */
+public class MultisetListRenderer extends DefaultListCellRenderer {
+    private Icon setIcon;
+    private final double zoom;
+    private final HashMap<Integer, Icon> tileImages;
 
-    public MultisetListRenderer() {
-        setOpaque(true);
+    /**
+     * Creates the list renderer for rendering a list of tiles.
+     *
+     * @param zoom the zoom level at which the tiles will be shown
+     */
+    public MultisetListRenderer(double zoom) {
+        tileImages = new HashMap<Integer, Icon>();
+        this.zoom = zoom;
+
         try {
-            setImage = MapEditor.loadImageResource("resources/source.png");
+            // Load the icon to show for tilesets
+            Image img = MapEditor.loadImageResource("resources/source.png");
+            setIcon = new ImageIcon(img);
         } catch (IOException e) {
             e.printStackTrace();
         }
     }
 
-    public MultisetListRenderer(Map m){
-        this();
-        myMap = m;
-        buildList();
-    }
-
-    public MultisetListRenderer(Map m, double zoom) {
-        this();
-        myMap = m;
-        this.zoom = zoom;
-        buildList();
-    }
-
     public Component getListCellRendererComponent(JList list, Object value,
-            int index, boolean isSelected, boolean cellHasFocus) {
+                                                  int index, boolean isSelected,
+                                                  boolean cellHasFocus) {
+        // Let the default list cell renderer do most of the work
         super.getListCellRendererComponent(
                 list, value, index, isSelected, cellHasFocus);
 
-        if (value != null && index >= 0) {
-            Tile tile = null;
-
-            if (value instanceof Tile) {
-                tile = (Tile)value;
-                if (tile != null) {
-                    setIcon(tileImages[index]);
-                    setText("Tile " + tile.getId());
+        // Attempt to set an appropriate icon
+        if (value instanceof Tile && index >= 0) {
+            Tile tile = (Tile) value;
+            if (!isSelected || zoom == 1) {
+                // Use cached ImageIcon instance
+                if (tileImages.containsKey(index)) {
+                    setIcon(tileImages.get(index));
                 } else {
-                    setIcon(null);
-                    setText("No tile");
+                    Icon icon = new ImageIcon(tile.getScaledImage(zoom));
+                    setIcon(icon);
+                    tileImages.put(index, icon);
                 }
-            } else if (value instanceof TileSet) {
-                TileSet ts = (TileSet)value;
-                if(ts != null) {
-                    setIcon(new ImageIcon(setImage));
-                    setText("Tileset " + ts.getName());
-                } else {
-                    setIcon(null);
-                    setText("");
-                }
+            } else {
+                // Selected entry always uses unscaled image
+                setIcon(new ImageIcon(tile.getImage()));
             }
-
-            // Scale image of selected tile up
-            if (isSelected && tile != null) {
-                setIcon(new ImageIcon(tile.getScaledImage(1.0)));
-            }
+        } else if (value instanceof TileSet) {
+            setIcon(setIcon);
         }
+
         return this;
     }
-
-
-    private void buildList() {
-        Tile t;
-        Vector sets = myMap.getTilesets();
-        int curSlot = 0;
-        Iterator itr = sets.iterator();
-        int totalSlots = sets.size();
-
-        itr = sets.iterator();
-        while (itr.hasNext()) {
-            TileSet ts = (TileSet) itr.next();
-            totalSlots += ts.size();
-        }
-        tileImages = new ImageIcon[totalSlots];
-
-        itr = sets.iterator();
-        while (itr.hasNext()) {
-            TileSet ts = (TileSet) itr.next();
-            tileImages[curSlot++] = new ImageIcon(setImage);
-
-            Iterator tileIterator = ts.iterator();
-
-            while (tileIterator.hasNext()) {
-                Tile tile = (Tile)tileIterator.next();
-                Image img = tile.getScaledImage(zoom);
-                if (img != null) {
-                    tileImages[curSlot] = new ImageIcon(img);
-                } else {
-                    tileImages[curSlot] = null;
-                }
-                curSlot++;
-            }
-        }
-    }
 }

Modified: branches/bjorn/src/tiled/mapeditor/util/PropertiesTableModel.java
===================================================================
--- branches/bjorn/src/tiled/mapeditor/util/PropertiesTableModel.java	2006-02-10 00:50:38 UTC (rev 572)
+++ branches/bjorn/src/tiled/mapeditor/util/PropertiesTableModel.java	2006-02-11 03:30:59 UTC (rev 573)
@@ -13,15 +13,16 @@
 package tiled.mapeditor.util;
 
 import java.util.Properties;
-
 import javax.swing.table.AbstractTableModel;
 
-
+/**
+ * @version $Id$
+ */
 public class PropertiesTableModel extends AbstractTableModel
 {
     private Properties properties;
 
-    private String[] columnNames = { "Name", "Value" };
+    private static final String[] columnNames = { "Name", "Value" };
 
     public PropertiesTableModel() {
         properties = new Properties();
@@ -44,7 +45,7 @@
      * only be edited when they have a name.
      */
     public boolean isCellEditable(int row, int col) {
-        return col == 0 || (col == 1 && getValueAt(row, 0) != null);
+        return col == 0 || col == 1 && getValueAt(row, 0) != null;
     }
 
     public Object getValueAt(int rowIndex, int columnIndex) {

Modified: branches/bjorn/src/tiled/mapeditor/util/TiledFileFilter.java
===================================================================
--- branches/bjorn/src/tiled/mapeditor/util/TiledFileFilter.java	2006-02-10 00:50:38 UTC (rev 572)
+++ branches/bjorn/src/tiled/mapeditor/util/TiledFileFilter.java	2006-02-11 03:30:59 UTC (rev 573)
@@ -15,10 +15,11 @@
 import java.io.File;
 import java.util.Iterator;
 import java.util.LinkedList;
-
 import javax.swing.filechooser.FileFilter;
 
-
+/**
+ * @version $Id$
+ */
 public class TiledFileFilter extends FileFilter
 {
     public static final int FILTER_TMX  = 1;
@@ -45,7 +46,7 @@
             exts.add("tmx.gz");
         }
         if ((filter & FILTER_TSX) != 0) {
-            desc = desc + "Tiled Tileset files";
+            desc += "Tiled Tileset files";
             exts.add("tsx");
         }
     }
@@ -92,10 +93,11 @@
     	Iterator itr = exts.iterator();
         while (itr.hasNext()) {
         	String ext = (String)itr.next();
-        	filter = filter+"*."+ext;
-        	if(itr.hasNext())
-        		filter=filter+",";
+        	filter = filter + "*." + ext;
+        	if (itr.hasNext()) {
+                filter += ",";
+            }
         }
-        return desc+" "+filter+")";
+        return desc + " " + filter + ")";
     }
 }

Modified: branches/bjorn/src/tiled/mapeditor/util/TilesetTableModel.java
===================================================================
--- branches/bjorn/src/tiled/mapeditor/util/TilesetTableModel.java	2006-02-10 00:50:38 UTC (rev 572)
+++ branches/bjorn/src/tiled/mapeditor/util/TilesetTableModel.java	2006-02-11 03:30:59 UTC (rev 573)
@@ -18,7 +18,9 @@
 
 import tiled.core.*;
 
-
+/**
+ * @version $Id$
+ */
 public class TilesetTableModel extends AbstractTableModel
 {
     private Map map;
@@ -57,7 +59,7 @@
             if (col == 0) {
                 return tileset.getName();
             } else {
-                return "" + checkSetUsage(tileset);
+                return String.valueOf(checkSetUsage(tileset));
             }
         } else {
             return null;
@@ -65,10 +67,7 @@
     }
 
     public boolean isCellEditable(int row, int col) {
-        if (col == 0) {
-            return true;
-        }
-        return false;
+        return col == 0;
     }
 
     public void setValueAt(Object value, int row, int col) {
@@ -94,7 +93,7 @@
                 MapLayer ml = (MapLayer)itr.next();
 
                 if (ml instanceof TileLayer) {
-                    if (((TileLayer)ml).isUsed(tile)) {
+                    if (ml.isUsed(tile)) {
                         used++;
                         break;
                     }

Modified: branches/bjorn/src/tiled/plugins/mappy/Util.java
===================================================================
--- branches/bjorn/src/tiled/plugins/mappy/Util.java	2006-02-10 00:50:38 UTC (rev 572)
+++ branches/bjorn/src/tiled/plugins/mappy/Util.java	2006-02-11 03:30:59 UTC (rev 573)
@@ -12,63 +12,64 @@
 
 package tiled.plugins.mappy;
 
-import java.awt.Image;
-import java.awt.Toolkit;
+import java.awt.*;
 import java.awt.image.DirectColorModel;
 import java.awt.image.MemoryImageSource;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
 
+/**
+ * @version $Id$
+ */
 public class Util {
-	
-	public static long readLongReverse(InputStream in) throws IOException {
-		int a = in.read();
-		int b = in.read();
-		int c = in.read();
-		int d = in.read();
-	
-		return (long)((a<<24)|(b<<16)|(c<<8)|d);
+    public static long readLongReverse(InputStream in) throws IOException {
+        int a = in.read();
+        int b = in.read();
+        int c = in.read();
+        int d = in.read();
+
+        return (long) (a << 24 | b << 16 | c << 8 | d);
     }
 
-	public static void writeLongReverse(long val, OutputStream out) throws IOException {
-    	out.write((int)((val>>24)&0x000000FF));
-    	out.write((int)((val>>16)&0x000000FF));
-    	out.write((int)((val>>8)&0x000000FF));
-    	out.write((int)((val)&0x000000FF));
+    public static void writeLongReverse(long val, OutputStream out) throws IOException {
+        out.write((int) (val >> 24 & 0x000000FF));
+        out.write((int) (val >> 16 & 0x000000FF));
+        out.write((int) (val >> 8 & 0x000000FF));
+        out.write((int) (val & 0x000000FF));
     }
-	
-	public static int readShortReverse(InputStream in) throws IOException {
-		int a = in.read();
-		int b = in.read();
-		return (int)((a<<8)|b);
+
+    public static int readShortReverse(InputStream in) throws IOException {
+        int a = in.read();
+        int b = in.read();
+        return a << 8 | b;
     }
 
     public static int readShort(InputStream in) throws IOException {
-    	int a = in.read();
+        int a = in.read();
         int b = in.read();
-        return (int)(a|(b<<8));
+        return a | b << 8;
     }
-	
+
     public static void writeShort(int val, OutputStream out) throws IOException {
-    	//TODO: this
+        //TODO: this
     }
-    
-	public static Image readRawImage(InputStream in, int twidth, int theight) throws IOException {
-	 	DirectColorModel cm = new DirectColorModel(16,0xF800,0x07E0,0x001F);
-	
-		int [] pixels = new int[twidth*theight+1];
-		int i,j;
-	
-		for(i=0;i<theight;i++)
-			for(j=0;j<twidth;j++) {
-				pixels[i*twidth+j]=readShortReverse(in);
-				//System.out.println(pixels[i*width+j]);
-			}
-	
-		MemoryImageSource s = new MemoryImageSource(twidth,theight,cm,pixels,0,twidth);		
-			
-		return Toolkit.getDefaultToolkit().createImage(s);
-		//return(Toolkit.getDefaultToolkit().createImage(new FilteredImageSource(orig.getSource(),new TransImageFilter(cm.getRGB(64305)))));
+
+    public static Image readRawImage(InputStream in, int twidth, int theight) throws IOException {
+        DirectColorModel cm = new DirectColorModel(16, 0xF800, 0x07E0, 0x001F);
+
+        int [] pixels = new int[twidth * theight + 1];
+        int i, j;
+
+        for (i = 0; i < theight; i++)
+            for (j = 0; j < twidth; j++) {
+                pixels[i * twidth + j] = readShortReverse(in);
+                //System.out.println(pixels[i*width+j]);
+            }
+
+        MemoryImageSource s = new MemoryImageSource(twidth, theight, cm, pixels, 0, twidth);
+
+        return Toolkit.getDefaultToolkit().createImage(s);
+        //return(Toolkit.getDefaultToolkit().createImage(new FilteredImageSource(orig.getSource(),new TransImageFilter(cm.getRGB(64305)))));
     }
 }




More information about the tiled-commit mailing list