blob: 2733f44d42daceedac61634c7aa1d98e687b7434 [file] [log] [blame]
// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CC_LAYERS_SCROLLBAR_THEME_PAINTER_H_
#define CC_LAYERS_SCROLLBAR_THEME_PAINTER_H_
#include "cc/cc_export.h"
class SkCanvas;
namespace gfx {
class Rect;
}
namespace cc {
class CC_EXPORT ScrollbarThemePainter {
public:
virtual ~ScrollbarThemePainter() {}
virtual void PaintScrollbarBackground(SkCanvas* canvas,
const gfx::Rect& rect) = 0;
virtual void PaintTrackBackground(SkCanvas* canvas,
const gfx::Rect& rect) = 0;
virtual void PaintBackTrackPart(SkCanvas* canvas,
const gfx::Rect& rect) = 0;
virtual void PaintForwardTrackPart(SkCanvas* canvas,
const gfx::Rect& rect) = 0;
virtual void PaintBackButtonStart(SkCanvas* canvas,
const gfx::Rect& rect) = 0;
virtual void PaintBackButtonEnd(SkCanvas* canvas,
const gfx::Rect& rect) = 0;
virtual void PaintForwardButtonStart(SkCanvas* canvas,
const gfx::Rect& rect) = 0;
virtual void PaintForwardButtonEnd(SkCanvas* canvas,
const gfx::Rect& rect) = 0;
virtual void PaintTickmarks(SkCanvas* canvas, const gfx::Rect& rect) = 0;
virtual void PaintThumb(SkCanvas* canvas, const gfx::Rect& rect) = 0;
};
} // namespace cc
#endif // CC_LAYERS_SCROLLBAR_THEME_PAINTER_H_