ginebra2/ScrollableViewBase.h
changeset 16 3c88a81ff781
parent 3 0954f5dd2cd0
equal deleted inserted replaced
14:6aeb7a756187 16:3c88a81ff781
    29 namespace GVA {
    29 namespace GVA {
    30 
    30 
    31 class KineticScroller;
    31 class KineticScroller;
    32 
    32 
    33 class ScrollableViewBase : public QGraphicsWidget, public KineticScrollable {
    33 class ScrollableViewBase : public QGraphicsWidget, public KineticScrollable {
       
    34     Q_OBJECT
    34 public:
    35 public:
    35     ScrollableViewBase(QGraphicsItem* parent = 0, Qt::WindowFlags wFlags = 0);
    36     ScrollableViewBase(QGraphicsItem* parent = 0, Qt::WindowFlags wFlags = 0);
    36     ~ScrollableViewBase();
    37     ~ScrollableViewBase();
    37 
    38 
    38     void setWidget(QGraphicsWidget*);
    39     void setWidget(QGraphicsWidget*);
       
    40 
       
    41 Q_SIGNALS:
       
    42     void viewScrolled(QPoint& scrollPos, QPoint& delta);
    39 
    43 
    40 protected:
    44 protected:
    41 
    45 
    42     //KineticScrollable pure virtuals
    46     //KineticScrollable pure virtuals
    43     QSize viewportSize() const;
    47     QSize viewportSize() const;
    44     QPoint maximumScrollPosition() const ;
    48     QPoint maximumScrollPosition() const ;
    45     QPoint scrollPosition() const;
    49     QPoint scrollPosition() const;
    46     void setScrollPosition(const QPoint& pos, const QPoint& overshootDelta);
    50     void setScrollPosition(const QPoint& pos, const QPoint& overshootDelta = QPoint(0,0));
    47     void stateChanged(KineticScrollable::State oldState, KineticScrollable::State newState);
    51     void stateChanged(KineticScrollable::State oldState, KineticScrollable::State newState);
    48 
    52 
    49     QGraphicsWidget* scrollWidget() const { return m_scrollWidget; }
    53     QGraphicsWidget* scrollWidget() const { return m_scrollWidget; }
    50     virtual void setScrollWidgetGeometry(const QRectF& r);
    54 //    virtual void setScrollWidgetGeometry(const QRectF& r);
    51     QRectF adjustScrollWidgetRect(const QRectF&);
    55 //    QRectF adjustScrollWidgetRect(const QRectF&);
    52 
    56 
    53     //Helpers for adjusting scroll pos
    57     //Helpers for adjusting scroll pos
    54     void setScrollWidgetPos(const QPointF& pos);
    58     virtual void setScrollWidgetPos(const QPointF& pos);
    55     QPointF scrollWidgetPos() const;
    59     QPointF scrollWidgetPos() const;
    56 
    60 
    57 protected:
    61 protected:
    58     KineticScroller* m_kineticScroller;
    62     KineticScroller* m_kineticScroller;
    59 
    63