OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2011 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * | 7 * |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 21 matching lines...) Expand all Loading... |
32 namespace blink { | 32 namespace blink { |
33 | 33 |
34 // This scrollbar theme is used to get overlay scrollbar for platforms other | 34 // This scrollbar theme is used to get overlay scrollbar for platforms other |
35 // than Mac. Mac's overlay scrollbars are in ScrollbarThemeMac*. | 35 // than Mac. Mac's overlay scrollbars are in ScrollbarThemeMac*. |
36 class PLATFORM_EXPORT ScrollbarThemeOverlay : public ScrollbarTheme { | 36 class PLATFORM_EXPORT ScrollbarThemeOverlay : public ScrollbarTheme { |
37 public: | 37 public: |
38 enum HitTestBehavior { AllowHitTest, DisallowHitTest }; | 38 enum HitTestBehavior { AllowHitTest, DisallowHitTest }; |
39 | 39 |
40 ScrollbarThemeOverlay(int thumbThickness, int scrollbarMargin, HitTestBehavi
or); | 40 ScrollbarThemeOverlay(int thumbThickness, int scrollbarMargin, HitTestBehavi
or); |
41 ScrollbarThemeOverlay(int thumbThickness, int scrollbarMargin, HitTestBehavi
or, Color); | 41 ScrollbarThemeOverlay(int thumbThickness, int scrollbarMargin, HitTestBehavi
or, Color); |
42 virtual ~ScrollbarThemeOverlay() { } | 42 ~ScrollbarThemeOverlay() override {} |
43 | 43 |
44 virtual int scrollbarThickness(ScrollbarControlSize) override; | 44 int scrollbarThickness(ScrollbarControlSize) override; |
45 virtual int scrollbarMargin() const override; | 45 int scrollbarMargin() const override; |
46 virtual bool usesOverlayScrollbars() const override; | 46 bool usesOverlayScrollbars() const override; |
47 | 47 |
48 virtual int thumbPosition(ScrollbarThemeClient*) override; | 48 int thumbPosition(ScrollbarThemeClient*) override; |
49 virtual int thumbLength(ScrollbarThemeClient*) override; | 49 int thumbLength(ScrollbarThemeClient*) override; |
50 | 50 |
51 virtual bool hasButtons(ScrollbarThemeClient*) override { return false; }; | 51 bool hasButtons(ScrollbarThemeClient*) override { return false; }; |
52 virtual bool hasThumb(ScrollbarThemeClient*) override; | 52 bool hasThumb(ScrollbarThemeClient*) override; |
53 | 53 |
54 virtual IntRect backButtonRect(ScrollbarThemeClient*, ScrollbarPart, bool pa
inting = false) override; | 54 IntRect backButtonRect(ScrollbarThemeClient*, ScrollbarPart, bool painting =
false) override; |
55 virtual IntRect forwardButtonRect(ScrollbarThemeClient*, ScrollbarPart, bool
painting = false) override; | 55 IntRect forwardButtonRect(ScrollbarThemeClient*, ScrollbarPart, bool paintin
g = false) override; |
56 virtual IntRect trackRect(ScrollbarThemeClient*, bool painting = false) over
ride; | 56 IntRect trackRect(ScrollbarThemeClient*, bool painting = false) override; |
57 virtual int thumbThickness(ScrollbarThemeClient*) override; | 57 int thumbThickness(ScrollbarThemeClient*) override; |
58 | 58 |
59 virtual void paintThumb(GraphicsContext*, ScrollbarThemeClient*, const IntRe
ct&) override; | 59 void paintThumb(GraphicsContext*, ScrollbarThemeClient*, const IntRect&) ove
rride; |
60 virtual ScrollbarPart hitTest(ScrollbarThemeClient*, const IntPoint&) overri
de; | 60 ScrollbarPart hitTest(ScrollbarThemeClient*, const IntPoint&) override; |
61 | 61 |
62 private: | 62 private: |
63 int m_thumbThickness; | 63 int m_thumbThickness; |
64 int m_scrollbarMargin; | 64 int m_scrollbarMargin; |
65 HitTestBehavior m_allowHitTest; | 65 HitTestBehavior m_allowHitTest; |
66 Color m_color; | 66 Color m_color; |
67 const bool m_useSolidColor; | 67 const bool m_useSolidColor; |
68 }; | 68 }; |
69 | 69 |
70 } // namespace blink | 70 } // namespace blink |
71 | 71 |
72 #endif | 72 #endif |
OLD | NEW |