KBookmarks 5.109.0
Classes | Public Types | Public Member Functions | List of all members
KBookmarkOwnerabstract

The KBookmarkMenu and KBookmarkBar classes gives the user the ability to either edit bookmarks or add their own. More...

#include <KBookmarkOwner>

Classes

class  FutureBookmark
 Represents the data for a bookmark that will be added. More...
 

Public Types

enum  BookmarkOption { ShowAddBookmark , ShowEditBookmark }
 

Public Member Functions

virtual KBookmarkDialogbookmarkDialog (KBookmarkManager *mgr, QWidget *parent)
 
virtual QList< FutureBookmarkcurrentBookmarkList () const
 Returns a list of bookmark data for the open tabs.
 
virtual QString currentIcon () const
 This function is called whenever the user wants to add the current page to the bookmarks list.
 
virtual QString currentTitle () const
 This function is called whenever the user wants to add the current page to the bookmarks list.
 
virtual QUrl currentUrl () const
 This function is called whenever the user wants to add the current page to the bookmarks list.
 
virtual bool enableOption (BookmarkOption option) const
 Returns true if action should be shown in the menu The default is to show both a add and editBookmark Entry //TODO ContextMenuAction? to disable the contextMenu? Delete and Properties to disable those in the context menu?
 
virtual void openBookmark (const KBookmark &bm, Qt::MouseButtons mb, Qt::KeyboardModifiers km)=0
 Called if a bookmark is selected.
 
virtual void openFolderinTabs (const KBookmarkGroup &bm)
 Called if the user wants to open every bookmark in this folder in a new tab.
 
virtual void openInNewTab (const KBookmark &bm)
 Called when a bookmark should be opened in a new tab.
 
virtual void openInNewWindow (const KBookmark &bm)
 Called when a bookmark should be opened in a new window.
 
virtual bool supportsTabs () const
 This function returns whether the owner supports tabs.
 

Detailed Description

The KBookmarkMenu and KBookmarkBar classes gives the user the ability to either edit bookmarks or add their own.

In the first case, the app may want to open the bookmark in a special way. In the second case, the app must supply the name and the URL for the bookmark.

This class gives the app this callback-like ability.

If your app does not give the user the ability to add bookmarks and you don't mind using the default bookmark editor to edit your bookmarks, then you don't need to overload this class at all. Rather, just use something like:

bookmarks = new KBookmarkMenu(manager, nullptr, menu, actionCollection);
This class provides a bookmark menu.
Definition kbookmarkmenu.h:51

If you wish to use your own editor or allow the user to add bookmarks, you must overload this class.

Member Function Documentation

◆ currentBookmarkList()

virtual QList< FutureBookmark > KBookmarkOwner::currentBookmarkList ( ) const
inlinevirtual

Returns a list of bookmark data for the open tabs.

The default returns an empty list.

◆ currentIcon()

virtual QString KBookmarkOwner::currentIcon ( ) const
inlinevirtual

This function is called whenever the user wants to add the current page to the bookmarks list.

The icon will become the icon of the bookmark. You must overload this function if you wish to give your users the ability to add bookmarks. The default returns an empty string.

A very common implementation for this method is return KIO::iconNameForUrl(currentUrl());

Returns
the icon name of the current page.
Since
5.0

◆ currentTitle()

virtual QString KBookmarkOwner::currentTitle ( ) const
inlinevirtual

This function is called whenever the user wants to add the current page to the bookmarks list.

The title will become the "name" of the bookmark. You must overload this function if you wish to give your users the ability to add bookmarks. The default returns an empty string.

Returns
the title of the current page.

◆ currentUrl()

virtual QUrl KBookmarkOwner::currentUrl ( ) const
inlinevirtual

This function is called whenever the user wants to add the current page to the bookmarks list.

The URL will become the URL of the bookmark. You must overload this function if you wish to give your users the ability to add bookmarks. The default returns an empty string.

Returns
the URL of the current page. Since 5.0 this method returns a QUrl. While porting it, remember to implement currentIcon too.

◆ enableOption()

virtual bool KBookmarkOwner::enableOption ( BookmarkOption  option) const
virtual

Returns true if action should be shown in the menu The default is to show both a add and editBookmark Entry //TODO ContextMenuAction? to disable the contextMenu? Delete and Properties to disable those in the context menu?

◆ openBookmark()

virtual void KBookmarkOwner::openBookmark ( const KBookmark bm,
Qt::MouseButtons  mb,
Qt::KeyboardModifiers  km 
)
pure virtual

Called if a bookmark is selected.

You need to override this.

◆ openFolderinTabs()

virtual void KBookmarkOwner::openFolderinTabs ( const KBookmarkGroup bm)
virtual

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

◆ openInNewTab()

virtual void KBookmarkOwner::openInNewTab ( const KBookmark bm)
virtual

Called when a bookmark should be opened in a new tab.

The default implementation calls openBookmark.

Since
5.0

◆ openInNewWindow()

virtual void KBookmarkOwner::openInNewWindow ( const KBookmark bm)
virtual

Called when a bookmark should be opened in a new window.

The default implementation calls openBookmark.

Since
5.0

◆ supportsTabs()

virtual bool KBookmarkOwner::supportsTabs ( ) const
inlinevirtual

This function returns whether the owner supports tabs.

The default returns false.