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/shared_impl/api_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 proxy::InterfaceID interface_id = proxy::INTERFACE_ID_PPB_FONT; | 21 static const ApiID kApiID = API_ID_PPB_FONT; |
22 }; | 22 }; |
23 | 23 |
24 // API for font resources. | 24 // API for font resources. |
25 class PPB_Font_API { | 25 class PPB_Font_API { |
26 public: | 26 public: |
27 virtual ~PPB_Font_API() {} | 27 virtual ~PPB_Font_API() {} |
28 | 28 |
29 virtual PP_Bool Describe(PP_FontDescription_Dev* description, | 29 virtual PP_Bool Describe(PP_FontDescription_Dev* description, |
30 PP_FontMetrics_Dev* metrics) = 0; | 30 PP_FontMetrics_Dev* metrics) = 0; |
31 virtual PP_Bool DrawTextAt(PP_Resource image_data, | 31 virtual PP_Bool DrawTextAt(PP_Resource image_data, |
32 const PP_TextRun_Dev* text, | 32 const PP_TextRun_Dev* text, |
33 const PP_Point* position, | 33 const PP_Point* position, |
34 uint32_t color, | 34 uint32_t color, |
35 const PP_Rect* clip, | 35 const PP_Rect* clip, |
36 PP_Bool image_data_is_opaque) = 0; | 36 PP_Bool image_data_is_opaque) = 0; |
37 virtual int32_t MeasureText(const PP_TextRun_Dev* text) = 0; | 37 virtual int32_t MeasureText(const PP_TextRun_Dev* text) = 0; |
38 virtual uint32_t CharacterOffsetForPixel(const PP_TextRun_Dev* text, | 38 virtual uint32_t CharacterOffsetForPixel(const PP_TextRun_Dev* text, |
39 int32_t pixel_position) = 0; | 39 int32_t pixel_position) = 0; |
40 virtual int32_t PixelOffsetForCharacter(const PP_TextRun_Dev* text, | 40 virtual int32_t PixelOffsetForCharacter(const PP_TextRun_Dev* text, |
41 uint32_t char_offset) = 0; | 41 uint32_t char_offset) = 0; |
42 }; | 42 }; |
43 | 43 |
44 } // namespace thunk | 44 } // namespace thunk |
45 } // namespace ppapi | 45 } // namespace ppapi |
46 | 46 |
47 #endif // PPAPI_THUNK_PPB_FONT_API_H_ | 47 #endif // PPAPI_THUNK_PPB_FONT_API_H_ |
OLD | NEW |