[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [marble] src/lib/marble: Fix bookmark usability issue
From: Benjamin Kaiser <benjaminjkaiser () gmail ! com>
Date: 2013-12-31 15:32:14
Message-ID: E1Vy1Ik-0008Bl-VP () scm ! kde ! org
[Download RAW message or body]
Git commit 4be7c39c6ac100753e977700dc3212031c383292 by Benjamin Kaiser.
Committed on 31/12/2013 at 15:31.
Pushed by benjaminkaiser into branch 'master'.
Fix bookmark usability issue
GCI TASK: #4953286327140352
REVIEW: #114757
M +8 -0 src/lib/marble/BookmarkManager.cpp
M +6 -0 src/lib/marble/BookmarkManager.h
M +1 -0 src/lib/marble/EditBookmarkDialog.cpp
http://commits.kde.org/marble/4be7c39c6ac100753e977700dc3212031c383292
diff --git a/src/lib/marble/BookmarkManager.cpp b/src/lib/marble/BookmarkManager.cpp
index 95b17e0..f3d3284 100644
--- a/src/lib/marble/BookmarkManager.cpp
+++ b/src/lib/marble/BookmarkManager.cpp
@@ -122,6 +122,7 @@ bool BookmarkManager::loadFile( const QString &relativeFilePath )
Q_ASSERT( d->m_bookmarkDocument && "d->m_bookmarkDocument is 0 but must not \
be. Please report a bug at http://bugs.kde.org" ); d->m_treeModel->addDocument( \
d->m_bookmarkDocument ); }
+ ensureDefaultFolder();
emit bookmarksChanged();
return true;
@@ -210,6 +211,13 @@ void BookmarkManager::removeBookmarkFolder( GeoDataFolder \
*folder ) delete folder;
}
+void BookmarkManager::ensureDefaultFolder()
+{
+ if ( d->m_bookmarkDocument->size() == 0 ) {
+ addNewBookmarkFolder( d->m_bookmarkDocument, "Default" );
+ }
+}
+
void BookmarkManager::removeAllBookmarks()
{
d->resetBookmarkDocument();
diff --git a/src/lib/marble/BookmarkManager.h b/src/lib/marble/BookmarkManager.h
index aa5443e..f345560 100644
--- a/src/lib/marble/BookmarkManager.h
+++ b/src/lib/marble/BookmarkManager.h
@@ -85,6 +85,12 @@ class MARBLE_EXPORT BookmarkManager : public QObject
void removeBookmarkFolder( GeoDataFolder *folder );
/**
+ * @brief checks that there is at least one folder
+ */
+
+ void ensureDefaultFolder();
+
+ /**
* @brief remove all folders and bookmarks except default folder
*/
void removeAllBookmarks();
diff --git a/src/lib/marble/EditBookmarkDialog.cpp \
b/src/lib/marble/EditBookmarkDialog.cpp index cdf3b7c..1362c53 100644
--- a/src/lib/marble/EditBookmarkDialog.cpp
+++ b/src/lib/marble/EditBookmarkDialog.cpp
@@ -83,6 +83,7 @@ void EditBookmarkDialogPrivate::initialize()
void EditBookmarkDialogPrivate::initComboBox( const GeoDataContainer* const \
container ) {
+ m_bookmarkManager->ensureDefaultFolder();
foreach( GeoDataFolder *folder, container->folderList() ) {
QVariant folderVariant;
folderVariant.setValue(folder);
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic