kmultipledrag.h

00001 /* This file is part of the KDE project
00002    Copyright (C) 2001 David Faure <faure@kde.org>
00003 
00004    This program is free software; you can redistribute it and/or
00005    modify it under the terms of the GNU Library General Public
00006    License as published by the Free Software Foundation; either
00007    version 2 of the License.
00008 
00009    This program is distributed in the hope that it will be useful,
00010    but WITHOUT ANY WARRANTY; without even the implied warranty of
00011    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012    Library General Public License for more details.
00013 
00014    You should have received a copy of the GNU Library General Public License
00015    along with this program; see the file COPYING.  If not, write to
00016    the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00017    Boston, MA 02110-1301, USA.
00018 */
00019 
00020 #ifndef KMULTIPLEDRAG_H
00021 #define KMULTIPLEDRAG_H
00022 
00023 #ifndef QT_NO_DRAGANDDROP
00024 
00025 #include <qdragobject.h>
00026 #include <qvaluelist.h>
00027 #include "kdelibs_export.h"
00028 
00029 class KMultipleDragPrivate;
00054 class KDECORE_EXPORT KMultipleDrag : public QDragObject
00055 {
00056     Q_OBJECT
00057 
00058 public:
00065     KMultipleDrag( QWidget *dragSource = 0, const char *name = 0 );
00066 
00074     void addDragObject( QDragObject *dragObject );
00075 
00083     virtual QByteArray encodedData( const char *mime ) const;
00084 
00091     virtual const char* format( int i ) const;
00092 
00093 protected:
00094 // KDE4: make private
00095     QPtrList<QDragObject> m_dragObjects;
00096     QValueList<int> m_numberFormats;
00097 protected:
00098     virtual void virtual_hook( int id, void* data );
00099 private:
00100     KMultipleDragPrivate* d;
00101 };
00102 
00103 #endif // QT_NO_DRAGANDDROP
00104 
00105 #endif // KMULTIPLEDRAG_H
KDE Home | KDE Accessibility Home | Description of Access Keys