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

import org.trinitydesktop.qt.TQt;
import org.trinitydesktop.qt.TQMetaObject;
import org.trinitydesktop.qt.QtSupport;
import org.trinitydesktop.qt.TQMouseEvent;
import org.trinitydesktop.qt.TQIconSet;
import org.trinitydesktop.qt.TQWidget;
import org.trinitydesktop.qt.TQDragObject;
import org.trinitydesktop.qt.TQPushButton;

/**

 This is nothing but a TQPushButton with drag-support and KGuiItem support. You have to call
 setDragEnabled( true ) and override the method
 dragObject() to specify the TQDragObject to be used.
		@author Carsten Pfeiffer <pfeiffer@kde.org>

		@short A TQPushButton with drag-support and KGuiItem support.

*/
public class KPushButton extends TQPushButton  {
	protected KPushButton(Class dummy){super((Class) null);}
	public native TQMetaObject metaObject();
	public native String className();
	/**
		 Default constructor.
		     		@short    Default constructor.
	*/
	public KPushButton(TQWidget parent, String name) {
		super((Class) null);
		newKPushButton(parent,name);
	}
	private native void newKPushButton(TQWidget parent, String name);
	public KPushButton(TQWidget parent) {
		super((Class) null);
		newKPushButton(parent);
	}
	private native void newKPushButton(TQWidget parent);
	/**
		 Constructor, that sets the button-text to <code>text</code>
		     		@short    Constructor, that sets the button-text to <code>text</code>
	*/
	public KPushButton(String text, TQWidget parent, String name) {
		super((Class) null);
		newKPushButton(text,parent,name);
	}
	private native void newKPushButton(String text, TQWidget parent, String name);
	public KPushButton(String text, TQWidget parent) {
		super((Class) null);
		newKPushButton(text,parent);
	}
	private native void newKPushButton(String text, TQWidget parent);
	/**
		 Constructor, that sets an icon and the button-text to <code>text</code>
		     		@short    Constructor, that sets an icon and the button-text to <code>text</code>
	*/
	public KPushButton(TQIconSet icon, String text, TQWidget parent, String name) {
		super((Class) null);
		newKPushButton(icon,text,parent,name);
	}
	private native void newKPushButton(TQIconSet icon, String text, TQWidget parent, String name);
	public KPushButton(TQIconSet icon, String text, TQWidget parent) {
		super((Class) null);
		newKPushButton(icon,text,parent);
	}
	private native void newKPushButton(TQIconSet icon, String text, TQWidget parent);
	/**
		 Constructor that takes a KGuiItem for the text, the icon, the tooltip
		 and the what's this help
		     		@short    Constructor that takes a KGuiItem for the text, the icon, the tooltip  and the what's this help
	*/
	public KPushButton(KGuiItem item, TQWidget parent, String name) {
		super((Class) null);
		newKPushButton(item,parent,name);
	}
	private native void newKPushButton(KGuiItem item, TQWidget parent, String name);
	public KPushButton(KGuiItem item, TQWidget parent) {
		super((Class) null);
		newKPushButton(item,parent);
	}
	private native void newKPushButton(KGuiItem item, TQWidget parent);
	/**
		 Enables/disables drag-support. Default is disabled.
		     		@short    Enables/disables drag-support.
	*/
	public native void setDragEnabled(boolean enable);
	/**
				@return if drag support is enabled or not.

		@short
	*/
	public native boolean isDragEnabled();
	/**
		 Sets the KGuiItem for this button.
		     		@short    Sets the KGuiItem for this button.
	*/
	public native void setGuiItem(KGuiItem item);
	/**
		 Sets the standard KGuiItem for this button.
				@short     Sets the standard KGuiItem for this button.
	*/
	public native void setGuiItem(int item);
	/**
		 Reads the standard KGuiItem for this button.
				@short    Reads the standard KGuiItem for this button.
	*/
	public native int guiItem();
	public native void setGuiItm(int itm);
	public native int guiItm();
	/**
		 Sets the Icon Set for this button. It also takes into account hte
		 TDEGlobalSettings.showIconsOnPushButtons() setting.
		     		@short    Sets the Icon Set for this button.
	*/
	public native void setIconSet(TQIconSet iconSet);
	/**
		 Sets the text of the button
		    		@short    Sets the text of the button
	*/
	public native void setText(String text);
	/**
		 Reimplement this and return the TQDragObject that should be used
		 for the drag.
		 Default implementation returns null, so that no drag is initiated.
		     		@short    Reimplement this and return the TQDragObject that should be used  for the drag.
	*/
	protected native TQDragObject dragObject();
	/**
		 Reimplemented to add drag-support
		     		@short    Reimplemented to add drag-support
	*/
	protected native void mousePressEvent(TQMouseEvent arg1);
	/**
		 Reimplemented to add drag-support
		     		@short    Reimplemented to add drag-support
	*/
	protected native void mouseMoveEvent(TQMouseEvent arg1);
	/**
		 Starts a drag (dragCopy() by default) using dragObject()
		     		@short    Starts a drag (dragCopy() by default) using dragObject()
	*/
	protected native void startDrag();
	/** 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();
}
