cairogobject.pp 9.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309
  1. {$IFNDEF FPC_DOTTEDUNITS}
  2. unit cairogobject;
  3. {$ENDIF FPC_DOTTEDUNITS}
  4. {
  5. Cairo-gobject header translation by Dennis Golovan. Original header
  6. of cairo-gobject.h
  7. * cairo - a vector graphics library with display and print output
  8. *
  9. * Copyright © 2010 Red Hat Inc.
  10. *
  11. * This library is free software; you can redistribute it and/or
  12. * modify it either under the terms of the GNU Lesser General Public
  13. * License version 2.1 as published by the Free Software Foundation
  14. * (the "LGPL") or, at your option, under the terms of the Mozilla
  15. * Public License Version 1.1 (the "MPL"). If you do not alter this
  16. * notice, a recipient may use your version of this file under either
  17. * the MPL or the LGPL.
  18. *
  19. * You should have received a copy of the LGPL along with this library
  20. * in the file COPYING-LGPL-2.1; if not, write to the Free Software
  21. * Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335, USA
  22. * You should have received a copy of the MPL along with this library
  23. * in the file COPYING-MPL-1.1
  24. *
  25. * The contents of this file are subject to the Mozilla Public License
  26. * Version 1.1 (the "License"); you may not use this file except in
  27. * compliance with the License. You may obtain a copy of the License at
  28. * http://www.mozilla.org/MPL/
  29. *
  30. * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY
  31. * OF ANY KIND, either express or implied. See the LGPL or the MPL for
  32. * the specific language governing rights and limitations.
  33. *
  34. * The Original Code is the cairo graphics library.
  35. *
  36. * The Initial Developer of the Original Code is University of Southern
  37. * California.
  38. *
  39. * Contributor(s):
  40. * Benjamin Otte <[email protected]>
  41. *
  42. }
  43. interface
  44. {$mode ObjFpc}
  45. {$IFDEF FPC}
  46. {$PACKRECORDS C}
  47. {$ENDIF}
  48. {$IFDEF FPC_DOTTEDUNITS}
  49. uses Api.Cairo.Lib;
  50. {$ELSE FPC_DOTTEDUNITS}
  51. uses cairo;
  52. {$ENDIF FPC_DOTTEDUNITS}
  53. const
  54. {$ifdef MSWINDOWS}
  55. LIB_CAIROGOBJECT = LIB_CAIRO;
  56. {$IFDEF FPC}
  57. {$ifndef NO_SMART_LINK}
  58. {$smartlink on}
  59. {$endif}
  60. {$ENDIF}
  61. {$else}
  62. {$ifdef darwin}
  63. LIB_CAIROGOBJECT = 'cairo-gobject';
  64. {$linklib cairo-gobject}
  65. {$else}
  66. {$ifdef UseCustomLibs}
  67. LIB_CAIROGOBJECT = '';
  68. {$else}
  69. LIB_CAIROGOBJECT = 'libcairo-gobject.so.2';
  70. {$endif}
  71. {$endif}
  72. {$endif}
  73. (* GObject Functions - structs *)
  74. function CAIRO_GOBJECT_TYPE_CONTEXT: GType;
  75. function cairo_gobject_context_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  76. function CAIRO_GOBJECT_TYPE_DEVICE: GType;
  77. function cairo_gobject_device_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  78. function CAIRO_GOBJECT_TYPE_PATTERN: GType;
  79. function cairo_gobject_pattern_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  80. function CAIRO_GOBJECT_TYPE_SURFACE: GType;
  81. function cairo_gobject_surface_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  82. function CAIRO_GOBJECT_TYPE_RECTANGLE: GType;
  83. function cairo_gobject_rectangle_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  84. function CAIRO_GOBJECT_TYPE_SCALED_FONT: GType;
  85. function cairo_gobject_scaled_font_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  86. function CAIRO_GOBJECT_TYPE_FONT_FACE: GType;
  87. function cairo_gobject_font_face_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  88. function CAIRO_GOBJECT_TYPE_FONT_OPTIONS: GType;
  89. function cairo_gobject_font_options_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  90. function CAIRO_GOBJECT_TYPE_RECTANGLE_INT: GType;
  91. function cairo_gobject_rectangle_int_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  92. function CAIRO_GOBJECT_TYPE_REGION: GType;
  93. function cairo_gobject_region_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  94. (* GObject Functions - enums *)
  95. function CAIRO_GOBJECT_TYPE_STATUS: GType;
  96. function cairo_gobject_status_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  97. function CAIRO_GOBJECT_TYPE_CONTENT: GType;
  98. function cairo_gobject_content_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  99. function CAIRO_GOBJECT_TYPE_OPERATOR: GType;
  100. function cairo_gobject_operator_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  101. function CAIRO_GOBJECT_TYPE_ANTIALIAS: GType;
  102. function cairo_gobject_antialias_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  103. function CAIRO_GOBJECT_TYPE_FILL_RULE: GType;
  104. function cairo_gobject_fill_rule_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  105. function CAIRO_GOBJECT_TYPE_LINE_CAP: GType;
  106. function cairo_gobject_line_cap_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  107. function CAIRO_GOBJECT_TYPE_LINE_JOIN: GType;
  108. function cairo_gobject_line_join_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  109. function CAIRO_GOBJECT_TYPE_CLUSTER_FLAGS: GType;
  110. function cairo_gobject_text_cluster_flags_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  111. function CAIRO_GOBJECT_TYPE_FONT_SLANT: GType;
  112. function cairo_gobject_font_slant_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  113. function CAIRO_GOBJECT_TYPE_FONT_WEIGHT: GType;
  114. function cairo_gobject_font_weight_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  115. function CAIRO_GOBJECT_TYPE_SUBPIXEL_ORDER: GType;
  116. function cairo_gobject_subpixel_order_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  117. function CAIRO_GOBJECT_TYPE_HINT_STYLE: GType;
  118. function cairo_gobject_hint_style_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  119. function CAIRO_GOBJECT_TYPE_HNT_METRICS: GType;
  120. function cairo_gobject_hint_metrics_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  121. function CAIRO_GOBJECT_TYPE_FONT_TYPE: GType;
  122. function cairo_gobject_font_type_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  123. function CAIRO_GOBJECT_TYPE_PATH_DATA_TYPE: GType;
  124. function cairo_gobject_path_data_type_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  125. function CAIRO_GOBJECT_TYPE_DEVICE_TYPE: GType;
  126. function cairo_gobject_device_type_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  127. function CAIRO_GOBJECT_TYPE_SURFACE_TYPE: GType;
  128. function cairo_gobject_surface_type_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  129. function CAIRO_GOBJECT_TYPE_FORMAT: GType;
  130. function cairo_gobject_format_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  131. function CAIRO_GOBJECT_TYPE_PATTERN_TYPE: GType;
  132. function cairo_gobject_pattern_type_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  133. function CAIRO_GOBJECT_TYPE_EXTEND: GType;
  134. function cairo_gobject_extend_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  135. function CAIRO_GOBJECT_TYPE_FILTER: GType;
  136. function cairo_gobject_filter_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  137. function CAIRO_GOBJECT_TYPE_REGION_OVERLAP: GType;
  138. function cairo_gobject_region_overlap_get_type: GType; cdecl; external LIB_CAIROGOBJECT;
  139. implementation
  140. function CAIRO_GOBJECT_TYPE_CONTEXT: GType;
  141. begin
  142. Result := cairo_gobject_context_get_type;
  143. end;
  144. function CAIRO_GOBJECT_TYPE_DEVICE: GType;
  145. begin
  146. Result := cairo_gobject_device_get_type;
  147. end;
  148. function CAIRO_GOBJECT_TYPE_PATTERN: GType;
  149. begin
  150. Result := cairo_gobject_pattern_get_type;
  151. end;
  152. function CAIRO_GOBJECT_TYPE_SURFACE: GType;
  153. begin
  154. Result := cairo_gobject_surface_get_type;
  155. end;
  156. function CAIRO_GOBJECT_TYPE_RECTANGLE: GType;
  157. begin
  158. Result := cairo_gobject_rectangle_get_type;
  159. end;
  160. function CAIRO_GOBJECT_TYPE_SCALED_FONT: GType;
  161. begin
  162. Result := cairo_gobject_scaled_font_get_type;
  163. end;
  164. function CAIRO_GOBJECT_TYPE_FONT_FACE: GType;
  165. begin
  166. Result := cairo_gobject_font_face_get_type;
  167. end;
  168. function CAIRO_GOBJECT_TYPE_FONT_OPTIONS: GType;
  169. begin
  170. Result := cairo_gobject_font_options_get_type;
  171. end;
  172. function CAIRO_GOBJECT_TYPE_RECTANGLE_INT: GType;
  173. begin
  174. Result := cairo_gobject_rectangle_int_get_type;
  175. end;
  176. function CAIRO_GOBJECT_TYPE_REGION: GType;
  177. begin
  178. Result := cairo_gobject_region_get_type;
  179. end;
  180. function CAIRO_GOBJECT_TYPE_STATUS: GType;
  181. begin
  182. Result := cairo_gobject_status_get_type;
  183. end;
  184. function CAIRO_GOBJECT_TYPE_CONTENT: GType;
  185. begin
  186. Result := cairo_gobject_content_get_type;
  187. end;
  188. function CAIRO_GOBJECT_TYPE_OPERATOR: GType;
  189. begin
  190. Result := cairo_gobject_operator_get_type;
  191. end;
  192. function CAIRO_GOBJECT_TYPE_ANTIALIAS: GType;
  193. begin
  194. Result := cairo_gobject_antialias_get_type;
  195. end;
  196. function CAIRO_GOBJECT_TYPE_FILL_RULE: GType;
  197. begin
  198. Result := cairo_gobject_fill_rule_get_type;
  199. end;
  200. function CAIRO_GOBJECT_TYPE_LINE_CAP: GType;
  201. begin
  202. Result := cairo_gobject_line_cap_get_type;
  203. end;
  204. function CAIRO_GOBJECT_TYPE_LINE_JOIN: GType;
  205. begin
  206. Result := cairo_gobject_line_join_get_type;
  207. end;
  208. function CAIRO_GOBJECT_TYPE_CLUSTER_FLAGS: GType;
  209. begin
  210. Result := cairo_gobject_text_cluster_flags_get_type;
  211. end;
  212. function CAIRO_GOBJECT_TYPE_FONT_SLANT: GType;
  213. begin
  214. Result := cairo_gobject_font_slant_get_type;
  215. end;
  216. function CAIRO_GOBJECT_TYPE_FONT_WEIGHT: GType;
  217. begin
  218. Result := cairo_gobject_font_weight_get_type;
  219. end;
  220. function CAIRO_GOBJECT_TYPE_SUBPIXEL_ORDER: GType;
  221. begin
  222. Result := cairo_gobject_subpixel_order_get_type;
  223. end;
  224. function CAIRO_GOBJECT_TYPE_HINT_STYLE: GType;
  225. begin
  226. Result := cairo_gobject_hint_style_get_type;
  227. end;
  228. function CAIRO_GOBJECT_TYPE_HNT_METRICS: GType;
  229. begin
  230. Result := cairo_gobject_hint_metrics_get_type;
  231. end;
  232. function CAIRO_GOBJECT_TYPE_FONT_TYPE: GType;
  233. begin
  234. Result := cairo_gobject_font_type_get_type;
  235. end;
  236. function CAIRO_GOBJECT_TYPE_PATH_DATA_TYPE: GType;
  237. begin
  238. Result := cairo_gobject_path_data_type_get_type;
  239. end;
  240. function CAIRO_GOBJECT_TYPE_DEVICE_TYPE: GType;
  241. begin
  242. Result := cairo_gobject_device_type_get_type;
  243. end;
  244. function CAIRO_GOBJECT_TYPE_SURFACE_TYPE: GType;
  245. begin
  246. Result := cairo_gobject_surface_type_get_type;
  247. end;
  248. function CAIRO_GOBJECT_TYPE_FORMAT: GType;
  249. begin
  250. Result := cairo_gobject_format_get_type;
  251. end;
  252. function CAIRO_GOBJECT_TYPE_PATTERN_TYPE: GType;
  253. begin
  254. Result := cairo_gobject_pattern_type_get_type;
  255. end;
  256. function CAIRO_GOBJECT_TYPE_EXTEND: GType;
  257. begin
  258. Result := cairo_gobject_extend_get_type;
  259. end;
  260. function CAIRO_GOBJECT_TYPE_FILTER: GType;
  261. begin
  262. Result := cairo_gobject_filter_get_type;
  263. end;
  264. function CAIRO_GOBJECT_TYPE_REGION_OVERLAP: GType;
  265. begin
  266. Result := cairo_gobject_region_overlap_get_type;
  267. end;
  268. end.