aboutsummaryrefslogtreecommitdiff
path: root/notebookmodel.h
diff options
context:
space:
mode:
Diffstat (limited to 'notebookmodel.h')
-rw-r--r--notebookmodel.h24
1 files changed, 23 insertions, 1 deletions
diff --git a/notebookmodel.h b/notebookmodel.h
index 1d69e14..3fda090 100644
--- a/notebookmodel.h
+++ b/notebookmodel.h
@@ -22,6 +22,15 @@
#include <QtCore/QAbstractItemModel>
#include <QtCore/QDir>
#include <QtCore/QFileSystemWatcher>
+#include <QtGui/QIcon>
+
+#define PEN_EXTENSION "pen"
+#define ARCHIVE_EXTENSION "archive"
+#define AFD_NOTEBOOK_EXTENSION "afd"
+
+#define PEN_USER_TIME_FILE ".usertime"
+#define PEN_LAST_SYNC_FILE ".lastsync"
+#define PEN_SYNC_LOCK_FILE ".sync.lck"
class NotebookModel : public QAbstractItemModel
{
@@ -30,10 +39,17 @@ class NotebookModel : public QAbstractItemModel
public:
explicit NotebookModel(QObject *parent = 0);
+ typedef quint64 PenTime;
+
+ enum Roles {
+ FileNameRole = Qt::UserRole
+ };
+
static QString defaultDataDirectory();
static QString userDataDirectory();
QString penDirectory(const QString &name) const;
+ PenTime penUserTime(const QString &name) const;
QString notebookDirectory(const QString &penName, const QString &nbName) const;
QString notebookDirectory(const QModelIndex &index) const;
QString paperReplayDirectory(const QString &name) const;
@@ -57,7 +73,11 @@ private:
int indexOfPen(const QString &name);
QDir penDir(const QString &pen) const;
QDir notebookDir(const QString &pen, const QString &notebook) const;
- QIcon getNotebookIcon(const QString &pen, const QString &notebook) const;
+ QString penDisplayName(const QString &pen) const;
+ QString notebookDisplayName(const QString &pen, const QString &notebook) const;
+ QIcon penIcon(const QString &pen) const;
+ QIcon notebookIcon(const QString &pen, const QString &notebook) const;
+ bool isPenArchive(const QString &pen) const;
bool isPenLocked(const QString &pen) const;
bool isNotebookLocked(const QString &pen, const QString &notebook) const;
bool isPaperReplayLocked(const QString &pen) const;
@@ -72,6 +92,8 @@ private:
QFileSystemWatcher _watcher;
QStringList _pens;
QHash<QString, QStringList> _notebooks;
+
+ mutable QHash<QString, QIcon> _iconCache;
};
#endif // NOTEBOOKMODEL_H