KMultipleDrag Class Reference
#include <kmultipledrag.h>
Inheritance diagram for KMultipleDrag:

Detailed Description
This class makes it easy for applications to provide a drag object (for drag-n-drop or for clipboard) that has several representations of the same data, under different formats.Instead of creating a specific class for each case (as would otherwise be necessary), you can simply create independent drag objects (e.g. a QImageDrag object and a KURLDrag object), and bundle them together using KMultipleDrag.
Sample code for this:
KMultipleDrag *drag = new KMultipleDrag( parentWidget ); drag->addDragObject( new QImageDrag( someQImage, 0 ) ); drag->addDragObject( new KURLDrag( someKURL, 0 ) ); drag->drag();
Note that the drag objects added to the multiple drag become owned by it. For that reason their parent should be 0.
Definition at line 54 of file kmultipledrag.h.
Public Member Functions | |
KMultipleDrag (QWidget *dragSource=0, const char *name=0) | |
void | addDragObject (QDragObject *dragObject) |
virtual QByteArray | encodedData (const char *mime) const |
virtual const char * | format (int i) const |
Protected Member Functions | |
virtual void | virtual_hook (int id, void *data) |
Protected Attributes | |
QPtrList< QDragObject > | m_dragObjects |
QValueList< int > | m_numberFormats |
Constructor & Destructor Documentation
KMultipleDrag::KMultipleDrag | ( | QWidget * | dragSource = 0 , |
|
const char * | name = 0 | |||
) |
Create a new KMultipleDrag object.
- Parameters:
-
dragSource the parent object which is the source of the data, 0 for a parent-less object name the name of the object, can be 0
Definition at line 25 of file kmultipledrag.cpp.
Member Function Documentation
void KMultipleDrag::addDragObject | ( | QDragObject * | dragObject | ) |
Call this to add each underlying drag object to the multiple drag object.
The drag object should not have a parent because the multiple drag object will own it.
- Parameters:
-
dragObject the drag object to add. Should have no parent object.
Definition at line 31 of file kmultipledrag.cpp.
QByteArray KMultipleDrag::encodedData | ( | const char * | mime | ) | const [virtual] |
Returns the data of a drag object with that supports the given mime type.
- Parameters:
-
mime the mime type to search
- Returns:
- the data, or a null byte array if not found
- Reimplemented from superclass.
Definition at line 42 of file kmultipledrag.cpp.
const char * KMultipleDrag::format | ( | int | i | ) | const [virtual] |
Returns the i'th
supported format, or 0.
- Parameters:
-
i the number of the format to check
- Returns:
- the format with the number
i
, or 0 otherwise
- Reimplemented from superclass.
Definition at line 58 of file kmultipledrag.cpp.
The documentation for this class was generated from the following files: