X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/175fe7ff47ccff39b0e77f80491a9701d025375e..b5cc2a6924cfd8f59611d3cec2edbb00a08b4ff1:/src/bookmarkselector.h diff --git a/src/bookmarkselector.h b/src/bookmarkselector.h index 50fc2e3e5..334f25ba3 100644 --- a/src/bookmarkselector.h +++ b/src/bookmarkselector.h @@ -24,7 +24,7 @@ #include class UrlNavigator; -class Q3PopupMenu; +class KMenu; class KUrl; /** @@ -49,11 +49,11 @@ public: virtual ~BookmarkSelector(); /** - * Updates the selection dependent from the given Url \a url. The - * Url must not match exactly to one of the available bookmarks: - * The bookmark which is equal to the Url or at least is a parent Url - * is selected. If there are more than one possible parent Url candidates, - * the bookmark which covers the bigger range of the Url is selected. + * Updates the selection dependent from the given URL \a url. The + * URL must not match exactly to one of the available bookmarks: + * The bookmark which is equal to the URL or at least is a parent URL + * is selected. If there are more than one possible parent URL candidates, + * the bookmark which covers the bigger range of the URL is selected. */ void updateSelection(const KUrl& url); @@ -69,6 +69,22 @@ public: /** @see QWidget::sizeHint() */ virtual QSize sizeHint() const; + /** + * Returns the base bookmark for the URL \a url. + * The base bookmark is defined as bookmark which is equal to + * the URL or at least is a parent URL. If there are more than + * one possible parent URL candidates, the bookmark which covers + * the bigger range of the URL is returned. + * + * Example: the url is '/home/peter/Documents/Music. Available + * bookmarks are: + * - /home/peter + * - /home/peter/Documents + * + * The base URL will be '/home/peter/Documents'. + */ + static KBookmark baseBookmark(const KUrl& url); + signals: /** * Is send when a bookmark has been activated by the user. @@ -85,15 +101,18 @@ protected: private slots: /** - * Updates the selected index and the icon if a bookmark - * has been activated by the user. + * Updates the selected index and the icon to the bookmark + * which is indicated by the triggered action \a action. */ - void slotBookmarkActivated(int index); + void activateBookmark(QAction* action); + +private: + static int baseBookmarkIndex(const KUrl& url); private: int m_selectedIndex; UrlNavigator* m_urlNavigator; - Q3PopupMenu* m_bookmarksMenu; + KMenu* m_bookmarksMenu; };