kio Library API Documentation

kfilebookmarkhandler.h

00001 /* This file is part of the KDE libraries
00002     Copyright (C) 2002 Carsten Pfeiffer <pfeiffer@kde.org>
00003 
00004     library 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, version 2.
00007 
00008     This library is distributed in the hope that it will be useful,
00009     but WITHOUT ANY WARRANTY; without even the implied warranty of
00010     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00011     Library General Public License for more details.
00012 
00013     You should have received a copy of the GNU Library General Public License
00014     along with this library; see the file COPYING.LIB.  If not, write to
00015     the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
00016     Boston, MA 02111-1307, USA.
00017 */
00018 
00019 #ifndef KFILEBOOKMARKHANDLER_H
00020 #define KFILEBOOKMARKHANDLER_H
00021 
00022 #include <kbookmarkmanager.h>
00023 #include <kbookmarkmenu.h>
00024 
00025 class QTextStream;
00026 class KPopupMenu;
00027 
00028 class KFileBookmarkHandler : public QObject, public KBookmarkOwner
00029 {
00030     Q_OBJECT
00031 
00032 public:
00033     KFileBookmarkHandler( KFileDialog *dialog );
00034     ~KFileBookmarkHandler();
00035 
00036     QPopupMenu * popupMenu();
00037 
00038     // KBookmarkOwner interface:
00039     virtual void openBookmarkURL( const QString& url ) { emit openURL( url ); }
00040     virtual QString currentURL() const;
00041 
00042     KPopupMenu *menu() const { return m_menu; }
00043 
00044 signals:
00045     void openURL( const QString& url );
00046 
00047 private slots:
00048     // for importing
00049     void slotNewBookmark( const QString& text, const QCString& url,
00050                           const QString& additionalInfo );
00051     void slotNewFolder( const QString& text, bool open,
00052                         const QString& additionalInfo );
00053     void newSeparator();
00054     void endFolder();
00055 
00056 private:
00057     void importOldBookmarks( const QString& path, const QString& destinationPath );
00058 
00059     KFileDialog *m_dialog;
00060     KPopupMenu *m_menu;
00061     KBookmarkMenu *m_bookmarkMenu;
00062 
00063     QTextStream *m_importStream;
00064 
00065 protected:
00066     virtual void virtual_hook( int id, void* data );
00067 private:
00068     class KFileBookmarkHandlerPrivate;
00069     KFileBookmarkHandlerPrivate *d;
00070 };
00071 
00072 
00073 #endif // KFILEBOOKMARKHANDLER_H
KDE Logo
This file is part of the documentation for kdelibs Version 3.1.4.
Documentation copyright © 1996-2002 the KDE developers.
Generated on Sun Feb 27 22:15:29 2005 by doxygen 1.3.4 written by Dimitri van Heesch, © 1997-2001