| // 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 PPAPI_CPP_DEV_SCROLLBAR_DEV_H_ |
| #define PPAPI_CPP_DEV_SCROLLBAR_DEV_H_ |
| |
| #include "ppapi/c/dev/ppb_scrollbar_dev.h" |
| #include "ppapi/cpp/dev/widget_dev.h" |
| |
| namespace pp { |
| |
| class InstanceHandle; |
| |
| // This class allows a plugin to use the browser's scrollbar widget. |
| class Scrollbar_Dev : public Widget_Dev { |
| public: |
| // Creates an is_null() Scrollbar object. |
| Scrollbar_Dev() {} |
| |
| explicit Scrollbar_Dev(PP_Resource resource); |
| Scrollbar_Dev(const InstanceHandle& instance, bool vertical); |
| Scrollbar_Dev(const Scrollbar_Dev& other); |
| |
| Scrollbar_Dev& operator=(const Scrollbar_Dev& other); |
| |
| // PPB_Scrollbar methods: |
| uint32_t GetThickness(); |
| bool IsOverlay(); |
| uint32_t GetValue(); |
| void SetValue(uint32_t value); |
| void SetDocumentSize(uint32_t size); |
| void SetTickMarks(const Rect* tick_marks, uint32_t count); |
| void ScrollBy(PP_ScrollBy_Dev unit, int32_t multiplier); |
| }; |
| |
| } // namespace pp |
| |
| #endif // PPAPI_CPP_DEV_SCROLLBAR_DEV_H_ |