blob: 05042f06fe5de93cf830d7f3a4c87a6f1b177ecc [file] [log] [blame]
epoger@google.comec3ed6a2011-07-28 14:26:00 +00001
reed@android.com8a1c16f2008-12-17 15:59:43 +00002/*
epoger@google.comec3ed6a2011-07-28 14:26:00 +00003 * Copyright 2006 The Android Open Source Project
reed@android.com8a1c16f2008-12-17 15:59:43 +00004 *
epoger@google.comec3ed6a2011-07-28 14:26:00 +00005 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file.
reed@android.com8a1c16f2008-12-17 15:59:43 +00007 */
8
epoger@google.comec3ed6a2011-07-28 14:26:00 +00009
reed@android.com8a1c16f2008-12-17 15:59:43 +000010#ifndef SkScrollBarView_DEFINED
11#define SkScrollBarView_DEFINED
12
13#include "SkView.h"
14#include "SkWidgetViews.h"
15#include "SkAnimator.h"
16
17class SkScrollBarView : public SkWidgetView {
18public:
19 SkScrollBarView();
20
21 unsigned getStart() const { return fStartPoint; }
22 unsigned getShown() const { return fShownLength; }
23 unsigned getTotal() const { return fTotalLength; }
24
rmistry@google.comfbfcd562012-08-23 18:09:54 +000025 void setStart(unsigned start);
reed@android.com8a1c16f2008-12-17 15:59:43 +000026 void setShown(unsigned shown);
27 void setTotal(unsigned total);
rmistry@google.comfbfcd562012-08-23 18:09:54 +000028
reed@android.com8a1c16f2008-12-17 15:59:43 +000029protected:
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
36private:
37 SkAnimator fAnim;
38 unsigned fTotalLength, fStartPoint, fShownLength;
rmistry@google.comfbfcd562012-08-23 18:09:54 +000039
reed@android.com8a1c16f2008-12-17 15:59:43 +000040 void adjust();
rmistry@google.comfbfcd562012-08-23 18:09:54 +000041
reed@android.com8a1c16f2008-12-17 15:59:43 +000042 typedef SkWidgetView INHERITED;
43};
44#endif