aboutsummaryrefslogtreecommitdiff
path: root/notebookview.cc
diff options
context:
space:
mode:
Diffstat (limited to 'notebookview.cc')
-rw-r--r--notebookview.cc30
1 files changed, 27 insertions, 3 deletions
diff --git a/notebookview.cc b/notebookview.cc
index 833f8e8..f8394c0 100644
--- a/notebookview.cc
+++ b/notebookview.cc
@@ -18,6 +18,7 @@
#include <QtCore/QDebug>
#include <QtGui/QResizeEvent>
+#include "stfexporter.h"
#include "notebookview.h"
#define VIEW_MARGIN 2
@@ -69,6 +70,16 @@ QString NotebookView::paperReplay() const
return _replayPath;
}
+void NotebookView::setPenUserTime(quint64 userTime)
+{
+ _penUserTime = userTime;
+}
+
+quint64 NotebookView::penUserTime() const
+{
+ return _penUserTime;
+}
+
QList<int> NotebookView::pageNumbers() const
{
return _pages.keys();
@@ -121,7 +132,7 @@ QRect NotebookView::getCurPageTrim() const
return _nb->getPageTrim(_curPage);
}
-QImage NotebookView::exportPage(int pageNum) const
+QImage NotebookView::exportPageAsImage(int pageNum) const
{
const QRect pageTrim = _nb->getPageTrim(pageNum);
QImage image(pageTrim.width() / 4, pageTrim.height() / 4, QImage::Format_RGB32);
@@ -139,6 +150,18 @@ void NotebookView::renderPage(QPainter *painter, int pageNum, const QRectF &targ
scene.render(painter, target, source, Qt::KeepAspectRatio);
}
+void NotebookView::exportPageAsTXYP(QIODevice *device, int pageNum, bool relativeTime)
+{
+ StfExporter writer(_nb);
+ writer.exportToTXYP(device, pageNum, relativeTime);
+}
+
+void NotebookView::exportPageAsInkML(QIODevice *device, int pageNum)
+{
+ StfExporter writer(_nb);
+ writer.exportToInkML(device, pageNum);
+}
+
void NotebookView::requestPaperReplay(const QString &file, qint64 time)
{
emit paperReplayRequested(file, time);
@@ -224,7 +247,7 @@ bool NotebookView::createPages()
if (pens.isEmpty()) return false;
// Failure to open paperreplay data is not fatal
- bool haveReplay = _replay->open(_replayPath, _nb->guid());
+ bool haveReplay = _replay->open(_replayPath, _nb->guid(), _penUserTime);
QList<int> pagesWithStrokes = _nb->pagesWithStrokes(pens.first());
Q_ASSERT(_pages.isEmpty());
@@ -277,7 +300,8 @@ void NotebookView::calculateScale()
void NotebookView::layoutPages()
{
- const int numRows = (_pages.size() + 1) / _numColumns;
+ const int numRows = _pages.size() / _numColumns
+ + (_pages.size() % _numColumns > 0 ? 1 : 0);
const QSizeF pageSpace( _maxPageSize.width() + PAGE_SEPARATION,
_maxPageSize.height() + PAGE_SEPARATION);