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

marble

  • sources
  • kde-4.14
  • kdeedu
  • marble
  • src
  • lib
  • marble
  • cloudsync
CloudSyncManager.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 2013 Utku Aydın <utkuaydin34@gmail.com>
9 //
10 
11 #ifndef CLOUDSYNCMANAGER_H
12 #define CLOUDSYNCMANAGER_H
13 
14 #include <QObject>
15 #include <QUrl>
16 
17 #include "marble_export.h"
18 
19 namespace Marble {
20 
21 class BookmarkSyncManager;
22 class RouteSyncManager;
23 
24 class MARBLE_EXPORT CloudSyncManager : public QObject
25 {
26  Q_OBJECT
27 
28  Q_PROPERTY( bool workOffline READ workOffline WRITE setWorkOffline NOTIFY workOfflineChanged )
29  Q_PROPERTY( bool syncEnabled READ isSyncEnabled WRITE setSyncEnabled NOTIFY syncEnabledChanged )
30 
31  Q_PROPERTY( QString owncloudUsername READ owncloudUsername WRITE setOwncloudUsername NOTIFY owncloudUsernameChanged )
32  Q_PROPERTY( QString owncloudPassword READ owncloudPassword WRITE setOwncloudPassword NOTIFY owncloudPasswordChanged )
33  Q_PROPERTY( QString owncloudServer READ owncloudServer WRITE setOwncloudServer NOTIFY owncloudServerChanged )
34  Q_PROPERTY( QUrl apiUrl READ apiUrl NOTIFY apiUrlChanged )
35 
36  Q_PROPERTY( BookmarkSyncManager* bookmarkSyncManager READ bookmarkSyncManager NOTIFY bookmarkSyncManagerChanged )
37  Q_PROPERTY( RouteSyncManager* routeSyncManager READ routeSyncManager NOTIFY routeSyncManagerChanged )
38 
39 public:
40  explicit CloudSyncManager( QObject *parent = 0 );
41  ~CloudSyncManager();
42 
46  enum Status { Unknown, Success, Error };
47 
52  bool workOffline() const;
53 
58  void setWorkOffline( bool offline );
59 
64  bool isSyncEnabled() const;
65 
70  QString owncloudServer() const;
71 
76  QString owncloudUsername() const;
77 
82  QString owncloudPassword() const;
83 
88  void setSyncEnabled( bool enabled );
89 
99  void setOwncloudCredentials( const QString &server, const QString &user, const QString &password );
100 
105  void setOwncloudServer( const QString &owncloudServer );
106 
111  void setOwncloudUsername( const QString &owncloudUsername );
112 
117  void setOwncloudPassword( const QString &owncloudPassword );
118 
123  void setStatus( const QString &status, CloudSyncManager::Status status_type );
124 
128  CloudSyncManager::Status status() const;
129 
133  QString statusDescription() const;
134 
139  QString apiPath() const;
140 
145  QUrl apiUrl() const;
146 
150  RouteSyncManager* routeSyncManager();
151 
155  BookmarkSyncManager* bookmarkSyncManager();
156 
157 Q_SIGNALS:
158  void workOfflineChanged(bool workOffline);
159  void syncEnabledChanged(bool enabled);
160 
161  void owncloudUsernameChanged(const QString &username);
162  void owncloudPasswordChanged(const QString &password);
163  void owncloudServerChanged(const QString &server);
164  void statusChanged(const QString &status);
165 
166  void apiUrlChanged(const QUrl &url);
167  void routeSyncManagerChanged();
168  void bookmarkSyncManagerChanged();
169 
170 private:
171  class Private;
172  Private *d;
173 };
174 
175 }
176 
177 #endif // CLOUDSYNCMANAGER_H
Marble::RouteSyncManager
Definition: RouteSyncManager.h:23
QObject
MARBLE_EXPORT
#define MARBLE_EXPORT
Definition: marble_export.h:20
Marble::CloudSyncManager::Unknown
Definition: CloudSyncManager.h:46
QString
QUrl
marble_export.h
Marble::CloudSyncManager::Status
Status
Status enumeration.
Definition: CloudSyncManager.h:46
Marble::CloudSyncManager
Definition: CloudSyncManager.h:24
Marble::BookmarkSyncManager
Definition: BookmarkSyncManager.h:26
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:13:38 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
  • 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