Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(69)

Side by Side Diff: ppapi/thunk/ppb_browser_font_trusted_thunk.cc

Issue 375133003: Fixes for re-enabling more MSVC level 4 warnings: ppapi/ edition (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "ppapi/thunk/thunk.h" 5 #include "ppapi/thunk/thunk.h"
6 #include "ppapi/thunk/enter.h" 6 #include "ppapi/thunk/enter.h"
7 #include "ppapi/thunk/ppb_browser_font_singleton_api.h" 7 #include "ppapi/thunk/ppb_browser_font_singleton_api.h"
8 #include "ppapi/thunk/ppb_browser_font_trusted_api.h" 8 #include "ppapi/thunk/ppb_browser_font_trusted_api.h"
9 #include "ppapi/thunk/resource_creation_api.h" 9 #include "ppapi/thunk/resource_creation_api.h"
10 10
11 namespace ppapi { 11 namespace ppapi {
12 namespace thunk { 12 namespace thunk {
13 13
14 namespace { 14 namespace {
15 15
16 typedef EnterResource<PPB_BrowserFont_Trusted_API> EnterBrowserFont; 16 typedef EnterResource<PPB_BrowserFont_Trusted_API> EnterBrowserFont;
17 17
18 PP_Var GetFontFamilies(PP_Instance instance) { 18 PP_Var GetFontFamilies(PP_Instance instance) {
19 EnterInstanceAPI<PPB_BrowserFont_Singleton_API> enter(instance); 19 EnterInstanceAPI<PPB_BrowserFont_Singleton_API> enter(instance);
20 if (enter.failed()) 20 return enter.succeeded() ?
21 return PP_MakeUndefined(); 21 enter.functions()->GetFontFamilies(instance) : PP_MakeUndefined();
Peter Kasting 2014/07/09 02:11:26 I had to touch this file anyway, and since IsBrows
22 return enter.functions()->GetFontFamilies(instance);
23 } 22 }
24 23
25 PP_Resource Create(PP_Instance instance, 24 PP_Resource Create(PP_Instance instance,
26 const PP_BrowserFont_Trusted_Description* description) { 25 const PP_BrowserFont_Trusted_Description* description) {
27 EnterResourceCreation enter(instance); 26 EnterResourceCreation enter(instance);
28 if (enter.failed()) 27 return enter.succeeded() ?
29 return 0; 28 enter.functions()->CreateBrowserFont(instance, description) : 0;
30 return enter.functions()->CreateBrowserFont(instance, description);
31 } 29 }
32 30
33 PP_Bool IsBrowserFont(PP_Resource resource) { 31 PP_Bool IsBrowserFont(PP_Resource resource) {
34 EnterBrowserFont enter(resource, false); 32 EnterBrowserFont enter(resource, false);
35 return enter.succeeded() ? PP_TRUE : PP_FALSE; 33 return enter.succeeded() ? PP_TRUE : PP_FALSE;
36 } 34 }
37 35
38 PP_Bool Describe(PP_Resource font_id, 36 PP_Bool Describe(PP_Resource font_id,
39 PP_BrowserFont_Trusted_Description* description, 37 PP_BrowserFont_Trusted_Description* description,
40 PP_BrowserFont_Trusted_Metrics* metrics) { 38 PP_BrowserFont_Trusted_Metrics* metrics) {
41 EnterBrowserFont enter(font_id, true); 39 EnterBrowserFont enter(font_id, true);
42 if (enter.failed()) 40 return enter.succeeded() ?
43 return PP_FALSE; 41 enter.object()->Describe(description, metrics) : PP_FALSE;
44 return enter.object()->Describe(description, metrics);
45 } 42 }
46 43
47 PP_Bool DrawTextAt(PP_Resource font_id, 44 PP_Bool DrawTextAt(PP_Resource font_id,
48 PP_Resource image_data, 45 PP_Resource image_data,
49 const PP_BrowserFont_Trusted_TextRun* text, 46 const PP_BrowserFont_Trusted_TextRun* text,
50 const PP_Point* position, 47 const PP_Point* position,
51 uint32_t color, 48 uint32_t color,
52 const PP_Rect* clip, 49 const PP_Rect* clip,
53 PP_Bool image_data_is_opaque) { 50 PP_Bool image_data_is_opaque) {
54 EnterBrowserFont enter(font_id, true); 51 EnterBrowserFont enter(font_id, true);
55 if (enter.failed()) 52 return enter.succeeded() ?
56 return PP_FALSE; 53 enter.object()->DrawTextAt(image_data, text, position, color, clip,
57 return enter.object()->DrawTextAt(image_data, text, position, color, clip, 54 image_data_is_opaque) :
58 image_data_is_opaque); 55 PP_FALSE;
59 } 56 }
60 57
61 int32_t MeasureText(PP_Resource font_id, 58 int32_t MeasureText(PP_Resource font_id,
62 const PP_BrowserFont_Trusted_TextRun* text) { 59 const PP_BrowserFont_Trusted_TextRun* text) {
63 EnterBrowserFont enter(font_id, true); 60 EnterBrowserFont enter(font_id, true);
64 if (enter.failed()) 61 return enter.succeeded() ? enter.object()->MeasureText(text) : -1;
65 return -1;
66 return enter.object()->MeasureText(text);
67 } 62 }
68 63
69 uint32_t CharacterOffsetForPixel(PP_Resource font_id, 64 uint32_t CharacterOffsetForPixel(PP_Resource font_id,
70 const PP_BrowserFont_Trusted_TextRun* text, 65 const PP_BrowserFont_Trusted_TextRun* text,
71 int32_t pixel_position) { 66 int32_t pixel_position) {
72 EnterBrowserFont enter(font_id, true); 67 EnterBrowserFont enter(font_id, true);
73 if (enter.failed()) 68 return enter.succeeded() ?
74 return -1; 69 enter.object()->CharacterOffsetForPixel(text, pixel_position) :
75 return enter.object()->CharacterOffsetForPixel(text, pixel_position); 70 0xFFFFFFFF;
76 } 71 }
77 72
78 int32_t PixelOffsetForCharacter(PP_Resource font_id, 73 int32_t PixelOffsetForCharacter(PP_Resource font_id,
79 const PP_BrowserFont_Trusted_TextRun* text, 74 const PP_BrowserFont_Trusted_TextRun* text,
80 uint32_t char_offset) { 75 uint32_t char_offset) {
81 EnterBrowserFont enter(font_id, true); 76 EnterBrowserFont enter(font_id, true);
82 if (enter.failed()) 77 return enter.succeeded() ?
83 return -1; 78 enter.object()->PixelOffsetForCharacter(text, char_offset) : -1;
84 return enter.object()->PixelOffsetForCharacter(text, char_offset);
85 } 79 }
86 80
87 const PPB_BrowserFont_Trusted_1_0 g_ppb_browser_font_trusted_thunk = { 81 const PPB_BrowserFont_Trusted_1_0 g_ppb_browser_font_trusted_thunk = {
88 &GetFontFamilies, 82 &GetFontFamilies,
89 &Create, 83 &Create,
90 &IsBrowserFont, 84 &IsBrowserFont,
91 &Describe, 85 &Describe,
92 &DrawTextAt, 86 &DrawTextAt,
93 &MeasureText, 87 &MeasureText,
94 &CharacterOffsetForPixel, 88 &CharacterOffsetForPixel,
95 &PixelOffsetForCharacter 89 &PixelOffsetForCharacter
96 }; 90 };
97 91
98 } // namespace 92 } // namespace
99 93
100 const PPB_BrowserFont_Trusted_1_0* GetPPB_BrowserFont_Trusted_1_0_Thunk() { 94 const PPB_BrowserFont_Trusted_1_0* GetPPB_BrowserFont_Trusted_1_0_Thunk() {
101 return &g_ppb_browser_font_trusted_thunk; 95 return &g_ppb_browser_font_trusted_thunk;
102 } 96 }
103 97
104 } // namespace thunk 98 } // namespace thunk
105 } // namespace ppapi 99 } // namespace ppapi
OLDNEW
« native_client_sdk/src/libraries/ppapi_cpp/library.dsc ('K') | « ppapi/tests/test_graphics_2d.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698