KDE3Support
k3bookmarkdrag.h
Go to the documentation of this file.00001 // -*- c-basic-offset:4; indent-tabs-mode:nil -*- 00002 // vim: set ts=4 sts=4 sw=4 et: 00003 /* This file is part of the KDE libraries 00004 Copyright (C) 2000 David Faure <faure@kde.org> 00005 00006 This library is free software; you can redistribute it and/or 00007 modify it under the terms of the GNU Library General Public 00008 License version 2 as published by the Free Software Foundation. 00009 00010 This library is distributed in the hope that it will be useful, 00011 but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00013 Library General Public License for more details. 00014 00015 You should have received a copy of the GNU Library General Public License 00016 along with this library; see the file COPYING.LIB. If not, write to 00017 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 00018 Boston, MA 02110-1301, USA. 00019 */ 00020 00021 #ifndef K3BOOKMARKDRAG_H 00022 #define K3BOOKMARKDRAG_H 00023 00024 #include <kde3support_export.h> 00025 00026 #include <kbookmark.h> 00027 #include <Qt3Support/Q3ColorDrag> 00028 #include <Qt3Support/Q3ValueList> 00029 00030 // Clipboard/dnd data : URLs + XML for bookmarks 00031 class KDE3SUPPORT_EXPORT K3BookmarkDrag : public Q3UriDrag 00032 { 00033 public: 00034 static K3BookmarkDrag * newDrag( const Q3ValueList<KBookmark> & bookmarks, 00035 QWidget * dragSource = 0, 00036 const char * name = 0 ); 00037 static K3BookmarkDrag * newDrag( const KBookmark & bookmark, 00038 QWidget * dragSource = 0, 00039 const char * name = 0 ); 00040 protected: 00041 K3BookmarkDrag( const Q3ValueList<KBookmark> & bookmarks, 00042 const Q3StrList & urls, 00043 QWidget * dragSource, 00044 const char * name ); 00045 public: 00046 virtual ~K3BookmarkDrag() {} 00047 00048 virtual const char* format( int i ) const; 00049 virtual QByteArray encodedData( const char* mime ) const; 00050 00051 static bool canDecode( const QMimeSource * e ); 00052 static Q3ValueList<KBookmark> decode( const QMimeSource * e ); 00053 00054 protected: 00055 Q3ValueList<KBookmark> m_bookmarks; 00056 QDomDocument m_doc; 00057 }; 00058 #endif