#include "book.h"
class QModelIndex;
+class Progress;
+class QAbstractKineticScroller;
/** Visual representation of a book. */
class BookView: public QWebView
void restoreLastBookmark();
signals:
- void chapterLoadStart(int index);
- void chapterLoadEnd(int index);
+ void partLoadStart(int index);
+ void partLoadEnd(int index);
/** Signal button press when the real event has been suppressed. */
void suppressedMouseButtonPress();
+ /** Signal progress in reading the book. */
+ void progress(qreal p);
+
public slots:
void goPrevious();
void goNext();
void onContentsSizeChanged(const QSize &size);
protected:
- virtual void paintEvent(QPaintEvent *e);
- virtual void mousePressEvent(QMouseEvent *e);
+ void paintEvent(QPaintEvent *e);
+ void mousePressEvent(QMouseEvent *e);
+ void wheelEvent(QWheelEvent *);
bool eventFilter(QObject *o, QEvent *e);
- virtual void leaveEvent(QEvent *);
- virtual void enterEvent(QEvent *);
+ void leaveEvent(QEvent *e);
+ void enterEvent(QEvent *e);
+ void timerEvent(QTimerEvent *e);
+ void keyPressEvent(QKeyEvent *e);
private:
/** Save navigation icons from resource to the file system. */
/** Remove extracted icons. */
void removeIcons();
- /** Load given chapter. */
+ /** Load given part. */
void loadContent(int index);
/** Decorate web page frame with navigation icons. */
/** Get temporary directory for extracting book contents. */
QString tmpPath();
- /** Go to a given (relative) position in current chapter. */
+ /** Go to a given (relative) position in current part. */
void goToPosition(qreal position);
- int contentIndex; /**< Current chapter in book. */
+ /** Show progress. */
+ void showProgress();
+
+ /** Go to previous page. */
+ void goPreviousPage();
+
+ /** Go to next page. */
+ void goNextPage();
+
+ int contentIndex; /**< Current part in book. */
Book *mBook; /**< Book to show. */
bool restorePositionAfterLoad;
/**< If true, restoring position after load is needed. */
bool mousePressed;
int contentsHeight; /**< Last know height of the frame. */
bool decorated; /**< True after adding the arrows to the frame contents. */
+
+ int scrollerMonitor;
+#ifdef Q_WS_MAEMO_5
+ QAbstractKineticScroller *scroller;
+#endif
};
#endif // BOOKVIEW_H