package org.lucci.madhoc.gui.aircraft;
import java.awt.Image;

import javax.swing.ImageIcon;

import org.lucci.madhoc.network.Station;
import org.lucci.madhoc.network.ComputerType;
import org.lucci.madhoc.network.net.Location;
import org.lucci.up.data.DataElement;
import org.lucci.up.data.rendering.point.ImagePointRenderer;
import org.lucci.up.system.Space;

/*
 * Created on Apr 29, 2005
 */

/**
 * @author luc.hogie
 */
public class ImageStationRenderer extends ImagePointRenderer
{
    private Image laptopImg;
    private Image pagerImg;
    private Image mobilePhoneImg;
    private Image hotspotImg;
    private Image unknowComputerImg;
    
    public ImageStationRenderer()
    {
        laptopImg = new ImageIcon(getClass().getResource("laptop.jpg")).getImage().getScaledInstance(20, 20, Image.SCALE_SMOOTH);
        pagerImg = new ImageIcon(getClass().getResource("pda.jpg")).getImage().getScaledInstance(20, 20, Image.SCALE_SMOOTH);
        mobilePhoneImg = new ImageIcon(getClass().getResource("mobile_phone.jpg")).getImage().getScaledInstance(20, 20, Image.SCALE_SMOOTH);
        hotspotImg = new ImageIcon(getClass().getResource("hotspot.jpg")).getImage().getScaledInstance(20, 20, Image.SCALE_SMOOTH);
        unknowComputerImg = new ImageIcon(getClass().getResource("unknown_device.jpg")).getImage().getScaledInstance(20, 20, Image.SCALE_SMOOTH);
    }

    public void drawImpl(DataElement object, Space space)
    {
        Location point = (Location) object;
        Station station = point.getComputer();

        if (station.getType() == ComputerType.LAPTOP)
        {
            setImage(laptopImg);
        }
        else if (station.getType() == ComputerType.PAGER)
        {
            setImage(pagerImg);
        }
        else if (station.getType() == ComputerType.MOBILE_PHONE)
        {
            setImage(mobilePhoneImg);
        }
        else if (station.getType() == ComputerType.HOTSPOT)
        {
            setImage(hotspotImg);
        }
        else
        {
            setImage(unknowComputerImg);
        }

        super.drawImpl(object, space);
    }

}