From: Matthias T. <mt...@us...> - 2007-07-19 21:49:26
|
Update of /cvsroot/arianne/stendhal/tiled/src/tiled/mapeditor/widget In directory sc8-pr-cvs11.sourceforge.net:/tmp/cvs-serv16975/src/tiled/mapeditor/widget Modified Files: MapEditPanel.java TilePalettePanel.java Log Message: - fixed scrolling - selection looks nicer - *.tmx is the default file type Index: TilePalettePanel.java =================================================================== RCS file: /cvsroot/arianne/stendhal/tiled/src/tiled/mapeditor/widget/TilePalettePanel.java,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** TilePalettePanel.java 6 Apr 2006 15:45:48 -0000 1.7 --- TilePalettePanel.java 19 Jul 2007 21:49:25 -0000 1.8 *************** *** 205,210 **** tileAt++; } // draw selected tiles ! g.setColor(Color.YELLOW); for (StatefulTile tile : selectedTiles) --- 205,213 ---- tileAt++; } + // draw selected tiles ! Graphics2D g2d = (Graphics2D) g.create(); ! g2d.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP, 0.5f)); ! g2d.setColor(Color.YELLOW); for (StatefulTile tile : selectedTiles) *************** *** 213,218 **** int x = id % tilesPerRow; int y = id / tilesPerRow; ! g.drawRect(x * twidth - 1, y * theight , tile.tile.getWidth() + 1,tile.tile.getHeight() + 1); ! g.drawRect(x * twidth , y * theight + 1, tile.tile.getWidth() - 1,tile.tile.getHeight() - 1); } --- 216,220 ---- int x = id % tilesPerRow; int y = id / tilesPerRow; ! g2d.fillRect(x * twidth - 1, y * theight , tile.tile.getWidth() + 1,tile.tile.getHeight() + 1); } Index: MapEditPanel.java =================================================================== RCS file: /cvsroot/arianne/stendhal/tiled/src/tiled/mapeditor/widget/MapEditPanel.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** MapEditPanel.java 6 Apr 2006 15:45:48 -0000 1.6 --- MapEditPanel.java 19 Jul 2007 21:49:25 -0000 1.7 *************** *** 27,30 **** --- 27,31 ---- import javax.swing.JPanel; import javax.swing.JScrollPane; + import javax.swing.Scrollable; import tiled.core.Map; *************** *** 43,47 **** * @author Matthias Totz <mt...@us...> */ ! public class MapEditPanel extends JPanel implements MouseListener, MouseMotionListener { private static final long serialVersionUID = 1L; --- 44,48 ---- * @author Matthias Totz <mt...@us...> */ ! public class MapEditPanel extends JPanel implements MouseListener, MouseMotionListener, Scrollable { private static final long serialVersionUID = 1L; *************** *** 134,138 **** { g.setColor(Color.BLUE); ! Rectangle rect = Util.getRectangle(p,dragStartPoint); g.drawRect(rect.x, rect.y,rect.width,rect.height); } --- 135,139 ---- { g.setColor(Color.BLUE); ! Rectangle rect = Util.getRectangle(p,dragStartPoint); g.drawRect(rect.x, rect.y,rect.width,rect.height); } *************** *** 141,148 **** g.setColor(Color.YELLOW); ! for (Point tile: points) ! { ! mapView.drawTileHighlight(g,tile); ! } } } --- 142,146 ---- g.setColor(Color.YELLOW); ! mapView.drawTilesHighlight(g,points); } } *************** *** 160,165 **** } } ! ! /** returns the prefered size of the panel */ public Dimension getPreferredSize() --- 158,162 ---- } } ! /** returns the prefered size of the panel */ public Dimension getPreferredSize() *************** *** 370,374 **** --- 367,405 ---- SELECT; } + + public Dimension getPreferredScrollableViewportSize() + { + return getMaximumSize(); + } + + public int getScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction) + { + return orientation < 0 ? visibleRect.height : visibleRect.width; + } + + public int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction) + { + Point scale = mapView.tileToScreenCoords(new Point(1, 1)); + return orientation < 0 ? scale.y : scale.x; + } + public boolean getScrollableTracksViewportHeight() + { + return false; + } + + public boolean getScrollableTracksViewportWidth() + { + return false; + } + + /** + * notifies the panel that the mapview size was changed + */ + public void notifyZoom() + { + setSize(getPreferredSize()); + repaint(); + } } |