package de.lighti.components.player.statistics;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.util.Queue;
import java.util.logging.Logger;
import javax.swing.JPanel;
import de.lighti.model.game.Dota2Item;
public class BuildOrderComponent extends JPanel {
/**
*
*/
private static final long serialVersionUID = 6036192244830446704L;
private Queue<Dota2Item> items;
private final static Logger LOGGER = Logger.getLogger( BuildOrderComponent.class.getName() );
@Override
protected void paintComponent( Graphics g ) {
super.paintComponent( g );
int x = 20;
int y = 20;
if (items != null) {
for (final Dota2Item i : items) {
try {
final BufferedImage image = i.getImage();
if (image != null) {
g.drawImage( image, x, y, null );
x += image.getWidth() + 5;
}
else {
g.drawString( i.getKey(), x, y );
x += i.getKey().length() * 20;
}
}
catch (final IOException e) {
LOGGER.warning( "Error loading image: " + e.getLocalizedMessage() );
g.drawString( i.getKey(), x, y );
x += i.getKey().length() * 20;
}
if (x >= getWidth() - 100) {
y += 100;
x = 20;
}
}
}
}
public void setItems( Queue<Dota2Item> items ) {
if (items != this.items) {
this.items = items;
repaint();
}
}
}