1
0
mirror of https://github.com/laurent22/joplin.git synced 2025-02-13 19:42:36 +02:00
2017-01-12 17:59:19 +01:00

60 lines
1.2 KiB
C++
Executable File

#ifndef APPLICATION_H
#define APPLICATION_H
#include <stable.h>
#include "database.h"
#include "models/foldermodel.h"
#include "models/notemodel.h"
#include "models/qmlnote.h"
#include "webapi.h"
#include "synchronizer.h"
#include "window.h"
namespace jop {
class Application : public QGuiApplication {
Q_OBJECT
public:
Application(int &argc, char **argv);
void login(const QString& email, const QString& password);
private:
Window view_;
Database& db_;
FolderModel folderModel_;
NoteModel noteModel_;
QString selectedFolderId() const;
QString selectedNoteId() const;
QmlNote selectedQmlNote_;
WebApi api_;
Synchronizer synchronizer_;
QTimer synchronizerTimer_;
void afterSessionInitialization();
public slots:
void view_currentFolderChanged();
void view_currentNoteChanged();
void view_addNoteButtonClicked();
void view_addFolderButtonClicked();
void view_syncButtonClicked();
void api_requestDone(const QJsonObject& response, const QString& tag);
void dispatcher_loginClicked(const QString &domain, const QString &email, const QString &password);
void dispatcher_logoutClicked();
void synchronizerTimer_timeout();
};
}
#endif // APPLICATION_H