KBookmarks 5.109.0
kbookmarkimporter.h
1// -*- c-basic-offset:4; indent-tabs-mode:nil -*-
2/*
3 This file is part of the KDE libraries
4 SPDX-FileCopyrightText: 2000 David Faure <faure@kde.org>
5
6 SPDX-License-Identifier: LGPL-2.0-only
7*/
8
9#ifndef __kbookmarkimporter_h
10#define __kbookmarkimporter_h
11
12#include <QObject>
13
14#include "kbookmark.h"
15
21class KBOOKMARKS_EXPORT KBookmarkImporterBase : public QObject
22{
23 Q_OBJECT
24public:
26 {
27 }
28 ~KBookmarkImporterBase() override
29 {
30 }
31
32 void setFilename(const QString &filename)
33 {
34 m_fileName = filename;
35 }
36
37 virtual void parse() = 0;
38 virtual QString findDefaultLocation(bool forSaving = false) const = 0;
39
40 // TODO - make this static?
41 void setupSignalForwards(QObject *src, QObject *dst);
42 static KBookmarkImporterBase *factory(const QString &type);
43
44Q_SIGNALS:
49 void newBookmark(const QString &text, const QString &url, const QString &additionalInfo);
50
55 void newFolder(const QString &text, bool open, const QString &additionalInfo);
56
61
66 void endFolder();
67
68protected:
69 QString m_fileName;
70
71private:
72 class KBookmarkImporterBasePrivate *d;
73};
74
79{
80 Q_OBJECT
81public:
83 {
84 }
85 void parse() override;
86 QString findDefaultLocation(bool = false) const override
87 {
88 return QString();
89 }
90
91protected:
92 void visit(const KBookmark &) override;
93 void visitEnter(const KBookmarkGroup &) override;
94 void visitLeave(const KBookmarkGroup &) override;
95
96private:
97 class KXBELBookmarkImporterImplPrivate *d;
98};
99
100#endif
A class to traverse bookarm groups.
Definition kbookmark.h:434
A group of bookmarks.
Definition kbookmark.h:323
A class for importing NS bookmarks KEditBookmarks uses it to insert bookmarks into its DOM tree,...
Definition kbookmarkimporter.h:22
void newSeparator()
Notify about a new separator.
void endFolder()
Tell the outside world that we're going down one menu.
void newFolder(const QString &text, bool open, const QString &additionalInfo)
Notify about a new folder Use "bookmark_folder" for the icon.
void newBookmark(const QString &text, const QString &url, const QString &additionalInfo)
Notify about a new bookmark Use "html" for the icon.
A class representing a bookmark.
Definition kbookmark.h:28
A class for importing XBEL files.
Definition kbookmarkimporter.h:79