//Auto-generated by kalyptus. DO NOT EDIT.
package org.kde.koala;

import org.kde.qt.Qt;
import org.kde.qt.QMetaObject;
import org.kde.qt.QtSupport;
import org.kde.qt.QWidget;
import org.kde.qt.QPushButton;

/**

 A pushbutton for choosing an icon. Pressing on the button will open a
 KIconDialog for the user to select an icon. The current icon will be
 displayed on the button.
 See {@link KIconButtonSignals} for signals emitted by KIconButton
		@short A push button that allows selection of an icon.  
		@see KIconDialog

*/
public class KIconButton extends QPushButton  {
	protected KIconButton(Class dummy){super((Class) null);}
	public native QMetaObject metaObject();
	public native String className();
	/**	
		 Constructs a KIconButton using the global iconloader.
		     		@short    Constructs a KIconButton using the global iconloader.
	*/
	public KIconButton(QWidget parent, String name) {
		super((Class) null);
		newKIconButton(parent,name);
	}
	private native void newKIconButton(QWidget parent, String name);
	public KIconButton(QWidget parent) {
		super((Class) null);
		newKIconButton(parent);
	}
	private native void newKIconButton(QWidget parent);
	public KIconButton() {
		super((Class) null);
		newKIconButton();
	}
	private native void newKIconButton();
	/**	
		 Constructs a KIconButton using a specific KIconLoader.
		     		@short    Constructs a KIconButton using a specific KIconLoader.
	*/
	public KIconButton(KIconLoader loader, QWidget parent, String name) {
		super((Class) null);
		newKIconButton(loader,parent,name);
	}
	private native void newKIconButton(KIconLoader loader, QWidget parent, String name);
	public KIconButton(KIconLoader loader, QWidget parent) {
		super((Class) null);
		newKIconButton(loader,parent);
	}
	private native void newKIconButton(KIconLoader loader, QWidget parent);
	/**	
		 Sets a strict icon size policy for allowed icons. When true,
		 only icons of the specified group's size in setIconType are allowed,
		 and only icons of that size will be shown in the icon dialog.
		     		@short    Sets a strict icon size policy for allowed icons.
	*/
	public native void setStrictIconSize(boolean b);
	/**	
		 Returns true if a strict icon size policy is set.
		     		@short    Returns true if a strict icon size policy is set.
	*/
	public native boolean strictIconSize();
	/**	
		 Sets the icon group and context. Use KIcon.NoGroup if you want to
		 allow icons for any group in the given context.
		     		@short    Sets the icon group and context.
	*/
	public native void setIconType(int group, int context, boolean user);
	public native void setIconType(int group, int context);
	/**	
		 Sets the button's initial icon.
		     		@short    Sets the button's initial icon.
	*/
	public native void setIcon(String icon);
	/**	
		 Resets the icon (reverts to an empty button).
		     		@short    Resets the icon (reverts to an empty button).
	*/
	public native void resetIcon();
	/**	
		 Returns the name of the selected icon.
		     		@short    Returns the name of the selected icon.
	*/
	public native String iconName();
	/**	
		 Sets the size of the icon to be shown / selected.
				@short    Sets the size of the icon to be shown / selected.
		@see KIcon#StdSizes
		@see #iconSize
	*/
	public native void setIconSize(int size);
	/**	
		 Returns the iconsize set via setIconSize() or 0, if the default
		 iconsize will be used.
		     		@short    Returns the iconsize set via setIconSize() or 0, if the default  iconsize will be used.
	*/
	public native int iconSize();
	/** Deletes the wrapped C++ instance */
	protected native void finalize() throws InternalError;
	/** Delete the wrapped C++ instance ahead of finalize() */
	public native void dispose();
	/** Has the wrapped C++ instance been deleted? */
	public native boolean isDisposed();
}
