summaryrefslogtreecommitdiff
path: root/src/bookmarks.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/bookmarks.cpp')
-rw-r--r--src/bookmarks.cpp48
1 files changed, 42 insertions, 6 deletions
diff --git a/src/bookmarks.cpp b/src/bookmarks.cpp
index 3cb65e38..584b2689 100644
--- a/src/bookmarks.cpp
+++ b/src/bookmarks.cpp
@@ -26,6 +26,7 @@
// KDE Includes
#include <KMimeType>
+#include <KMenu>
OwnBookMarks::OwnBookMarks(KMainWindow *parent)
: QObject(parent)
@@ -55,17 +56,52 @@ QString OwnBookMarks::currentTitle() const
}
-//---------------------------------------------------------------------------------------------------------------------
+// ------------------------------------------------------------------------------------------------------
-BookmarksMenu::BookmarksMenu(KMainWindow *parent)
- : KMenu(parent)
- , m_owner( new OwnBookMarks( parent ) )
+BookmarksProvider::BookmarksProvider(KMainWindow* parent)
+ : m_parent(parent)
+ , m_owner(new OwnBookMarks(parent))
{
KUrl bookfile = KUrl( "~/.kde/share/apps/konqueror/bookmarks.xml" ); // share konqueror bookmarks
m_manager = KBookmarkManager::managerForExternalFile( bookfile.path() );
-
m_ac = new KActionCollection( this );
+}
+
- m_menu = new KBookmarkMenu( m_manager , m_owner, this, m_ac );
+void BookmarksProvider::provideBmToolbar(KToolBar* toolbar)
+{
+ toolbar->setToolButtonStyle( Qt::ToolButtonTextBesideIcon );
+ KBookmarkGroup toolbarGroup = m_manager->toolbar();
+ KBookmark bm = toolbarGroup.first();
+ while(!bm.isNull())
+ {
+ if(bm.isGroup())
+ {
+ // do nothing!
+ }
+ else
+ {
+ if(bm.isSeparator())
+ {
+ toolbar->addSeparator();
+ }
+ else
+ {
+ KAction *a = new KBookmarkAction(bm, m_owner, m_ac);
+ toolbar->addAction(a);
+ }
+ }
+ // go ahead!
+ bm = toolbarGroup.next(bm);
+ }
}
+
+
+KMenu *BookmarksProvider::bookmarksMenu()
+{
+ KMenu *bmMenu = new KMenu(m_parent);
+ new KBookmarkMenu( m_manager, m_owner, bmMenu, m_ac );
+ return bmMenu;
+}
+