QDropEvent Class Reference
The QDropEvent class is the event sent when a drag-and-drop is completed.
More...
#include <qevent.h>
Inherits QEvent and QMimeSource.
Inherited by QDragMoveEvent.
List of all member functions.
Public Members
Detailed Description
The QDropEvent class is the event sent when a drag-and-drop is completed.
When a widget accepts drop events,
it will receive this event if it has accepted the most recent
QDragEnterEvent or QDragMoveEvent sent to it.
The widget should use data() to extract data in an
appropriate format.
Examples:
iconview/main.cpp
desktop/desktop.cpp
Member Type Documentation
This type describes the action which a source requests that a target
perform with dropped data. The values are:
Copy
- the default action. The source simply users the data
provided in the operation.
Link.
The source should somehow create a link to the location
specified by the data.
Move.
The source should somehow move the object from the location
specified by the data to a new location.
Private.
The target has special knowledge of the MIME type, which
the source should respond to similar to a Copy.
UserAction.
The source and target can co-operate using special
actions. This feature is not supported in Qt at this time.
The Link and Move actions only makes sense if the data is
a reference, such as text/uri-list file lists (see QUriDrag).
Member Function Documentation
QDropEvent::QDropEvent ( const QPoint & pos, Type typ=Drop )
Constructs a drop event that drops a drop of type typ on point pos.
void QDropEvent::accept ( bool y=TRUE=TRUE )
Reimplemented for internal reasons; the API is not affected.
Call this to indicate whether the event provided data which your
widget processed. To get the data, use encodedData(), or
preferably, the decode() methods of existing QDragObject subclasses,
such as QTextDrag::decode(), or your own subclasses.
Warning: To accept or reject the drop, call acceptAction(), not this
function. This function indicates whether you processed the event
at all.
See also acceptAction().
Examples:
desktop/desktop.cpp
void QDropEvent::acceptAction ( bool y=TRUE=TRUE )
Call this to indicate that the action described by action() is accepted,
not merely the default copy action. If you call acceptAction(TRUE),
there is no need to also call accept(TRUE).
Action QDropEvent::action () const
Returns the Action which the target is requesting be performed with
the data. If your application understands the action and can
process the supplied data, call acceptAction(); if your application
can process the supplied data but can only perform the Copy action,
call accept().
QByteArray QDropEvent::data ( const char * f ) const
This function is obsolete. It is provided to keep old source working, and will probably be removed in a future version of Qt. We strongly advise against using it in new code.
Use QDropEvent::encodedData().
QByteArray QDropEvent::encodedData ( const char * format ) const [virtual]
Returns a byte array containing the payload data of this drag, in
format.
data() normally needs to get the data from the drag source, which is
potentially very slow, so it's advisable to call this function only
if you're sure that you will need the data in format.
The resulting data will have a size of 0 if the format was not
available.
See also format() and QByteArray::size().
Reimplemented from QMimeSource.
const char* QDropEvent::format ( int n = 0 ) const [virtual]
Returns a string describing one of the available data types for
this drag. Common examples are "text/plain" and "image/gif". If n is less than zero or greater than the number of available data
types, format() returns 0.
This function is provided mainly for debugging. Most drop targets
will use provides().
See also data() and provides().
Examples:
iconview/main.cpp
Reimplemented from QMimeSource.
void QDropEvent::ignore ()
The opposite of accept().
bool QDropEvent::isAccepted () const
Returns TRUE if the drop target accepts the event.
bool QDropEvent::isActionAccepted () const
Returns TRUE if the drop action was accepted by the drop site, and
FALSE if not.
const QPoint& QDropEvent::pos () const
Returns the position where the drop was made.
bool QDropEvent::provides ( const char * mimeType ) const [virtual]
Returns TRUE if this event provides format mimeType or
FALSE if it does not.
See also data().
Reimplemented from QMimeSource.
void QDropEvent::setAction ( Action a )
Sets the action. This is used internally, you should not need to
call this in your code - the source decides the action, not the
target.
void QDropEvent::setPoint ( const QPoint & np )
Sets the drop to happen at np. You do normally not need to use
this as it will be set internally before your widget receives the
drop event.
QWidget* QDropEvent::source () const
If the source of the drag operation is a widget in this application,
this function returns that source, otherwise 0. The source of the
operation is the first parameter to to drag object subclass.
This is useful if your widget needs special behavior when dragging
to itself, etc.
See QDragObject::QDragObject() and subclasses.
Search the documentation, FAQ, qt-interest archive and more (uses
www.trolltech.com):
This file is part of the Qt toolkit,
copyright © 1995-2005
Trolltech, all rights reserved.