00001 #ifndef __QPE_OUTPUTDEV_H__
00002 #define __QPE_OUTPUTDEV_H__
00003
00004 #include "QOutputDev.h"
00005
00006 class QLabel;
00007 class QBusyBar;
00008
00009 class QPEOutputDev : public QOutputDev {
00010 Q_OBJECT
00011
00012 public:
00013 QPEOutputDev ( QWidget *parent = 0, const char *name = 0 );
00014
00015 void setPageCount ( int actp, int maxp );
00016
00017 virtual void setBusy ( bool b = true );
00018 virtual bool isBusy ( ) const;
00019
00020 QRect selection ( ) const;
00021 void setSelection ( const QRect &r, bool scrollto = false );
00022
00023 virtual void startPage ( int pn, GfxState *gs );
00024
00025 signals:
00026 void selectionChanged ( const QRect &sel );
00027
00028 protected:
00029 virtual void setHBarGeometry ( QScrollBar &hbar, int x, int y, int w, int h );
00030
00031 virtual void keyPressEvent ( QKeyEvent *e );
00032 virtual void viewportMousePressEvent ( QMouseEvent *e );
00033 virtual void viewportMouseMoveEvent ( QMouseEvent *e );
00034 virtual void viewportMouseReleaseEvent ( QMouseEvent *e );
00035
00036 virtual void drawContents ( QPainter *p, int, int, int, int );
00037
00038 private:
00039 QLabel *m_counter;
00040 QBusyBar *m_busybar;
00041 bool m_isbusy;
00042
00043 QRect m_selection;
00044 QPoint m_selectionstart;
00045 QPoint m_selectioncursor;
00046 bool m_selectiondrag;
00047 };
00048
00049 #endif