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.
5 #include "ppapi/thunk/thunk.h"
6 #include "ppapi/thunk/enter.h"
7 #include "ppapi/thunk/ppb_widget_api.h"
8 #include "ppapi/thunk/resource_creation_api.h"
15 PP_Bool
IsWidget(PP_Resource resource
) {
16 EnterResource
<PPB_Widget_API
> enter(resource
, false);
17 return PP_FromBool(enter
.succeeded());
20 PP_Bool
Paint(PP_Resource widget
, const PP_Rect
* rect
, PP_Resource image_id
) {
21 EnterResource
<PPB_Widget_API
> enter(widget
, false);
24 return enter
.object()->Paint(rect
, image_id
);
27 PP_Bool
HandleEvent(PP_Resource widget
, PP_Resource pp_input_event
) {
28 EnterResource
<PPB_Widget_API
> enter(widget
, false);
31 return enter
.object()->HandleEvent(pp_input_event
);
34 PP_Bool
GetLocation(PP_Resource widget
, PP_Rect
* location
) {
35 EnterResource
<PPB_Widget_API
> enter(widget
, false);
38 return enter
.object()->GetLocation(location
);
41 void SetLocation(PP_Resource widget
, const PP_Rect
* location
) {
42 EnterResource
<PPB_Widget_API
> enter(widget
, false);
43 if (enter
.succeeded())
44 enter
.object()->SetLocation(location
);
47 void SetScale(PP_Resource widget
, float scale
) {
48 EnterResource
<PPB_Widget_API
> enter(widget
, false);
49 if (enter
.succeeded())
50 enter
.object()->SetScale(scale
);
53 const PPB_Widget_Dev_0_3 g_ppb_widget_thunk_0_3
= {
61 const PPB_Widget_Dev_0_4 g_ppb_widget_thunk_0_4
= {
72 const PPB_Widget_Dev_0_3
* GetPPB_Widget_Dev_0_3_Thunk() {
73 return &g_ppb_widget_thunk_0_3
;
76 const PPB_Widget_Dev_0_4
* GetPPB_Widget_Dev_0_4_Thunk() {
77 return &g_ppb_widget_thunk_0_4
;