class QAction;
class BookView;
class QVBoxLayout;
+class Progress;
+class TranslucentButton;
/**
* A toplevel window that can adopt a BookView and other children.
public:
explicit AdopterWindow(QWidget *parent = 0);
- /** Adopt children "bookView" and "others". */
- void takeChildren(BookView *bookView, const QList<QWidget *> &others);
+ /** Adopt book view and decorations. */
+ void takeBookView(BookView *bookView, Progress *prog,
+ TranslucentButton *prev, TranslucentButton *next);
- /** Release current children (adopted in @see takeChildren). */
- void leaveChildren();
+ /** Release book view and decorations. */
+ void leaveBookView();
- /** Return true if a child is currently adopted. */
- bool hasChild(QWidget *child);
+ /** Return true if the book view is currently adopted. */
+ bool hasBookView();
/**
* Add action that is visible on the tool bar.
/** Show window. */
void show();
- /** If grab is true, volume keys will generate pageUp/Down key events. */
+ /** If grab is true, volume keys will navigate the book view. */
void grabVolumeKeys(bool grab);
public slots:
void onSettingsChanged(const QString &key);
protected:
+ /** Return true, if we are in portrait mode. */
+ bool portrait();
+
+ /** Handle key press events. */
void keyPressEvent(QKeyEvent *event);
-#ifdef Q_WS_MAEMO_5
+
+ /**
+ * Handle show events.
+ * On Symbian, volume keys can only be grabbed, if the window is shown.
+ */
void showEvent(QShowEvent *event);
+
+ /** Handle resize events. */
+ void resizeEvent(QResizeEvent *event);
+
+#ifdef Q_WS_MAEMO_5
+ /** Actually grab the volume keys. */
void doGrabVolumeKeys(bool grab);
#endif
- BookView *bookView;
+
+protected slots:
+ void placeDecorations();
+
+private:
+ BookView *bookView; /**< Book view widget. */
bool grabbingVolumeKeys;/**< True, if volume keys should be grabbed. */
- QToolBar *toolBar;
+ QToolBar *toolBar; /**< Tool bar. */
+ Progress *progress; /**< Reading progress indicator. */
+ TranslucentButton *previousButton; /**< Previous page indicator. */
+ TranslucentButton *nextButton; /**< Next page indicator. */
};
#endif // ADOPTERWINDOW_H