11cab2921ab279367f8206cdadc9259d12e603548Derek Sollenberger
20b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger/*
31cab2921ab279367f8206cdadc9259d12e603548Derek Sollenberger * Copyright 2006 The Android Open Source Project
40b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger *
51cab2921ab279367f8206cdadc9259d12e603548Derek Sollenberger * Use of this source code is governed by a BSD-style license that can be
61cab2921ab279367f8206cdadc9259d12e603548Derek Sollenberger * found in the LICENSE file.
70b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger */
80b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger
91cab2921ab279367f8206cdadc9259d12e603548Derek Sollenberger
100b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger#ifndef SkBorderView_DEFINED
110b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger#define SkBorderView_DEFINED
120b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger
130b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger#include "SkView.h"
140b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger#include "SkWidgetViews.h"
150b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger#include "SkAnimator.h"
160b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger
170b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenbergerclass SkBorderView : public SkWidgetView {
180b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenbergerpublic:
190b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger    SkBorderView();
200b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger    ~SkBorderView();
210b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger    void setSkin(const char skin[]);
220b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger    SkScalar getLeft() const { return fLeft; }
230b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger    SkScalar getRight() const { return fRight; }
240b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger    SkScalar getTop() const { return fTop; }
250b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger    SkScalar getBottom() const { return fBottom; }
260b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenbergerprotected:
270b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger    //overrides
280b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger    virtual void onInflate(const SkDOM& dom,  const SkDOM::Node* node);
290b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger    virtual void onSizeChange();
300b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger    virtual void onDraw(SkCanvas* canvas);
310b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger    virtual bool onEvent(const SkEvent& evt);
320b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenbergerprivate:
330b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger    SkAnimator fAnim;
340b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger    SkScalar fLeft, fRight, fTop, fBottom;  //margin on each side
350b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger    SkRect fMargin;
360b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger
370b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger    typedef SkWidgetView INHERITED;
380b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger};
390b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger
400b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger#endif
410b15698a8c76bb8abc1b555c1d91892669b4118fDerek Sollenberger
42