diff options
Diffstat (limited to 'khexedit/draglabel.h')
-rw-r--r-- | khexedit/draglabel.h | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/khexedit/draglabel.h b/khexedit/draglabel.h new file mode 100644 index 0000000..d90b5ed --- /dev/null +++ b/khexedit/draglabel.h @@ -0,0 +1,60 @@ +/* + * khexedit - Versatile hex editor + * Copyright (C) 1999-2000 Espen Sand, [email protected] + * + * 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. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + * + */ + +#ifndef _DRAG_SOURCE_H_ +#define _DRAG_SOURCE_H_ + +#include <qdropsite.h> +#include <qlabel.h> +#include <qbitmap.h> +#include <qstring.h> +#include <qstrlist.h> + +class KURLDrag; + +class CDragLabel: public QLabel +{ + Q_OBJECT + + public: + CDragLabel( QWidget *parent ); + ~CDragLabel( void ); + + void setUrl( const QString &url ); + void setDragMask( const QPixmap pix ); + + protected: + void mousePressEvent( QMouseEvent * ); + void mouseMoveEvent( QMouseEvent * ); + void mouseReleaseEvent( QMouseEvent * ); + + private: + void prepPixmap( KURLDrag &uriDrag ); + + private: + bool mValid; + QString mUrl; + QBitmap mDragMask; + bool mDragPending; + QPoint mDragOrigin; + +}; + +#endif |