| OLD | NEW |
| (Empty) |
| 1 // Copyright 2013 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. | |
| 4 | |
| 5 #include "cc/test/fake_scrollbar.h" | |
| 6 | |
| 7 #include "third_party/skia/include/core/SkCanvas.h" | |
| 8 #include "ui/gfx/skia_util.h" | |
| 9 | |
| 10 namespace cc { | |
| 11 | |
| 12 FakeScrollbar::FakeScrollbar() | |
| 13 : paint_(false), | |
| 14 has_thumb_(false), | |
| 15 is_overlay_(false), | |
| 16 thumb_thickness_(10), | |
| 17 thumb_length_(5), | |
| 18 track_rect_(0, 0, 100, 10), | |
| 19 fill_color_(SK_ColorGREEN) {} | |
| 20 | |
| 21 FakeScrollbar::FakeScrollbar(bool paint, bool has_thumb, bool is_overlay) | |
| 22 : paint_(paint), | |
| 23 has_thumb_(has_thumb), | |
| 24 is_overlay_(is_overlay), | |
| 25 thumb_thickness_(10), | |
| 26 thumb_length_(5), | |
| 27 track_rect_(0, 0, 100, 10), | |
| 28 fill_color_(SK_ColorGREEN) {} | |
| 29 | |
| 30 FakeScrollbar::~FakeScrollbar() {} | |
| 31 | |
| 32 ScrollbarOrientation FakeScrollbar::Orientation() const { | |
| 33 return HORIZONTAL; | |
| 34 } | |
| 35 | |
| 36 bool FakeScrollbar::IsLeftSideVerticalScrollbar() const { | |
| 37 return false; | |
| 38 } | |
| 39 | |
| 40 gfx::Point FakeScrollbar::Location() const { return location_; } | |
| 41 | |
| 42 bool FakeScrollbar::IsOverlay() const { return is_overlay_; } | |
| 43 | |
| 44 bool FakeScrollbar::HasThumb() const { return has_thumb_; } | |
| 45 | |
| 46 int FakeScrollbar::ThumbThickness() const { | |
| 47 return thumb_thickness_; | |
| 48 } | |
| 49 | |
| 50 int FakeScrollbar::ThumbLength() const { | |
| 51 return thumb_length_; | |
| 52 } | |
| 53 | |
| 54 gfx::Rect FakeScrollbar::TrackRect() const { | |
| 55 return track_rect_; | |
| 56 } | |
| 57 | |
| 58 void FakeScrollbar::PaintPart(SkCanvas* canvas, | |
| 59 ScrollbarPart part, | |
| 60 const gfx::Rect& content_rect) { | |
| 61 if (!paint_) | |
| 62 return; | |
| 63 | |
| 64 // Fill the scrollbar with a different color each time. | |
| 65 fill_color_++; | |
| 66 SkPaint paint; | |
| 67 paint.setAntiAlias(false); | |
| 68 paint.setColor(paint_fill_color()); | |
| 69 paint.setStyle(SkPaint::kFill_Style); | |
| 70 | |
| 71 // Emulate the how the real scrollbar works by using scrollbar's rect for | |
| 72 // TRACK and the given content_rect for the THUMB | |
| 73 SkRect rect = part == TRACK ? RectToSkRect(TrackRect()) | |
| 74 : RectToSkRect(content_rect); | |
| 75 canvas->drawRect(rect, paint); | |
| 76 } | |
| 77 | |
| 78 } // namespace cc | |
| OLD | NEW |