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

import org.trinitydesktop.qt.Qt;
import org.trinitydesktop.qt.TQListBox;
import org.trinitydesktop.qt.TQMetaObject;
import org.trinitydesktop.qt.QtSupport;
import java.util.ArrayList;
import org.trinitydesktop.qt.TQPushButton;
import org.trinitydesktop.qt.TQWidget;
import org.trinitydesktop.qt.TQGroupBox;

/**

 An editable listbox
 This class provides a editable listbox ;-), this means
 a listbox which is accompanied by a line edit to enter new
 items into the listbox and pushbuttons to add and remove
 items from the listbox and two buttons to move items up and down.
 \image html keditlistbox.png "KDE Edit List Box Widget"
  See {@link KEditListBoxSignals} for signals emitted by KEditListBox
		@short    An editable listbox

*/
public class KEditListBox extends TQGroupBox  {
	protected KEditListBox(Class dummy){super((Class) null);}

	/**
		 Enumeration of the buttons, the listbox offers. Specify them in the
		 constructor in the buttons parameter, or in setButtons.
		       		@short    Enumeration of the buttons, the listbox offers.
	*/
	public static final int Add = 1;
	public static final int Remove = 2;
	public static final int UpDown = 4;

	public static final int All = Add|Remove|UpDown;

	public native TQMetaObject metaObject();
	public native String className();
	/**
		 Create an editable listbox.
			 If <code>checkAtEntering</code> is true, after every character you type
		 in the line edit KEditListBox will enable or disable
		 the Add-button, depending whether the current content of the
		 line edit is already in the listbox. Maybe this can become a
		 performance hit with large lists on slow machines.
		 If <code>checkAtEntering</code> is false,
		 it will be checked if you press the Add-button. It is not
		 possible to enter items twice into the listbox.
		       		@short    Create an editable listbox.
	*/
	public KEditListBox(TQWidget parent, String name, boolean checkAtEntering, int buttons) {
		super((Class) null);
		newKEditListBox(parent,name,checkAtEntering,buttons);
	}
	private native void newKEditListBox(TQWidget parent, String name, boolean checkAtEntering, int buttons);
	public KEditListBox(TQWidget parent, String name, boolean checkAtEntering) {
		super((Class) null);
		newKEditListBox(parent,name,checkAtEntering);
	}
	private native void newKEditListBox(TQWidget parent, String name, boolean checkAtEntering);
	public KEditListBox(TQWidget parent, String name) {
		super((Class) null);
		newKEditListBox(parent,name);
	}
	private native void newKEditListBox(TQWidget parent, String name);
	public KEditListBox(TQWidget parent) {
		super((Class) null);
		newKEditListBox(parent);
	}
	private native void newKEditListBox(TQWidget parent);
	public KEditListBox() {
		super((Class) null);
		newKEditListBox();
	}
	private native void newKEditListBox();
	/**
		 Create an editable listbox.
			 The same as the other constructor, additionally it takes
		 <code>title</code>, which will be the title of the frame around the listbox.
		       		@short    Create an editable listbox.
	*/
	public KEditListBox(String title, TQWidget parent, String name, boolean checkAtEntering, int buttons) {
		super((Class) null);
		newKEditListBox(title,parent,name,checkAtEntering,buttons);
	}
	private native void newKEditListBox(String title, TQWidget parent, String name, boolean checkAtEntering, int buttons);
	public KEditListBox(String title, TQWidget parent, String name, boolean checkAtEntering) {
		super((Class) null);
		newKEditListBox(title,parent,name,checkAtEntering);
	}
	private native void newKEditListBox(String title, TQWidget parent, String name, boolean checkAtEntering);
	public KEditListBox(String title, TQWidget parent, String name) {
		super((Class) null);
		newKEditListBox(title,parent,name);
	}
	private native void newKEditListBox(String title, TQWidget parent, String name);
	public KEditListBox(String title, TQWidget parent) {
		super((Class) null);
		newKEditListBox(title,parent);
	}
	private native void newKEditListBox(String title, TQWidget parent);
	public KEditListBox(String title) {
		super((Class) null);
		newKEditListBox(title);
	}
	private native void newKEditListBox(String title);
	/**
		 Another constructor, which allows to use a custom editing widget
		 instead of the standard KLineEdit widget. E.g. you can use a
		 KURLRequester or a KComboBox as input widget. The custom
		 editor must consist of a lineedit and optionally another widget that
		 is used as representation. A KComboBox or a KURLRequester have a
		 KLineEdit as child-widget for example, so the KComboBox is used as
		 the representation widget.
				@short    Another constructor, which allows to use a custom editing widget  instead of the standard KLineEdit widget.
		@see KURLRequester#customEditor
	*/
	// KEditListBox* KEditListBox(const TQString& arg1,const KEditListBox::CustomEditor& arg2,TQWidget* arg3,const char* arg4,bool arg5,int arg6); >>>> NOT CONVERTED
	// KEditListBox* KEditListBox(const TQString& arg1,const KEditListBox::CustomEditor& arg2,TQWidget* arg3,const char* arg4,bool arg5); >>>> NOT CONVERTED
	// KEditListBox* KEditListBox(const TQString& arg1,const KEditListBox::CustomEditor& arg2,TQWidget* arg3,const char* arg4); >>>> NOT CONVERTED
	// KEditListBox* KEditListBox(const TQString& arg1,const KEditListBox::CustomEditor& arg2,TQWidget* arg3); >>>> NOT CONVERTED
	// KEditListBox* KEditListBox(const TQString& arg1,const KEditListBox::CustomEditor& arg2); >>>> NOT CONVERTED
	/**
		 Return a pointer to the embedded TQListBox.
		       		@short    Return a pointer to the embedded TQListBox.
	*/
	public native TQListBox listBox();
	/**
		 Return a pointer to the embedded TQLineEdit.
		       		@short    Return a pointer to the embedded TQLineEdit.
	*/
	public native KLineEdit lineEdit();
	/**
		 Return a pointer to the Add button
		       		@short    Return a pointer to the Add button
	*/
	public native TQPushButton addButton();
	/**
		 Return a pointer to the Remove button
		       		@short    Return a pointer to the Remove button
	*/
	public native TQPushButton removeButton();
	/**
		 Return a pointer to the Up button
		       		@short    Return a pointer to the Up button
	*/
	public native TQPushButton upButton();
	/**
		 Return a pointer to the Down button
		       		@short    Return a pointer to the Down button
	*/
	public native TQPushButton downButton();
	/**
		 See TQListBox.count()
		       		@short    See TQListBox.count()
	*/
	public native int count();
	/**
		 See TQListBox.insertStringList()
		       		@short    See TQListBox.insertStringList()
	*/
	public native void insertStringList(String[] list, int index);
	public native void insertStringList(String[] list);
	/**
		 See TQListBox.insertStringList()
		       		@short    See TQListBox.insertStringList()
	*/
	public native void insertStrList(String[] list, int index);
	public native void insertStrList(String[] list);
	/**
		 See TQListBox.insertStrList()
		       		@short    See TQListBox.insertStrList()
	*/
	public native void insertStrList(String[] list, int numStrings, int index);
	/**
		 See TQListBox.insertItem()
		       		@short    See TQListBox.insertItem()
	*/
	public native void insertItem(String text, int index);
	public native void insertItem(String text);
	/**
		 Clears both the listbox and the line edit.
		       		@short    Clears both the listbox and the line edit.
	*/
	public native void clear();
	/**
		 See TQListBox.text()
		       		@short    See TQListBox.text()
	*/
	public native String text(int index);
	/**
		 See TQListBox.currentItem()
		       		@short    See TQListBox.currentItem()
	*/
	public native int currentItem();
	/**
		 See TQListBox.currentText()
		       		@short    See TQListBox.currentText()
	*/
	public native String currentText();
	/**
				@return a stringlist of all items in the listbox

		@short
	*/
	public native ArrayList items();
	/**
		 Clears the listbox and sets the contents to <code>items</code>
				@short    Clears the listbox and sets the contents to <code>items</code>
	*/
	public native void setItems(String[] items);
	/**
		 Returns which buttons are visible
		       		@short    Returns which buttons are visible
	*/
	public native int buttons();
	/**
		 Specifies which buttons should be visible
		       		@short    Specifies which buttons should be visible
	*/
	public native void setButtons(int buttons);
	protected native void moveItemUp();
	protected native void moveItemDown();
	protected native void addItem();
	protected native void removeItem();
	protected native void enableMoveButtons(int index);
	protected native void typedSomething(String text);
	/** 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();
}
