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
|