Make 'Open (bookmark) folder in tabs' action working
[kdenetwork.git] / krdc / bookmarkmanager.h
blob2777b92d03e803cbf3a4227c8f0c57f2d7aa5527
1 /****************************************************************************
2 **
3 ** Copyright (C) 2007 Urs Wolfer <uwolfer @ kde.org>
4 **
5 ** This file is part of KDE.
6 **
7 ** This program is free software; you can redistribute it and/or modify
8 ** it under the terms of the GNU General Public License as published by
9 ** the Free Software Foundation; either version 2 of the License, or
10 ** (at your option) any later version.
12 ** This program is distributed in the hope that it will be useful,
13 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
14 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 ** GNU General Public License for more details.
17 ** You should have received a copy of the GNU General Public License
18 ** along with this program; see the file COPYING. If not, write to
19 ** the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20 ** Boston, MA 02110-1301, USA.
22 ****************************************************************************/
24 #ifndef BOOKMARKMANAGER_H
25 #define BOOKMARKMANAGER_H
27 #include <KBookmarkManager>
29 class KActionCollection;
30 class KBookmarkMenu;
31 class KMenu;
32 class KUrl;
34 class MainWindow;
36 class BookmarkManager : public QObject, public KBookmarkOwner
38 Q_OBJECT
40 public:
41 BookmarkManager(KActionCollection *collection, KMenu *menu, MainWindow *parent);
42 ~BookmarkManager();
44 virtual QString currentUrl() const;
45 virtual QString currentTitle() const;
46 virtual bool addBookmarkEntry() const;
47 virtual bool editBookmarkEntry() const;
48 virtual bool supportsTabs() const;
49 virtual QList<QPair<QString, QString> > currentBookmarkList() const;
50 void addHistoryBookmark();
52 signals:
53 void openUrl(const KUrl &url);
55 private slots:
56 void openBookmark(const KBookmark &bm, Qt::MouseButtons, Qt::KeyboardModifiers);
57 void openFolderinTabs(const KBookmarkGroup &bookmarkGroup);
59 private:
60 KMenu *m_menu;
61 KBookmarkMenu *m_bookmarkMenu;
62 KBookmarkManager *m_manager;
63 KBookmarkGroup m_historyGroup;
65 MainWindow *m_mainWindow;
68 #endif