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 |