kbookmarkdombuilder.h
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 project 00004 Copyright (C) 2003 Alexander Kellett <lypanov@kde.org> 00005 00006 This program is free software; you can redistribute it and/or 00007 modify it under the terms of the GNU General Public 00008 License version 2 as published by the Free Software Foundation. 00009 00010 This program 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 General Public License for more details. 00014 00015 You should have received a copy of the GNU General Public License 00016 along with this program; see the file COPYING. 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 __kbookmarkdombuilder_h 00022 #define __kbookmarkdombuilder_h 00023 00024 #include <qvaluestack.h> 00025 #include <qobject.h> 00026 #include <kbookmark.h> 00027 00031 class KIO_EXPORT KBookmarkDomBuilder : public QObject { 00032 Q_OBJECT 00033 public: 00034 KBookmarkDomBuilder(const KBookmarkGroup &group, KBookmarkManager *); 00035 virtual ~KBookmarkDomBuilder(); 00036 void connectImporter(const QObject *); 00037 protected slots: 00038 void newBookmark(const QString &text, const QCString &url, const QString &additionalInfo); 00039 void newFolder(const QString &text, bool open, const QString &additionalInfo); 00040 void newSeparator(); 00041 void endFolder(); 00042 private: 00043 QValueStack<KBookmarkGroup> m_stack; 00044 QValueList<KBookmarkGroup> m_list; 00045 KBookmarkManager *m_manager; 00046 class KBookmarkDomBuilderPrivate *p; 00047 }; 00048 00049 #endif