KDE 4.5 PyKDE API Reference
  • KDE's Python API
  • Overview
  • PyKDE Home
  • Sitemap
  • Contact Us
 

KBookmarkManager Class Reference

from PyKDE4.kio import *

Inherits: QObject

Detailed Description

This class implements the reading/writing of bookmarks in XML. The bookmarks file is read and written using the XBEL standard (http://pyxml.sourceforge.net/topics/xbel/)

A sample file looks like this :

 <xbel>
   <bookmark href="http://techbase.kde.org"><title>Developer Web Site</title></bookmark>
   <folder folded="no">
     <title>Title of this folder</title>
     <bookmark icon="kde" href="http://www.kde.org"><title>KDE Web Site</title></bookmark>
     <folder toolbar="yes">
       <title>My own bookmarks</title>
       <bookmark href="http://www.koffice.org"><title>KOffice Web Site</title></bookmark>
       <separator/>
       <bookmark href="http://www.kdevelop.org"><title>KDevelop Web Site</title></bookmark>
     </folder>
   </folder>
 </xbel>


Signals

 bookmarkCompleteChange (QString caller)
 bookmarkConfigChanged ()
 bookmarksChanged (QString groupAddress)
 changed (QString groupAddress, QString caller)
 configChanged ()

Methods

 __init__ (self, QString bookmarksFile, QString dbusObjectName)
 __init__ (self, QString bookmarksFile)
 __init__ (self)
 emitChanged (self)
 emitChanged (self, KBookmarkGroup group)
 emitConfigChanged (self)
KBookmark findByAddress (self, QString address)
QDomDocument internalDocument (self)
 notifyCompleteChange (self, QString caller)
 notifyConfigChanged (self)
QString path (self)
KBookmarkGroup root (self)
bool save (self, bool toolbarCache=1)
bool saveAs (self, QString filename, bool toolbarCache=1)
 setEditorOptions (self, QString caption, bool browser)
 setUpdate (self, bool update)
 slotEditBookmarks (self)
 slotEditBookmarksAtAddress (self, QString address)
KBookmarkGroup toolbar (self)
bool updateAccessMetadata (self, QString url)
 updateFavicon (self, QString url, QString faviconurl)

Static Methods

KBookmarkManager createTempManager ()
KBookmarkManager managerForExternalFile (QString bookmarksFile)
KBookmarkManager managerForFile (QString bookmarksFile, QString dbusObjectName)
KBookmarkManager userBookmarksManager ()

Signal Documentation

bookmarkCompleteChange ( QString  caller
)

Signal send over DBUS

Signal syntax:
QObject.connect(source, SIGNAL("bookmarkCompleteChange(QString)"), target_slot)
bookmarkConfigChanged (   )

Signal send over DBUS

Signal syntax:
QObject.connect(source, SIGNAL("bookmarkConfigChanged()"), target_slot)
bookmarksChanged ( QString  groupAddress
)

Signal send over DBUS

Signal syntax:
QObject.connect(source, SIGNAL("bookmarksChanged(QString)"), target_slot)
changed ( QString  groupAddress,
QString  caller
)

Signals that the group (or any of its children) with the address groupAddress (e.g. "/4/5") has been modified by the caller caller. connect to this

Signal syntax:
QObject.connect(source, SIGNAL("changed(const QString&, const QString&)"), target_slot)
configChanged (   )

Signals that the config changed

Signal syntax:
QObject.connect(source, SIGNAL("configChanged()"), target_slot)

Method Documentation

__init__ (  self,
QString  bookmarksFile,
QString  dbusObjectName
)

Creates a bookmark manager with a path to the bookmarks. By default, it will use the KDE standard dirs to find and create the correct location. If you are using your own app-specific bookmarks directory, you must instantiate this class with your own path <em>before</em> KBookmarkManager.managerForFile() is ever called.

Parameters:
bookmarksFile  full path to the bookmarks file, Use ~/.kde/share/apps/konqueror/bookmarks.xml for the konqueror bookmarks
dbusObjectName  a unique name that represents this bookmark collection, usually your kinstance (e.g. kapplication) name. This is "konqueror" for the konqueror bookmarks, "kfile" for KFileDialog bookmarks, etc. The final DBus object path is /KBookmarkManager/dbusObjectName An empty dbusObjectName disables the registration to dbus (used for temporary managers)

__init__ (  self,
QString  bookmarksFile
)

Creates a bookmark manager for an external file (Using KDirWatch for change monitoring)

Since:
4.1

__init__ (   self )

Creates a temp bookmark manager

emitChanged (   self )

Saves the bookmark file and notifies everyone.

Parameters:
group  the parent of all changed bookmarks

emitChanged (  self,
KBookmarkGroup  group
)

Saves the bookmark file and notifies everyone.

Parameters:
group  the parent of all changed bookmarks

emitConfigChanged (   self )
KBookmark findByAddress (  self,
QString  address
)

Returns:
the bookmark designated by address

Parameters:
address  the address belonging to the bookmark you're looking for
tolerate  when true tries to find the most tolerable bookmark position

See also:
KBookmark.address

QDomDocument internalDocument (   self )

Internal:

notifyCompleteChange (  self,
QString  caller
)

Reparse the whole bookmarks file and notify about the change Doesn't send signal over DBUS to the other Bookmark Managers You probably want to use emitChanged()

notifyConfigChanged (   self )
QString path (   self )

This will return the path that this manager is using to read the bookmarks.

Internal:
Returns:
the path containing the bookmarks

KBookmarkGroup root (   self )

This will return the root bookmark. It is used to iterate through the bookmarks manually. It is mostly used internally.

Returns:
the root (top-level) bookmark

bool save (  self,
bool  toolbarCache=1
)

Save the bookmarks to an XML file on disk. You should use emitChanged() instead of this function, it saves and notifies everyone that the file has changed. Only use this if you don't want the emitChanged signal.

Parameters:
toolbarCache  iff true save a cache of the toolbar folder, too

Returns:
true if saving was successful

bool saveAs (  self,
QString  filename,
bool  toolbarCache=1
)

Save the bookmarks to the given XML file on disk.

Parameters:
filename  full path to the desired bookmarks file location
toolbarCache  iff true save a cache of the toolbar folder, too

Returns:
true if saving was successful

setEditorOptions (  self,
QString  caption,
bool  browser
)

Set options with which slotEditBookmarks called keditbookmarks this can be used to change the appearance of the keditbookmarks in order to provide a slightly differing outer shell depending on the bookmarks file / app which calls it.

Parameters:
caption  the --caption string, for instance "Konsole"
browser  iff false display no browser specific menu items in keditbookmarks . --nobrowser

setUpdate (  self,
bool  update
)

Set the update flag. Defaults to true.

Parameters:
update  if true then KBookmarkManager will listen to DBUS update requests.

slotEditBookmarks (   self )
slotEditBookmarksAtAddress (  self,
QString  address
)
KBookmarkGroup toolbar (   self )

This returns the root of the toolbar menu. In the XML, this is the group with the attribute toolbar=yes

Returns:
the toolbar group

bool updateAccessMetadata (  self,
QString  url
)

Update access time stamps for a given url.

Parameters:
url  the viewed url

Returns:
true if any metadata was modified (bookmarks file is not saved automatically)

updateFavicon (  self,
QString  url,
QString  faviconurl
)

Static Method Documentation

KBookmarkManager createTempManager (   )

only used for KBookmarkBar

KBookmarkManager managerForExternalFile ( QString  bookmarksFile
)

Returns a KBookmarkManager, which will use KDirWatch for change detection This is important when sharing bookmarks with other Desktops.

Parameters:
bookmarksFile  full path to the bookmarks file

Since:
4.1

KBookmarkManager managerForFile ( QString  bookmarksFile,
QString  dbusObjectName
)

You need to pass a dbusObjectName as the second parameter In kde 3 managerForFile had the parameters (const QString &, bool) We want old calls which pass a bool as a second parameter to fail. Unfortunately C++ can convert a bool to a QString, via QString(char(bool)) This private overloaded method prevents this, as it is a better match, and thus old calls fail at compile time.

KBookmarkManager userBookmarksManager (   )

Returns a pointer to the user's main (konqueror) bookmark collection.

  • Full Index

Modules

  • akonadi
  • dnssd
  • kdecore
  • kdeui
  • khtml
  • kio
  • knewstuff
  • kparts
  • kutils
  • nepomuk
  • phonon
  • plasma
  • polkitqt
  • solid
  • soprano
This documentation is maintained by Simon Edwards.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal