Upstreaming browser/ui/uikit_ui_util from iOS.
[chromium-blink-merge.git] / content / child / webthemeengine_impl_default.h
bloba05313aad986f701a1a2ca72459005b163e094ce
1 // Copyright 2014 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 CONTENT_CHILD_WEBTHEMEENGINE_IMPL_DEFAULT_H_
6 #define CONTENT_CHILD_WEBTHEMEENGINE_IMPL_DEFAULT_H_
8 #include "third_party/WebKit/public/platform/WebThemeEngine.h"
10 namespace content {
12 class WebThemeEngineImpl : public blink::WebThemeEngine {
13 public:
14 // WebThemeEngine methods:
15 virtual blink::WebSize getSize(blink::WebThemeEngine::Part);
16 virtual void paint(
17 blink::WebCanvas* canvas,
18 blink::WebThemeEngine::Part part,
19 blink::WebThemeEngine::State state,
20 const blink::WebRect& rect,
21 const blink::WebThemeEngine::ExtraParams* extra_params);
22 virtual void paintStateTransition(blink::WebCanvas* canvas,
23 blink::WebThemeEngine::Part part,
24 blink::WebThemeEngine::State startState,
25 blink::WebThemeEngine::State endState,
26 double progress,
27 const blink::WebRect& rect);
29 #if defined(OS_WIN)
30 // Caches the scrollbar metrics.
31 static void cacheScrollBarMetrics(int32 vertical_scroll_bar_width,
32 int32 horizontal_scroll_bar_height,
33 int32 vertical_arrow_bitmap_height,
34 int32 horizontal_arrow_bitmap_width);
35 #endif
38 } // namespace content
40 #endif // CONTENT_CHILD_WEBTHEMEENGINE_IMPL_DEFAULT_H_