• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

marble

  • sources
  • kde-4.12
  • kdeedu
  • marble
  • src
  • lib
  • marble
BookmarkManager.h
Go to the documentation of this file.
1 //
2 // This file is part of the Marble Virtual Globe.
3 //
4 // This program is free software licensed under the GNU LGPL. You can
5 // find a copy of this license in LICENSE.txt in the top directory of
6 // the source code.
7 //
8 // Copyright 2010 Gaurav Gupta <1989.gaurav@googlemail.com>
9 // Copyright 2012 Thibaut Gridel <tgridel@free.fr>
10 //
11 
12 #ifndef MARBLE_BOOKMARKMANAGER_H
13 #define MARBLE_BOOKMARKMANAGER_H
14 
15 #include <QObject>
16 #include <QString>
17 #include <QVector>
18 #include "MarbleGlobal.h"
19 
20 namespace Marble
21 {
22 
23  class BookmarkManagerPrivate;
24  class GeoDataContainer;
25  class GeoDataDocument;
26  class GeoDataPlacemark;
27  class GeoDataFolder;
28  class GeoDataTreeModel;
35 class MARBLE_EXPORT BookmarkManager : public QObject
36 {
37  Q_OBJECT
38 
39  public:
40 
41  explicit BookmarkManager( GeoDataTreeModel *treeModel, QObject *parent = 0 );
42 
43  ~BookmarkManager();
44 
50  bool loadFile( const QString &relativeFilePath );
51 
55  QString bookmarkFile() const;
56 
62  void addBookmark( GeoDataContainer *folder, const GeoDataPlacemark &bookmark ) ;
63 
64  void updateBookmark( GeoDataPlacemark *bookmark );
65 
66  void removeBookmark( GeoDataPlacemark *bookmark );
67 
68  GeoDataDocument * document() const;
69 
70  bool showBookmarks() const;
71 
75  QVector<GeoDataFolder*> folders() const;
76 
81  void addNewBookmarkFolder( GeoDataContainer *folder, const QString &name );
82 
83  void renameBookmarkFolder( GeoDataFolder *folder, const QString &name );
84 
85  void removeBookmarkFolder( GeoDataFolder *folder );
86 
90  void removeAllBookmarks();
91 
92 public Q_SLOTS:
93  void setShowBookmarks( bool visible );
94 
95 Q_SIGNALS:
97  void bookmarksChanged();
98 
99  private:
100  friend class BookmarkManagerDialog;
101 
105  bool updateBookmarkFile();
106 
107  static GeoDataDocument* openFile( const QString& fileName );
108 
109  BookmarkManagerPrivate* const d;
110 
111 };
112 
113 }
114 
115 
116 #endif
Marble::GeoDataDocument
A container for Features, Styles and in the future Schemas.
Definition: GeoDataDocument.h:64
Marble::GeoDataTreeModel
The representation of GeoData in a model This class represents all available data given by kml-data f...
Definition: GeoDataTreeModel.h:32
Marble::GeoDataContainer
A base class that can hold GeoDataFeatures.
Definition: GeoDataContainer.h:47
QObject
Marble::BookmarkManager
This class is responsible for loading the book mark objects from the files and various book mark oper...
Definition: BookmarkManager.h:35
MARBLE_EXPORT
#define MARBLE_EXPORT
Definition: marble_export.h:20
MarbleGlobal.h
Marble::GeoDataFolder
Definition: GeoDataFolder.h:50
Marble::BookmarkManagerDialog
Definition: BookmarkManagerDialog.h:26
Marble::BookmarkManagerPrivate
Definition: BookmarkManager_p.h:23
Marble::GeoDataPlacemark
a class representing a point of interest on the map
Definition: GeoDataPlacemark.h:54
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:38:49 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

marble

Skip menu "marble"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • kstars
  • libkdeedu
  •   keduvocdocument
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal