cc: Don't activate rasterize on demand when we have 0 memory.
[chromium-blink-merge.git] / cc / test / fake_scrollbar.h
blob8e6d4545e01d9bb2fce6d85564a559a9bfcc1c51
1 // Copyright 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CC_TEST_FAKE_SCROLLBAR_H_
6 #define CC_TEST_FAKE_SCROLLBAR_H_
8 #include "base/compiler_specific.h"
9 #include "cc/input/scrollbar.h"
10 #include "third_party/skia/include/core/SkColor.h"
12 namespace cc {
14 class FakeScrollbar : public Scrollbar {
15 public:
16 FakeScrollbar();
17 FakeScrollbar(bool paint, bool has_thumb, bool is_overlay);
18 virtual ~FakeScrollbar();
20 // Scrollbar implementation.
21 virtual ScrollbarOrientation Orientation() const OVERRIDE;
22 virtual bool IsLeftSideVerticalScrollbar() const OVERRIDE;
23 virtual gfx::Point Location() const OVERRIDE;
24 virtual bool IsOverlay() const OVERRIDE;
25 virtual bool HasThumb() const OVERRIDE;
26 virtual int ThumbThickness() const OVERRIDE;
27 virtual int ThumbLength() const OVERRIDE;
28 virtual gfx::Rect TrackRect() const OVERRIDE;
29 virtual void PaintPart(SkCanvas* canvas,
30 ScrollbarPart part,
31 const gfx::Rect& content_rect) OVERRIDE;
33 void set_location(const gfx::Point& location) { location_ = location; }
34 void set_track_rect(const gfx::Rect& track_rect) { track_rect_ = track_rect; }
35 void set_thumb_thickness(int thumb_thickness) {
36 thumb_thickness_ = thumb_thickness;
38 void set_thumb_length(int thumb_length) { thumb_length_ = thumb_length; }
39 void set_has_thumb(bool has_thumb) { has_thumb_ = has_thumb; }
40 SkColor paint_fill_color() const { return SK_ColorBLACK | fill_color_; }
42 private:
43 bool paint_;
44 bool has_thumb_;
45 bool is_overlay_;
46 int thumb_thickness_;
47 int thumb_length_;
48 gfx::Point location_;
49 gfx::Rect track_rect_;
50 SkColor fill_color_;
52 DISALLOW_COPY_AND_ASSIGN(FakeScrollbar);
55 } // namespace cc
57 #endif // CC_TEST_FAKE_SCROLLBAR_H_