| Index: webkit/glue/plugins/pepper_scrollbar.h | 
| =================================================================== | 
| --- webkit/glue/plugins/pepper_scrollbar.h	(revision 0) | 
| +++ webkit/glue/plugins/pepper_scrollbar.h	(revision 0) | 
| @@ -0,0 +1,64 @@ | 
| +// Copyright (c) 2010 The Chromium Authors. All rights reserved. | 
| +// Use of this source code is governed by a BSD-style license that can be | 
| +// found in the LICENSE file. | 
| + | 
| +#ifndef WEBKIT_GLUE_PLUGINS_PEPPER_SCROLLBAR_H_ | 
| +#define WEBKIT_GLUE_PLUGINS_PEPPER_SCROLLBAR_H_ | 
| + | 
| +#include <vector> | 
| + | 
| +#include "gfx/rect.h" | 
| +#include "third_party/ppapi/c/ppb_scrollbar.h" | 
| +#include "third_party/WebKit/WebKit/chromium/public/WebRect.h" | 
| +#include "third_party/WebKit/WebKit/chromium/public/WebScrollbarClient.h" | 
| +#include "webkit/glue/plugins/pepper_widget.h" | 
| + | 
| +typedef struct _ppb_Scrollbar PPB_Scrollbar; | 
| + | 
| +namespace pepper { | 
| + | 
| +class PluginInstance; | 
| + | 
| +class Scrollbar : public Widget, public WebKit::WebScrollbarClient { | 
| + public: | 
| +  Scrollbar(PluginInstance* instance, bool vertical); | 
| +  virtual ~Scrollbar(); | 
| + | 
| +  // Returns a pointer to the interface implementing PPB_Scrollbar that is | 
| +  // exposed to the plugin. | 
| +  static const PPB_Scrollbar* GetInterface(); | 
| + | 
| +  // Resource overrides. | 
| +  Scrollbar* AsScrollbar() { return this; } | 
| + | 
| +  // PPB_Scrollbar implementation. | 
| +  uint32_t GetValue(); | 
| +  void SetValue(uint32_t value); | 
| +  void SetDocumentSize(uint32_t size); | 
| +  void SetTickMarks(const PP_Rect* tick_marks, uint32_t count); | 
| +  void ScrollBy(PP_ScrollBy unit, int32_t multiplier); | 
| + | 
| +  // PPB_Widget implementation. | 
| +  virtual bool Paint(const PP_Rect* rect, ImageData* image); | 
| +  virtual bool HandleEvent(const PP_Event* event); | 
| +  virtual void SetLocationInternal(const PP_Rect* location); | 
| + | 
| + private: | 
| +  // WebKit::WebScrollbarClient implementation. | 
| +  virtual void valueChanged(WebKit::WebScrollbar* scrollbar); | 
| +  virtual void invalidateScrollbarRect(WebKit::WebScrollbar* scrollbar, | 
| +                                       const WebKit::WebRect& rect); | 
| +  virtual void getTickmarks( | 
| +      WebKit::WebScrollbar* scrollbar, | 
| +      WebKit::WebVector<WebKit::WebRect>* tick_marks) const; | 
| + | 
| +  void NotifyInvalidate(); | 
| + | 
| +  gfx::Rect dirty_; | 
| +  std::vector<WebKit::WebRect> tickmarks_; | 
| +  scoped_ptr<WebKit::WebScrollbar> scrollbar_; | 
| +}; | 
| + | 
| +}  // namespace pepper | 
| + | 
| +#endif  // WEBKIT_GLUE_PLUGINS_PEPPER_SCROLLBAR_H_ | 
|  | 
| Property changes on: webkit\glue\plugins\pepper_scrollbar.h | 
| ___________________________________________________________________ | 
| Added: svn:eol-style | 
| + LF | 
|  | 
|  |