/***************************************************************************
                            QDragObject.java -  description
                             -------------------
    begin                : Wed Nov 21 17:05:56 2001
    copyright            : (C) 2000-2001 Lost Highway Ltd. All rights reserved.
    email                : Lost_Highway@tipitina.demon.co.uk
    generated by         : duke@tipitina on Wed Nov 21 17:05:56 2001, using kalyptus 0.9.
 ***************************************************************************/

/***************************************************************************
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
***************************************************************************/

package org.kde.qt;

import java.util.*;
import java.lang.Error;

/**
 See {@link QDragObjectSignals} for signals emitted by QDragObject.

 See {@link QDragObjectEventHandling} for event handlers to override in subclasses of QDragObject.

*/
public class QDragObject extends QObject implements  QMimeSourceInterface {
	protected QDragObject(Class dummy){super((Class) null);}

	private native void newQDragObject( QWidget dragSource, String name);
	public QDragObject( QWidget dragSource, String name) {
		super((Class) null);
		newQDragObject( dragSource, name);
	}
	private native void newQDragObject();
	public QDragObject() {
		super((Class) null);
		newQDragObject();
	}
	protected native void finalize() throws InternalError;
	public native boolean drag();
	public native boolean dragMove();
	public native void dragCopy();
	public native void dragLink();
	public native void setPixmap( QPixmap arg1);
	public native void setPixmap( QPixmap arg1, QPoint hotspot);
	public native QPixmap pixmap();
	public native QPoint pixmapHotSpot();
	public native QWidget source();
	public static native QWidget target();
	public static native void setTarget( QWidget arg1);
	protected native boolean drag( int arg1);
	public static final int DragDefault = 0;
	public static final int DragCopy = 1;
	public static final int DragMove = 2;
	public static final int DragLink = 3;
	public static final int DragCopyOrMove = 4;

	public native String format( int n);
	public native boolean provides( String arg1);
	public native byte[] encodedData( String arg1);
	public native int serialNumber();
	
	/** Internal method */
	protected native long mimeSource();
}
