/*
 * Java-Gnome Bindings Library
 *
 * Copyright 1998-2004 the Java-Gnome Team, all rights reserved.
 *
 * The Java-Gnome bindings library is free software distributed under
 * the terms of the GNU Library General Public License version 2.
 */

package org.gnu.gtk;

import org.gnu.gdk.Pixbuf;
import org.gnu.gdk.Rectangle;
import org.gnu.glib.Boxed;
import org.gnu.glib.Handle;

/**
 */
public class IconInfo extends Boxed {
	
	private IconInfo() {}
	
	IconInfo(Handle handle) {
		this.handle = handle;
	}
	
	public int getBaseSize() {
		return gtk_icon_info_get_base_size(handle);
	}
	
	public String getFilename(){
		return gtk_icon_info_get_filename(handle);
	}
	
	public Pixbuf getBuiltinPixbuf() {
		return new Pixbuf(gtk_icon_info_get_builtin_pixbuf(handle));
	}
	
	public Pixbuf loadIcon() {
		return new Pixbuf(gtk_icon_info_load_icon(handle, new int[] {}));
	}
	
	public String getDisplayName() {
		return gtk_icon_info_get_display_name(handle);
	}
	
	public boolean getEmbeddedRect(Rectangle rect) {
		return gtk_icon_info_get_embedded_rect(handle, rect.getHandle());
	}
	

	native static final protected int gtk_icon_info_get_type ();
	native static final protected Handle gtk_icon_info_copy(Handle info);
	native static final protected void gtk_icon_info_free(Handle info);
	native static final protected int gtk_icon_info_get_base_size(Handle info);
	native static final protected String gtk_icon_info_get_filename(Handle info);
	native static final protected Handle gtk_icon_info_get_builtin_pixbuf(Handle info);
	native static final protected Handle gtk_icon_info_load_icon(Handle info, int[] error);
	native static final protected void gtk_icon_info_set_raw_coordinates(Handle info, boolean rawCoordinates);
	native static final protected boolean gtk_icon_info_get_embedded_rect(Handle info, Handle rect);
	native static final protected boolean gtk_icon_info_get_attach_points(Handle info, int[] points, int numPoints);
	native static final protected String gtk_icon_info_get_display_name(Handle info);

	
}
