From e26ba53471ea902d18e59a4a8fc52ccdf4c7b4ea Mon Sep 17 00:00:00 2001 From: Peter Penz Date: Sat, 3 Mar 2007 13:03:15 +0000 Subject: Assure that the root of the tree view always matchs to the bookmark shown in the URL navigator. svn path=/trunk/KDE/kdebase/apps/; revision=638825 --- src/bookmarkselector.h | 29 ++++++++++++++++++++++++----- 1 file changed, 24 insertions(+), 5 deletions(-) (limited to 'src/bookmarkselector.h') diff --git a/src/bookmarkselector.h b/src/bookmarkselector.h index b904a0d57..334f25ba3 100644 --- a/src/bookmarkselector.h +++ b/src/bookmarkselector.h @@ -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. @@ -90,6 +106,9 @@ private slots: */ void activateBookmark(QAction* action); +private: + static int baseBookmarkIndex(const KUrl& url); + private: int m_selectedIndex; UrlNavigator* m_urlNavigator; -- cgit v1.3