Pepper_31_C_interfaces
ppb_scrollbar_dev.h
Go to the documentation of this file.
1 /* Copyright (c) 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 
6 /* From dev/ppb_scrollbar_dev.idl modified Wed Oct 5 14:06:02 2011. */
7 
8 #ifndef PPAPI_C_DEV_PPB_SCROLLBAR_DEV_H_
9 #define PPAPI_C_DEV_PPB_SCROLLBAR_DEV_H_
10 
11 #include "ppapi/c/pp_bool.h"
12 #include "ppapi/c/pp_instance.h"
13 #include "ppapi/c/pp_macros.h"
14 #include "ppapi/c/pp_point.h"
15 #include "ppapi/c/pp_rect.h"
16 #include "ppapi/c/pp_resource.h"
17 #include "ppapi/c/pp_size.h"
18 #include "ppapi/c/pp_stdint.h"
19 
20 #define PPB_SCROLLBAR_DEV_INTERFACE_0_5 "PPB_Scrollbar(Dev);0.5"
21 #define PPB_SCROLLBAR_DEV_INTERFACE PPB_SCROLLBAR_DEV_INTERFACE_0_5
22 
23 /**
24  * @file
25  * This file defines the <code>PPB_Buffer_Dev</code> interface.
26  */
27 
28 
29 /**
30  * @addtogroup Enums
31  * @{
32  */
33 typedef enum {
40 /**
41  * @}
42  */
43 
44 /**
45  * @addtogroup Interfaces
46  * @{
47  */
48 /**
49  * The interface for a scrollbar. A scrollbar is a widget, so the functions
50  * in PPB_Widget can also be used with scrollbar objects.
51  */
53  /**
54  * Create a new scrollbar. Returns 0 if the instance is invalid.
55  */
56  PP_Resource (*Create)(PP_Instance instance, PP_Bool vertical);
57  /**
58  * Returns PP_TRUE if the given resource is a Scrollbar. Returns PP_FALSE if
59  * the resource is invalid or some type other than a scrollbar.
60  */
62  /**
63  * Gets the thickness of a scrollbar.
64  */
65  uint32_t (*GetThickness)(PP_Resource resource);
66  /**
67  * Returns PP_TRUE if the system scrollbar style is an overlap scrollbar.
68  */
69  PP_Bool (*IsOverlay)(PP_Resource scrollbar);
70  /**
71  * Gets the value of the scrollbar.
72  */
73  uint32_t (*GetValue)(PP_Resource scrollbar);
74  /**
75  * Sets the value of the scrollbar.
76  */
77  void (*SetValue)(PP_Resource scrollbar, uint32_t value);
78  /**
79  * Set the document size (i.e. total length of the region that's being
80  * scrolled).
81  */
82  void (*SetDocumentSize)(PP_Resource scrollbar, uint32_t size);
83  /**
84  * Updates the tickmarks. Only valid for vertical scrollbars. "tick_marks"
85  * contains "count" PP_Rect objects.
86  */
87  void (*SetTickMarks)(PP_Resource scrollbar,
88  const struct PP_Rect tick_marks[],
89  uint32_t count);
90  /**
91  * Scroll by "multiplier" pixels/lines/pages units. Positive values are
92  * forward and negative are backward. If "unit" is document then any positive
93  * value goes to the end while any negative value goes to the beginning.
94  */
95  void (*ScrollBy)(PP_Resource scrollbar,
96  PP_ScrollBy_Dev unit,
97  int32_t multiplier);
98 };
99 
101 /**
102  * @}
103  */
104 
105 #endif /* PPAPI_C_DEV_PPB_SCROLLBAR_DEV_H_ */
106 
uint32_t(* GetValue)(PP_Resource scrollbar)
PP_ScrollBy_Dev
void(* ScrollBy)(PP_Resource scrollbar, PP_ScrollBy_Dev unit, int32_t multiplier)
PP_Bool(* IsScrollbar)(PP_Resource resource)
void(* SetDocumentSize)(PP_Resource scrollbar, uint32_t size)
int32_t PP_Resource
Definition: pp_resource.h:40
void(* SetTickMarks)(PP_Resource scrollbar, const struct PP_Rect tick_marks[], uint32_t count)
int32_t PP_Instance
Definition: pp_instance.h:34
PP_COMPILE_ASSERT_SIZE_IN_BYTES(PP_ScrollBy_Dev, 4)
PP_Resource(* Create)(PP_Instance instance, PP_Bool vertical)
void(* SetValue)(PP_Resource scrollbar, uint32_t value)
PP_Bool
Definition: pp_bool.h:30
uint32_t(* GetThickness)(PP_Resource resource)
PP_Bool(* IsOverlay)(PP_Resource scrollbar)