Home | History | Annotate | Download | only in test
      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.
      4 
      5 #ifndef CC_TEST_FAKE_SCROLLBAR_H_
      6 #define CC_TEST_FAKE_SCROLLBAR_H_
      7 
      8 #include "base/compiler_specific.h"
      9 #include "cc/input/scrollbar.h"
     10 #include "third_party/skia/include/core/SkColor.h"
     11 
     12 namespace cc {
     13 
     14 class FakeScrollbar : public Scrollbar {
     15  public:
     16   FakeScrollbar();
     17   FakeScrollbar(bool paint, bool has_thumb, bool is_overlay);
     18   virtual ~FakeScrollbar();
     19 
     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;
     32 
     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;
     37   }
     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_; }
     41 
     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_;
     51 
     52   DISALLOW_COPY_AND_ASSIGN(FakeScrollbar);
     53 };
     54 
     55 }  // namespace cc
     56 
     57 #endif  // CC_TEST_FAKE_SCROLLBAR_H_
     58