diff options
Diffstat (limited to 'src/bookmarks/bookmarksmanager.h')
-rw-r--r-- | src/bookmarks/bookmarksmanager.h | 185 |
1 files changed, 10 insertions, 175 deletions
diff --git a/src/bookmarks/bookmarksmanager.h b/src/bookmarks/bookmarksmanager.h index eeb5391d..0c2b9ee2 100644 --- a/src/bookmarks/bookmarksmanager.h +++ b/src/bookmarks/bookmarksmanager.h @@ -34,179 +34,16 @@ // Rekonq Includes #include "rekonq_defines.h" -// Local Includes -#include "application.h" -#include "urlresolver.h" -#include "bookmarkspanel.h" - -// Qt Includes -#include <QWidget> - -// KDE Includes -#include <KBookmarkOwner> - -// Forward Declarations -class BookmarkProvider; - -class KAction; -class KActionCollection; -class KActionMenu; -class KUrl; -class KToolBar; -class KBookmarkManager; - - -/** - * Reimplementation of KBookmarkOwner, this class allows to manage - * bookmarks as actions - * - */ -class REKONQ_TESTS_EXPORT BookmarkOwner : public QObject , public KBookmarkOwner -{ - Q_OBJECT - -public: - - /** - * @short The class constructor. - * - * @param parent the pointer parent Bookmark provider. We need it - * to get pointer to MainWindow - */ - BookmarkOwner(QObject *parent = 0); - virtual ~BookmarkOwner() {} - - /** - * This function is called when a bookmark is selected and belongs to - * the ancestor class. - * This method actually emits signal to load bookmark's url. - * - * @param bookmark the bookmark to open - * @param mouseButtons the mouse buttons clicked to select the bookmark - * @param keyboardModifiers the keyboard modifiers pushed when the bookmark was selected - */ - virtual void openBookmark(const KBookmark &bookmark, - Qt::MouseButtons mouseButtons, - Qt::KeyboardModifiers keyboardModifiers); - - - /** - * this method, from KBookmarkOwner interface, allows to add the current page - * to the bookmark list, returning the URL page as QString. - * - * @return the current page's URL - */ - virtual QString currentUrl() const; - - /** - * this method, from KBookmarkOwner interface, allows to add the current page - * to the bookmark list, returning the title's page as QString. - * - * @return the current page's title - */ - virtual QString currentTitle() const; - - /** - * This function returns whether the owner supports tabs. - */ - virtual bool supportsTabs() const; - - /** - * Called if the user wants to open every bookmark in this folder in a new tab. - * The default implementation does nothing. - * This is only called if supportsTabs() returns true - */ - virtual void openFolderinTabs(const KBookmarkGroup &bookmark); - - virtual QList< QPair<QString, QString> > currentBookmarkList() const; - -signals: - /** - * This signal is emitted when an url has to be loaded - * - * @param url the URL to load - * - */ - void openUrl(const KUrl &, const Rekonq::OpenType &); -}; - -// ------------------------------------------------------------------------------ - - // KDE Includes #include <KBookmarkMenu> - -/** - * This class represent the rekonq bookmarks menu. - * It's just a simple class inherited from KBookmarkMenu - * - */ -class BookmarkMenu : public KBookmarkMenu -{ - Q_OBJECT - -public: - BookmarkMenu(KBookmarkManager* manager, - KBookmarkOwner* owner, - KMenu* menu, - KActionCollection* actionCollection); - BookmarkMenu(KBookmarkManager *manager, - KBookmarkOwner *owner, - KMenu *parentMenu, - const QString &parentAddress); - ~BookmarkMenu(); - -protected: - virtual KMenu * contextMenu(QAction * act); - virtual void refill(); - virtual QAction* actionForBookmark(const KBookmark &bookmark); - -private slots: - void actionHovered(); - -private: - void addOpenFolderInTabs(); - -}; - - -// ------------------------------------------------------------------------------ - #include <KToolBar> -class BookmarkToolBar : public KToolBar -{ - Q_OBJECT - -public: -BookmarkToolBar(const QString &objectName, - QMainWindow *parentWindow, - Qt::ToolBarArea area, - bool newLine = false, - bool isMainToolBar = false, - bool readConfig = true); -~BookmarkToolBar(); - -virtual void setVisible(bool visible); - -protected: - bool eventFilter(QObject *watched, QEvent *event); - -private slots: - void actionHovered(); - void menuDisplayed(); - void menuHidden(); - void hideMenu(); - -private: - bool m_filled; - KMenu *m_currentMenu; -}; - +// Forward Declarations +class BookmarksPanel; +class BookmarkToolBar; +class BookmarkOwner; -// ------------------------------------------------------------------------------ - /** * This class represent the interface to rekonq bookmarks system. * All rekonq needs (Bookmarks Menu, Bookmarks Toolbar) is provided @@ -237,12 +74,10 @@ public: */ KActionMenu *bookmarkActionMenu(QWidget *parent); - KAction *bookmarkToolBarAction(KToolBar *t); - /** * @short set the Bookmarks Toolbar Action */ - void setupBookmarkBar(BookmarkToolBar *); + void registerBookmarkBar(BookmarkToolBar *); void removeToolBar(BookmarkToolBar *); @@ -263,7 +98,7 @@ public: KBookmarkGroup rootGroup(); inline KBookmarkManager *bookmarkManager() { return m_manager; } - + inline BookmarkOwner *bookmarkOwner() { return m_owner; } QList<KBookmark> find(QString text); @@ -272,7 +107,7 @@ public: void removeBookmarkPanel(BookmarksPanel *panel); KBookmark bookmarkForUrl(const KUrl &url); - + signals: /** * @short This signal is emitted when an url has to be loaded @@ -299,11 +134,11 @@ public slots: */ void slotBookmarksChanged(const QString &group, const QString &caller); void fillBookmarkBar(BookmarkToolBar *toolBar); - + private slots: void slotAddBookmark(); void slotPanelChanged(); - + private: QList<KBookmark> find(QList<KBookmark> list, const KBookmark &bookmark, QString text); @@ -315,7 +150,7 @@ private: KActionCollection *m_actionCollection; QList<BookmarkToolBar *> m_bookmarkToolBars; QList<BookmarksPanel*> m_bookmarkPanels; - + KActionMenu *_bookmarkActionMenu; }; |