OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #ifndef PPAPI_THUNK_PPB_FONT_API_H_ | 5 #ifndef PPAPI_THUNK_PPB_FONT_API_H_ |
6 #define PPAPI_THUNK_PPB_FONT_API_H_ | 6 #define PPAPI_THUNK_PPB_FONT_API_H_ |
7 | 7 |
8 #include "ppapi/c/dev/ppb_font_dev.h" | 8 #include "ppapi/c/dev/ppb_font_dev.h" |
9 #include "ppapi/proxy/interface_id.h" | 9 #include "ppapi/proxy/interface_id.h" |
10 | 10 |
11 namespace ppapi { | 11 namespace ppapi { |
12 namespace thunk { | 12 namespace thunk { |
13 | 13 |
14 // API for static font functions. | 14 // API for static font functions. |
15 class PPB_Font_FunctionAPI { | 15 class PPB_Font_FunctionAPI { |
16 public: | 16 public: |
17 virtual ~PPB_Font_FunctionAPI() {} | 17 virtual ~PPB_Font_FunctionAPI() {} |
18 | 18 |
19 virtual PP_Var GetFontFamilies(PP_Instance instance) = 0; | 19 virtual PP_Var GetFontFamilies(PP_Instance instance) = 0; |
20 | 20 |
21 static const ::pp::proxy::InterfaceID interface_id = | 21 static const proxy::InterfaceID interface_id = proxy::INTERFACE_ID_PPB_FONT; |
22 ::pp::proxy::INTERFACE_ID_PPB_FONT; | |
23 }; | 22 }; |
24 | 23 |
25 // API for font resources. | 24 // API for font resources. |
26 class PPB_Font_API { | 25 class PPB_Font_API { |
27 public: | 26 public: |
28 virtual ~PPB_Font_API() {} | 27 virtual ~PPB_Font_API() {} |
29 | 28 |
30 virtual PP_Bool Describe(PP_FontDescription_Dev* description, | 29 virtual PP_Bool Describe(PP_FontDescription_Dev* description, |
31 PP_FontMetrics_Dev* metrics) = 0; | 30 PP_FontMetrics_Dev* metrics) = 0; |
32 virtual PP_Bool DrawTextAt(PP_Resource image_data, | 31 virtual PP_Bool DrawTextAt(PP_Resource image_data, |
33 const PP_TextRun_Dev* text, | 32 const PP_TextRun_Dev* text, |
34 const PP_Point* position, | 33 const PP_Point* position, |
35 uint32_t color, | 34 uint32_t color, |
36 const PP_Rect* clip, | 35 const PP_Rect* clip, |
37 PP_Bool image_data_is_opaque) = 0; | 36 PP_Bool image_data_is_opaque) = 0; |
38 virtual int32_t MeasureText(const PP_TextRun_Dev* text) = 0; | 37 virtual int32_t MeasureText(const PP_TextRun_Dev* text) = 0; |
39 virtual uint32_t CharacterOffsetForPixel(const PP_TextRun_Dev* text, | 38 virtual uint32_t CharacterOffsetForPixel(const PP_TextRun_Dev* text, |
40 int32_t pixel_position) = 0; | 39 int32_t pixel_position) = 0; |
41 virtual int32_t PixelOffsetForCharacter(const PP_TextRun_Dev* text, | 40 virtual int32_t PixelOffsetForCharacter(const PP_TextRun_Dev* text, |
42 uint32_t char_offset) = 0; | 41 uint32_t char_offset) = 0; |
43 }; | 42 }; |
44 | 43 |
45 } // namespace thunk | 44 } // namespace thunk |
46 } // namespace ppapi | 45 } // namespace ppapi |
47 | 46 |
48 #endif // PPAPI_THUNK_PPB_FONT_API_H_ | 47 #endif // PPAPI_THUNK_PPB_FONT_API_H_ |
OLD | NEW |