forked from baumgarr/nixnote2
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathfavoritestable.h
67 lines (48 loc) · 2.38 KB
/
favoritestable.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
/*********************************************************************************
NixNote - An open-source client for the Evernote service.
Copyright (C) 2014 Randy Baumgarte
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
***********************************************************************************/
#ifndef FAVORITESTABLE_H
#define FAVORITESTABLE_H
#include <QObject>
#include "sql/favoritesrecord.h"
#include "sql/databaseconnection.h"
#include <QSqlDatabase>
#include <QPair>
#define FAVORITES_TYPE 200
#define FAVORITES_TARGET 201
#define FAVORITES_ORDER 202
#define FAVORITES_PARENT 203
// Read/Write a favorite records to the database
class FavoritesTable : public QObject
{
Q_OBJECT
private:
DatabaseConnection *db;
public:
explicit FavoritesTable(DatabaseConnection *db, QObject *parent = 0); // Generic constructor
// DB Read Functions
void getAll(QList<qint32> &lids); // Get the lid of all favorites
bool get(FavoritesRecord &record, qint32 lid); // Get a particular favorite record
bool childrenFound(qint32 lid); // Does this favorite have any children?
// DB Write Functions
void expunge(qint32 lid); // Erase a favorite record
void setOrder(QList< QPair< qint32, qint32 > > order); // Set the order of display for a favorite
qint32 add(const FavoritesRecord &record); // Add a new favorite
qint32 insert(const FavoritesRecord &record); // Insert a new favorite
qint32 getLidByTarget(const QVariant &target); // Get a favorite lid by an owner
signals:
public slots:
};
#endif // FAVORITESTABLE_H