1 
2 /*
3  * Copyright 2006 The Android Open Source Project
4  *
5  * Use of this source code is governed by a BSD-style license that can be
6  * found in the LICENSE file.
7  */
8 
9 
10 #ifndef SkScrollBarView_DEFINED
11 #define SkScrollBarView_DEFINED
12 
13 #include "SkView.h"
14 #include "SkWidgetViews.h"
15 #include "SkAnimator.h"
16 
17 class SkScrollBarView : public SkWidgetView {
18 public:
19     SkScrollBarView();
20 
getStart()21     unsigned getStart() const { return fStartPoint; }
getShown()22     unsigned getShown() const { return fShownLength; }
getTotal()23     unsigned getTotal() const { return fTotalLength; }
24 
25     void setStart(unsigned start);
26     void setShown(unsigned shown);
27     void setTotal(unsigned total);
28 
29 protected:
30     //overrides
31     virtual void onInflate(const SkDOM& dom, const SkDOM::Node* node);
32     virtual void onSizeChange();
33     virtual void onDraw(SkCanvas* canvas);
34     virtual bool onEvent(const SkEvent& evt);
35 
36 private:
37     SkAnimator  fAnim;
38     unsigned    fTotalLength, fStartPoint, fShownLength;
39 
40     void adjust();
41 
42     typedef SkWidgetView INHERITED;
43 };
44 #endif
45