1ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com
28a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com/*
3ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com * Copyright 2006 The Android Open Source Project
48a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com *
5ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com * Use of this source code is governed by a BSD-style license that can be
6ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com * found in the LICENSE file.
78a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com */
88a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com
9ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976eepoger@google.com
108a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com#ifndef SkProgressBarView_DEFINED
118a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com#define SkProgressBarView_DEFINED
128a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com
138a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com#include "SkView.h"
148a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com#include "SkWidgetViews.h"
158a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com#include "SkAnimator.h"
168a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com
178a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.comclass SkProgressBarView : public SkWidgetView {
188a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com    public:
198a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        SkProgressBarView();
208a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        //SkProgressBarView(int max);
21fbfcd5602128ec010c82cb733c9cdc0a3254f9f3rmistry@google.com
228a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        //inflate: "sk-progress"
23fbfcd5602128ec010c82cb733c9cdc0a3254f9f3rmistry@google.com
248a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        void reset();   //reset progress to zero
258a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        void setProgress(int progress);
268a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        void changeProgress(int diff);
278a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        void setMax(int max);
28fbfcd5602128ec010c82cb733c9cdc0a3254f9f3rmistry@google.com
298a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        int getProgress() const { return fProgress; }
308a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        int getMax() const { return fMax; }
31fbfcd5602128ec010c82cb733c9cdc0a3254f9f3rmistry@google.com
328a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com    protected:
338a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        //overrides
348a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        virtual void onInflate(const SkDOM& dom, const SkDOM::Node* node);
358a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        virtual void onSizeChange();
368a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        virtual void onDraw(SkCanvas* canvas);
378a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        virtual bool onEvent(const SkEvent& evt);
38fbfcd5602128ec010c82cb733c9cdc0a3254f9f3rmistry@google.com
398a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com    private:
408a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        SkAnimator  fAnim;
418a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        int         fProgress;
428a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        int         fMax;
43fbfcd5602128ec010c82cb733c9cdc0a3254f9f3rmistry@google.com
448a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com        typedef SkWidgetView INHERITED;
458a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com};
468a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com
478a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com
488a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com
498a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com
508a1c16ff38322f0210116fa7293eb8817c7e477ereed@android.com#endif
51