// Path: src/main/java/org/petschko/lib/Image.java
// public class Image {
// 	private BufferedImage bufferedImage;
// 
// 	/**
// 	 * Image constructor
// 	 *
// 	 * @param bufferedImage - Buffered Image
// 	 */
// 	public Image(BufferedImage bufferedImage) {
// 		this.bufferedImage = bufferedImage;
// 	}
// 
// 	/**
// 	 * Resize the Image
// 	 *
// 	 * @param newWidth - New Width
// 	 * @param newHeight - New Height
// 	 */
// 	public void resize(int newWidth, int newHeight) {
// 		if(this.bufferedImage == null)
// 			return;
// 
// 		BufferedImage newImage = Image.drawNewPicture(newWidth, newHeight);
// 		Graphics g = newImage.getGraphics();
// 
// 		g.drawImage(this.bufferedImage, 0, 0, newWidth, newHeight, null);
// 
// 		this.bufferedImage = newImage;
// 	}
// 
// 	/**
// 	 * Returns the width of the Image
// 	 *
// 	 * @return - Width of the Image or null if not set
// 	 */
// 	public int getWidth() {
// 		return bufferedImage.getWidth();
// 	}
// 
// 	/**
// 	 * Returns the height of the Image
// 	 *
// 	 * @return - Height if the Image or null if not set
// 	 */
// 	public int getHeight() {
// 		return bufferedImage.getHeight();
// 	}
// 
// 	/**
// 	 * Returns the BufferedImage
// 	 *
// 	 * @return - Buffered Image
// 	 */
// 	public BufferedImage getBufferedImage() {
// 		return bufferedImage;
// 	}
// 
// 	/**
// 	 *
// 	 * @param x - width of the new picture
// 	 * @param y - height of the new picture
// 	 * @return - New Picture (transparency)
// 	 * @throws NumberFormatException - Invalid-Values
// 	 */
// 	public static BufferedImage drawNewPicture(int x, int y) throws NumberFormatException {
// 		if (x <= 0 || y <= 0)
// 			throw new NumberFormatException("drawNewPicture: x and y can't be <= 0!");
// 
// 		BufferedImage bi = new BufferedImage(x, y, BufferedImage.TYPE_INT_ARGB);
// 		Graphics g = bi.getGraphics();
// 
// 		Color transparency = new Color(0, 0, 0, 0);
// 		g.setColor(transparency);
// 		g.fillRect(0, 0, x, y);
// 
// 		return bi;
// 	}
// }


import org.petschko.lib.Image;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.net.URL;
	 */
	private void setBufferedImage(java.io.File imageFile) {
		try {
			this.image = ImageIO.read(imageFile);
		} catch(IOException e) {
			e.printStackTrace();
			this.image = null;

			return;
		}

		// Try to create the new Panel after reading
		this.createImagePanel();
	}

	/**
	 * Assign the Buffered Image to the Panel
	 */
	private void createImagePanel() {
		if(this.image != null)
			this.setIcon(new ImageIcon(this.image));
	}

	/**
	 * Resize the Element
	 *
	 * @param width - New Width
	 * @param height - New Height
	 */
	public void setImageSize(int width, int height) {
// Path: src/main/java/org/petschko/lib/Image.java
// public class Image {
// 	private BufferedImage bufferedImage;
// 
// 	/**
// 	 * Image constructor
// 	 *
// 	 * @param bufferedImage - Buffered Image
// 	 */
// 	public Image(BufferedImage bufferedImage) {
// 		this.bufferedImage = bufferedImage;
// 	}
// 
// 	/**
// 	 * Resize the Image
// 	 *
// 	 * @param newWidth - New Width
// 	 * @param newHeight - New Height
// 	 */
// 	public void resize(int newWidth, int newHeight) {
// 		if(this.bufferedImage == null)
// 			return;
// 
// 		BufferedImage newImage = Image.drawNewPicture(newWidth, newHeight);
// 		Graphics g = newImage.getGraphics();
// 
// 		g.drawImage(this.bufferedImage, 0, 0, newWidth, newHeight, null);
// 
// 		this.bufferedImage = newImage;
// 	}
// 
// 	/**
// 	 * Returns the width of the Image
// 	 *
// 	 * @return - Width of the Image or null if not set
// 	 */
// 	public int getWidth() {
// 		return bufferedImage.getWidth();
// 	}
// 
// 	/**
// 	 * Returns the height of the Image
// 	 *
// 	 * @return - Height if the Image or null if not set
// 	 */
// 	public int getHeight() {
// 		return bufferedImage.getHeight();
// 	}
// 
// 	/**
// 	 * Returns the BufferedImage
// 	 *
// 	 * @return - Buffered Image
// 	 */
// 	public BufferedImage getBufferedImage() {
// 		return bufferedImage;
// 	}
// 
// 	/**
// 	 *
// 	 * @param x - width of the new picture
// 	 * @param y - height of the new picture
// 	 * @return - New Picture (transparency)
// 	 * @throws NumberFormatException - Invalid-Values
// 	 */
// 	public static BufferedImage drawNewPicture(int x, int y) throws NumberFormatException {
// 		if (x <= 0 || y <= 0)
// 			throw new NumberFormatException("drawNewPicture: x and y can't be <= 0!");
// 
// 		BufferedImage bi = new BufferedImage(x, y, BufferedImage.TYPE_INT_ARGB);
// 		Graphics g = bi.getGraphics();
// 
// 		Color transparency = new Color(0, 0, 0, 0);
// 		g.setColor(transparency);
// 		g.fillRect(0, 0, x, y);
// 
// 		return bi;
// 	}
// }


// Path: src/main/java/org/petschko/lib/gui/JImageLabel.java
import org.petschko.lib.Image;
import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.net.URL;

	 */
	private void setBufferedImage(java.io.File imageFile) {
		try {
			this.image = ImageIO.read(imageFile);
		} catch(IOException e) {
			e.printStackTrace();
			this.image = null;

			return;
		}

		// Try to create the new Panel after reading
		this.createImagePanel();
	}

	/**
	 * Assign the Buffered Image to the Panel
	 */
	private void createImagePanel() {
		if(this.image != null)
			this.setIcon(new ImageIcon(this.image));
	}

	/**
	 * Resize the Element
	 *
	 * @param width - New Width
	 * @param height - New Height
	 */
	public void setImageSize(int width, int height) {
		Image img = new Image(this.image);