From 3f2cfd3dab93f212504de7bdcdc6625659170ec1 Mon Sep 17 00:00:00 2001 From: Andrea Diamantini Date: Sat, 5 Jun 2010 00:51:41 +0200 Subject: This commit implements some speed optimizations on startup as loading the dockwidgets show on first show. It also cleans up bookmarks menu loading. --- src/bookmarks/bookmarkspanel.cpp | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'src/bookmarks/bookmarkspanel.cpp') diff --git a/src/bookmarks/bookmarkspanel.cpp b/src/bookmarks/bookmarkspanel.cpp index 502af574..0dbb89c4 100644 --- a/src/bookmarks/bookmarkspanel.cpp +++ b/src/bookmarks/bookmarkspanel.cpp @@ -54,8 +54,13 @@ BookmarksPanel::BookmarksPanel(const QString &title, QWidget *parent, Qt::Window : QDockWidget(title, parent, flags) , m_treeView(new PanelTreeView(this)) , m_loadingState(false) + , _loaded(false) { - setup(); + setObjectName("bookmarksPanel"); + setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea); + + connect(this, SIGNAL(visibilityChanged(bool)), this, SLOT(showing(bool))); + setShown(ReKonfig::showBookmarksPanel()); } @@ -66,10 +71,16 @@ BookmarksPanel::~BookmarksPanel() } +void BookmarksPanel::showing(bool b) +{ + if(b && !_loaded) + setup(); +} + + void BookmarksPanel::setup() { - setObjectName("bookmarksPanel"); - setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea); + kDebug() << "Loading bookmarks panel setup..."; QWidget *ui = new QWidget(this); @@ -116,6 +127,8 @@ void BookmarksPanel::setup() connect(m_treeView, SIGNAL(expanded(const QModelIndex &)), this, SLOT(onExpand(const QModelIndex &))); connect(search, SIGNAL(textChanged(const QString &)), proxy, SLOT(setFilterFixedString(const QString &))); loadFoldedState(); + + _loaded = true; } -- cgit v1.2.1