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

import org.kde.qt.Qt;
import org.kde.qt.QListViewItem;
import org.kde.qt.QMetaObject;
import org.kde.qt.QtSupport;
import org.kde.qt.QPixmap;
import org.kde.qt.QDragMoveEvent;
import org.kde.qt.QDragEnterEvent;
import org.kde.qt.QDragLeaveEvent;
import java.util.ArrayList;
import org.kde.qt.QDropEvent;
import org.kde.qt.QWidget;
import org.kde.qt.QDragObject;

/**

 The filetreeview offers a treeview on the file system which behaves like
 a QTreeView showing files and/or directories in the file system.
 KFileTreeView is able to handle more than one URL, represented by
 KFileTreeBranch.
 Typical usage:
 1. create a KFileTreeView fitting in your layout and add columns to it
 2. call addBranch to create one or more branches
 3. retrieve the root item with KFileTreeBranch.root() and set it open
    if desired. That starts the listing.
  See {@link KFileTreeViewSignals} for signals emitted by KFileTreeView
		@short    The filetreeview offers a treeview on the file system which behaves like  a QTreeView showing files and/or directories in the file system.

*/
public class KFileTreeView extends KListView  {
	protected KFileTreeView(Class dummy){super((Class) null);}
	public native QMetaObject metaObject();
	public native String className();
	public KFileTreeView(QWidget parent, String name) {
		super((Class) null);
		newKFileTreeView(parent,name);
	}
	private native void newKFileTreeView(QWidget parent, String name);
	public KFileTreeView(QWidget parent) {
		super((Class) null);
		newKFileTreeView(parent);
	}
	private native void newKFileTreeView(QWidget parent);
	/**	
				@return the current (i.e. selected) item
     
		@short
	*/
	public native KFileTreeViewItem currentKFileTreeViewItem();
	/**	
				@return the URL of the current selected item.
    
		@short
	*/
	public native KURL currentURL();
	/**	
		  Adds a branch to the treeview item.
			  This high-level function creates the branch, adds it to the treeview and
		  connects some signals. Note that directory listing does not start until
		  a branch is expanded either by opening the root item by user or by setOpen
		  on the root item.
			@param path is the base url of the branch
			@param name is the name of the branch, which will be the text for column 0
			@param showHidden says if hidden files and directories should be visible
		    		@return a pointer to the new branch or zero

		@short     Adds a branch to the treeview item.
	*/
	public native KFileTreeBranch addBranch(KURL path, String name, boolean showHidden);
	public native KFileTreeBranch addBranch(KURL path, String name);
	/**	
		  same as the function above but with a pixmap to set for the branch.
		    		@short     same as the function above but with a pixmap to set for the branch.
	*/
	public native KFileTreeBranch addBranch(KURL path, String name, QPixmap pix, boolean showHidden);
	public native KFileTreeBranch addBranch(KURL path, String name, QPixmap pix);
	/**	
		  same as the function above but letting the user create the branch.
		    		@short     same as the function above but letting the user create the branch.
	*/
	public native KFileTreeBranch addBranch(KFileTreeBranch arg1);
	/**	
		  removes the branch from the treeview.
			@param branch is a pointer to the branch
				@return true on success.
    
		@short     removes the branch from the treeview.
	*/
	public native boolean removeBranch(KFileTreeBranch branch);
	/**	
			@param searchName is the name of a branch
		    		@return a pointer to the KFileTreeBranch in the KFileTreeView or zero on failure.

		@short
	*/
	public native KFileTreeBranch branch(String searchName);
	/**	
				@return a list of pointers to all existing branches in the treeview.

		@short
	*/
	// KFileTreeBranchList& branches(); >>>> NOT CONVERTED
	/**	
		  set the directory mode for branches. If true is passed, only directories will be loaded.
			@param branch is a pointer to a KFileTreeBranch
		    		@short     set the directory mode for branches.
	*/
	public native void setDirOnlyMode(KFileTreeBranch branch, boolean arg2);
	/**	
		 searches a branch for a KFileTreeViewItem identified by the relative url given as
		 second parameter. The method adds the branches base url to the relative path and finds
		 the item.
			@param brnch is a pointer to the branch to search in
			@param relUrl is the branch relativ url
		    		@return a pointer to the item or zero if the item does not exist.

		@short    searches a branch for a KFileTreeViewItem identified by the relative url given as  second parameter.
	*/
	public native KFileTreeViewItem findItem(KFileTreeBranch brnch, String relUrl);
	/**	
		 see method above, differs only in the first parameter. Finds the branch by its name.
		    		@short    see method above, differs only in the first parameter.
	*/
	public native KFileTreeViewItem findItem(String branchName, String relUrl);
	/**	
				@return a flag indicating if extended folder pixmaps are displayed or not.
    
		@short
	*/
	public native boolean showFolderOpenPixmap();
	/**	
		 set the flag to show 'extended' folder icons on or off. If switched on, folders will
		 have an open folder pixmap displayed if their children are visible, and the standard
		 closed folder pixmap (from mimetype folder) if they are closed.
		 If switched off, the plain mime pixmap is displayed.
			@param showIt = false displays mime type pixmap only
		    		@short    set the flag to show 'extended' folder icons on or off.
	*/
	public native void setShowFolderOpenPixmap(boolean showIt);
	public native void setShowFolderOpenPixmap();
	/**	
				@return true if we can decode the drag and support the action
    
		@short
	*/
	protected native boolean acceptDrag(QDropEvent event);
	protected native QDragObject dragObject();
	protected native void startAnimation(KFileTreeViewItem item, String iconBaseName, int iconCount);
	protected native void startAnimation(KFileTreeViewItem item, String iconBaseName);
	protected native void startAnimation(KFileTreeViewItem item);
	protected native void stopAnimation(KFileTreeViewItem item);
	protected native void contentsDragEnterEvent(QDragEnterEvent e);
	protected native void contentsDragMoveEvent(QDragMoveEvent e);
	protected native void contentsDragLeaveEvent(QDragLeaveEvent e);
	protected native void contentsDropEvent(QDropEvent ev);
	// void slotNewTreeViewItems(KFileTreeBranch* arg1,const KFileTreeViewItemList& arg2); >>>> NOT CONVERTED
	protected native void slotSetNextUrlToSelect(KURL url);
	protected native QPixmap itemIcon(KFileTreeViewItem arg1, int gap);
	protected native QPixmap itemIcon(KFileTreeViewItem arg1);
	/** 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();
}
