clutter 2.0.2-x86-mingw32 → 2.0.3-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (480) hide show
  1. checksums.yaml +7 -0
  2. data/Rakefile +4 -4
  3. data/lib/clutter.rb +1 -1
  4. data/sample/easing-modes.rb +1 -3
  5. data/test/clutter-test-utils.rb +6 -1
  6. data/test/run-test.rb +2 -0
  7. data/test/test-clutter-color.rb +8 -0
  8. data/vendor/local/bin/libclutter-1.0-0.dll +0 -0
  9. data/vendor/local/bin/libcogl-15.dll +0 -0
  10. data/vendor/local/bin/libcogl-pango-15.dll +0 -0
  11. data/vendor/local/bin/libjson-glib-1.0-0.dll +0 -0
  12. data/vendor/local/include/clutter-1.0/clutter/clutter-actor.h +16 -4
  13. data/vendor/local/include/clutter-1.0/clutter/clutter-backend.h +3 -0
  14. data/vendor/local/include/clutter-1.0/clutter/clutter-canvas.h +5 -4
  15. data/vendor/local/include/clutter-1.0/clutter/clutter-device-manager.h +3 -1
  16. data/vendor/local/include/clutter-1.0/clutter/clutter-event.h +19 -6
  17. data/vendor/local/include/clutter-1.0/clutter/clutter-flow-layout.h +5 -0
  18. data/vendor/local/include/clutter-1.0/clutter/clutter-input-device.h +2 -0
  19. data/vendor/local/include/clutter-1.0/clutter/clutter-layout-manager.h +1 -2
  20. data/vendor/local/include/clutter-1.0/clutter/clutter-macros.h +14 -0
  21. data/vendor/local/include/clutter-1.0/clutter/clutter-offscreen-effect.h +6 -0
  22. data/vendor/local/include/clutter-1.0/clutter/clutter-text.h +9 -6
  23. data/vendor/local/include/clutter-1.0/clutter/clutter-types.h +5 -1
  24. data/vendor/local/include/clutter-1.0/clutter/clutter-version.h +14 -4
  25. data/vendor/local/include/cogl/cogl-pango/cogl-pango.h +38 -4
  26. data/vendor/local/include/cogl/cogl-path/cogl-path-enum-types.h +20 -0
  27. data/vendor/local/include/cogl/{cogl/cogl-path.h → cogl-path/cogl-path-types.h} +6 -27
  28. data/vendor/local/include/cogl/cogl-path/cogl-path.h +58 -0
  29. data/vendor/local/include/cogl/{cogl/cogl-path-functions.h → cogl-path/cogl1-path-functions.h} +30 -0
  30. data/vendor/local/include/cogl/{cogl/cogl2-path.h → cogl-path/cogl2-path-functions.h} +87 -70
  31. data/vendor/local/include/cogl/cogl/cogl-atlas-texture.h +230 -0
  32. data/vendor/local/include/cogl/cogl/cogl-attribute-buffer.h +4 -3
  33. data/vendor/local/include/cogl/cogl/cogl-attribute.h +40 -34
  34. data/vendor/local/include/cogl/cogl/cogl-bitmap.h +14 -12
  35. data/vendor/local/include/cogl/cogl/cogl-buffer.h +4 -2
  36. data/vendor/local/include/cogl/cogl/cogl-clip-state.h +0 -13
  37. data/vendor/local/include/cogl/cogl/cogl-clutter.h +2 -0
  38. data/vendor/local/include/cogl/cogl/cogl-color.h +48 -7
  39. data/vendor/local/include/cogl/cogl/cogl-context.h +28 -4
  40. data/vendor/local/include/cogl/cogl/cogl-defines.h +3 -2
  41. data/vendor/local/include/cogl/cogl/cogl-depth-state.h +1 -1
  42. data/vendor/local/include/cogl/cogl/cogl-display.h +26 -3
  43. data/vendor/local/include/cogl/cogl/cogl-enum-types.h +0 -4
  44. data/vendor/local/include/cogl/cogl/cogl-error.h +4 -0
  45. data/vendor/local/include/cogl/cogl/cogl-fence.h +136 -0
  46. data/vendor/local/include/cogl/cogl/cogl-frame-info.h +2 -2
  47. data/vendor/local/include/cogl/cogl/cogl-framebuffer.h +32 -84
  48. data/vendor/local/include/cogl/cogl/cogl-glib-source.h +34 -3
  49. data/vendor/local/include/cogl/cogl/cogl-index-buffer.h +2 -0
  50. data/vendor/local/include/cogl/cogl/cogl-macros.h +253 -0
  51. data/vendor/local/include/cogl/cogl/cogl-material-compat.h +114 -6
  52. data/vendor/local/include/cogl/cogl/cogl-matrix-stack.h +1 -1
  53. data/vendor/local/include/cogl/cogl/cogl-matrix.h +8 -4
  54. data/vendor/local/include/cogl/cogl/cogl-meta-texture.h +8 -8
  55. data/vendor/local/include/cogl/cogl/cogl-object.h +6 -2
  56. data/vendor/local/include/cogl/cogl/cogl-offscreen.h +41 -6
  57. data/vendor/local/include/cogl/cogl/cogl-onscreen-template.h +1 -1
  58. data/vendor/local/include/cogl/cogl/cogl-onscreen.h +265 -45
  59. data/vendor/local/include/cogl/cogl/cogl-output.h +1 -1
  60. data/vendor/local/include/cogl/cogl/cogl-pipeline-layer-state.h +2 -2
  61. data/vendor/local/include/cogl/cogl/cogl-pipeline-state.h +57 -8
  62. data/vendor/local/include/cogl/cogl/cogl-pipeline.h +6 -5
  63. data/vendor/local/include/cogl/cogl/cogl-pixel-buffer.h +6 -2
  64. data/vendor/local/include/cogl/cogl/cogl-poll.h +44 -24
  65. data/vendor/local/include/cogl/cogl/cogl-primitive-texture.h +3 -3
  66. data/vendor/local/include/cogl/cogl/cogl-primitive.h +86 -29
  67. data/vendor/local/include/cogl/cogl/cogl-quaternion.h +7 -7
  68. data/vendor/local/include/cogl/cogl/cogl-renderer.h +7 -2
  69. data/vendor/local/include/cogl/cogl/cogl-shader.h +72 -29
  70. data/vendor/local/include/cogl/cogl/cogl-snippet.h +76 -11
  71. data/vendor/local/include/cogl/cogl/cogl-sub-texture.h +2 -2
  72. data/vendor/local/include/cogl/cogl/cogl-texture-2d-gl.h +5 -5
  73. data/vendor/local/include/cogl/cogl/cogl-texture-2d-sliced.h +167 -1
  74. data/vendor/local/include/cogl/cogl/cogl-texture-2d.h +36 -9
  75. data/vendor/local/include/cogl/cogl/cogl-texture-3d.h +6 -6
  76. data/vendor/local/include/cogl/cogl/cogl-texture-rectangle.h +13 -12
  77. data/vendor/local/include/cogl/cogl/cogl-texture.h +18 -21
  78. data/vendor/local/include/cogl/cogl/cogl-types.h +2 -1
  79. data/vendor/local/include/cogl/cogl/cogl-version.h +150 -3
  80. data/vendor/local/include/cogl/cogl/cogl-vertex-buffer.h +44 -9
  81. data/vendor/local/include/cogl/cogl/cogl-win32-renderer.h +19 -0
  82. data/vendor/local/include/cogl/cogl/cogl.h +13 -9
  83. data/vendor/local/include/cogl/cogl/cogl1-context.h +174 -67
  84. data/vendor/local/include/json-glib-1.0/json-glib/json-version.h +3 -3
  85. data/vendor/local/lib/girepository-1.0/Clutter-1.0.typelib +0 -0
  86. data/vendor/local/lib/girepository-1.0/Cogl-1.0.typelib +0 -0
  87. data/vendor/local/lib/girepository-1.0/CoglPango-1.0.typelib +0 -0
  88. data/vendor/local/lib/girepository-1.0/Json-1.0.typelib +0 -0
  89. data/vendor/local/lib/libclutter-1.0.dll.a +0 -0
  90. data/vendor/local/lib/libclutter-1.0.la +5 -5
  91. data/vendor/local/lib/libcogl-pango.dll.a +0 -0
  92. data/vendor/local/lib/libcogl-pango.la +6 -6
  93. data/vendor/local/lib/libcogl.dll.a +0 -0
  94. data/vendor/local/lib/libcogl.la +5 -5
  95. data/vendor/local/lib/libjson-glib-1.0.dll.a +0 -0
  96. data/vendor/local/lib/libjson-glib-1.0.la +2 -2
  97. data/vendor/local/lib/pkgconfig/cally-1.0.pc +1 -1
  98. data/vendor/local/lib/pkgconfig/clutter-1.0.pc +2 -2
  99. data/vendor/local/lib/pkgconfig/clutter-win32-1.0.pc +2 -2
  100. data/vendor/local/lib/pkgconfig/cogl-1.0.pc +1 -1
  101. data/vendor/local/lib/pkgconfig/cogl-gl-1.0.pc +1 -1
  102. data/vendor/local/lib/pkgconfig/cogl-pango-1.0.pc +1 -1
  103. data/vendor/local/lib/pkgconfig/cogl-pango-2.0-experimental.pc +1 -1
  104. data/vendor/local/lib/pkgconfig/json-glib-1.0.pc +1 -1
  105. data/vendor/local/share/gir-1.0/Cally-1.0.gir +74 -74
  106. data/vendor/local/share/gir-1.0/Clutter-1.0.gir +6548 -6241
  107. data/vendor/local/share/gir-1.0/Cogl-1.0.gir +1906 -1405
  108. data/vendor/local/share/gir-1.0/CoglPango-1.0.gir +69 -46
  109. data/vendor/local/share/gir-1.0/Json-1.0.gir +694 -694
  110. data/vendor/local/share/gtk-doc/html/cally/CallyActor.html +12 -15
  111. data/vendor/local/share/gtk-doc/html/cally/CallyClone.html +12 -15
  112. data/vendor/local/share/gtk-doc/html/cally/CallyGroup.html +12 -15
  113. data/vendor/local/share/gtk-doc/html/cally/CallyRectangle.html +12 -15
  114. data/vendor/local/share/gtk-doc/html/cally/CallyRoot.html +12 -15
  115. data/vendor/local/share/gtk-doc/html/cally/CallyStage.html +12 -15
  116. data/vendor/local/share/gtk-doc/html/cally/CallyText.html +12 -15
  117. data/vendor/local/share/gtk-doc/html/cally/CallyTexture.html +12 -15
  118. data/vendor/local/share/gtk-doc/html/cally/CallyUtil.html +12 -15
  119. data/vendor/local/share/gtk-doc/html/cally/cally-General-API.html +12 -15
  120. data/vendor/local/share/gtk-doc/html/cally/callyannotationglossary.html +12 -12
  121. data/vendor/local/share/gtk-doc/html/cally/callybase.html +9 -9
  122. data/vendor/local/share/gtk-doc/html/cally/callyobjecthierarchy.html +9 -9
  123. data/vendor/local/share/gtk-doc/html/cally/callyobjectindex.html +9 -9
  124. data/vendor/local/share/gtk-doc/html/cally/callyobjects.html +9 -9
  125. data/vendor/local/share/gtk-doc/html/cally/ch01.html +9 -9
  126. data/vendor/local/share/gtk-doc/html/cally/ch02.html +9 -9
  127. data/vendor/local/share/gtk-doc/html/cally/clutter-overview.html +9 -9
  128. data/vendor/local/share/gtk-doc/html/cally/home.png +0 -0
  129. data/vendor/local/share/gtk-doc/html/cally/index.html +4 -4
  130. data/vendor/local/share/gtk-doc/html/cally/index.sgml +1 -1
  131. data/vendor/local/share/gtk-doc/html/cally/ix01.html +23 -26
  132. data/vendor/local/share/gtk-doc/html/cally/ix02.html +9 -9
  133. data/vendor/local/share/gtk-doc/html/cally/ix03.html +23 -26
  134. data/vendor/local/share/gtk-doc/html/cally/ix04.html +10 -13
  135. data/vendor/local/share/gtk-doc/html/cally/left-insensitive.png +0 -0
  136. data/vendor/local/share/gtk-doc/html/cally/left.png +0 -0
  137. data/vendor/local/share/gtk-doc/html/cally/license.html +9 -9
  138. data/vendor/local/share/gtk-doc/html/cally/right-insensitive.png +0 -0
  139. data/vendor/local/share/gtk-doc/html/cally/right.png +0 -0
  140. data/vendor/local/share/gtk-doc/html/cally/style.css +71 -16
  141. data/vendor/local/share/gtk-doc/html/cally/up-insensitive.png +0 -0
  142. data/vendor/local/share/gtk-doc/html/cally/up.png +0 -0
  143. data/vendor/local/share/gtk-doc/html/clutter/ClutterAction.html +12 -15
  144. data/vendor/local/share/gtk-doc/html/clutter/ClutterActor.html +196 -87
  145. data/vendor/local/share/gtk-doc/html/clutter/ClutterActorMeta.html +12 -15
  146. data/vendor/local/share/gtk-doc/html/clutter/ClutterAlignConstraint.html +12 -15
  147. data/vendor/local/share/gtk-doc/html/clutter/ClutterAlpha.html +28 -31
  148. data/vendor/local/share/gtk-doc/html/clutter/ClutterAnimatable.html +13 -16
  149. data/vendor/local/share/gtk-doc/html/clutter/ClutterAnimator.html +37 -40
  150. data/vendor/local/share/gtk-doc/html/clutter/ClutterBackend.html +51 -31
  151. data/vendor/local/share/gtk-doc/html/clutter/ClutterBehaviour.html +28 -31
  152. data/vendor/local/share/gtk-doc/html/clutter/ClutterBehaviourDepth.html +19 -22
  153. data/vendor/local/share/gtk-doc/html/clutter/ClutterBehaviourEllipse.html +15 -18
  154. data/vendor/local/share/gtk-doc/html/clutter/ClutterBehaviourOpacity.html +19 -22
  155. data/vendor/local/share/gtk-doc/html/clutter/ClutterBehaviourPath.html +21 -24
  156. data/vendor/local/share/gtk-doc/html/clutter/ClutterBehaviourRotate.html +14 -17
  157. data/vendor/local/share/gtk-doc/html/clutter/ClutterBehaviourScale.html +21 -24
  158. data/vendor/local/share/gtk-doc/html/clutter/ClutterBinLayout.html +51 -54
  159. data/vendor/local/share/gtk-doc/html/clutter/ClutterBindConstraint.html +12 -15
  160. data/vendor/local/share/gtk-doc/html/clutter/ClutterBlurEffect.html +12 -15
  161. data/vendor/local/share/gtk-doc/html/clutter/ClutterBox.html +22 -25
  162. data/vendor/local/share/gtk-doc/html/clutter/ClutterBoxLayout.html +31 -34
  163. data/vendor/local/share/gtk-doc/html/clutter/ClutterBrightnessContrastEffect.html +12 -15
  164. data/vendor/local/share/gtk-doc/html/clutter/ClutterCairoTexture.html +59 -62
  165. data/vendor/local/share/gtk-doc/html/clutter/ClutterCanvas.html +49 -24
  166. data/vendor/local/share/gtk-doc/html/clutter/ClutterChildMeta.html +12 -15
  167. data/vendor/local/share/gtk-doc/html/clutter/ClutterClickAction.html +14 -17
  168. data/vendor/local/share/gtk-doc/html/clutter/ClutterClone.html +13 -16
  169. data/vendor/local/share/gtk-doc/html/clutter/ClutterColorizeEffect.html +12 -15
  170. data/vendor/local/share/gtk-doc/html/clutter/ClutterConstraint.html +14 -17
  171. data/vendor/local/share/gtk-doc/html/clutter/ClutterContainer.html +24 -27
  172. data/vendor/local/share/gtk-doc/html/clutter/ClutterContent.html +12 -15
  173. data/vendor/local/share/gtk-doc/html/clutter/ClutterDeformEffect.html +12 -15
  174. data/vendor/local/share/gtk-doc/html/clutter/ClutterDesaturateEffect.html +12 -15
  175. data/vendor/local/share/gtk-doc/html/clutter/ClutterDeviceManager.html +13 -16
  176. data/vendor/local/share/gtk-doc/html/clutter/ClutterDragAction.html +14 -17
  177. data/vendor/local/share/gtk-doc/html/clutter/ClutterDropAction.html +13 -18
  178. data/vendor/local/share/gtk-doc/html/clutter/ClutterEffect.html +12 -15
  179. data/vendor/local/share/gtk-doc/html/clutter/ClutterFixedLayout.html +12 -15
  180. data/vendor/local/share/gtk-doc/html/clutter/ClutterFlowLayout.html +107 -16
  181. data/vendor/local/share/gtk-doc/html/clutter/ClutterGestureAction.html +33 -15
  182. data/vendor/local/share/gtk-doc/html/clutter/ClutterGridLayout.html +12 -15
  183. data/vendor/local/share/gtk-doc/html/clutter/ClutterGroup.html +16 -19
  184. data/vendor/local/share/gtk-doc/html/clutter/ClutterImage.html +26 -41
  185. data/vendor/local/share/gtk-doc/html/clutter/ClutterInputDevice.html +44 -17
  186. data/vendor/local/share/gtk-doc/html/clutter/ClutterKeyframeTransition.html +12 -15
  187. data/vendor/local/share/gtk-doc/html/clutter/ClutterLayoutManager.html +15 -18
  188. data/vendor/local/share/gtk-doc/html/clutter/ClutterLayoutMeta.html +12 -15
  189. data/vendor/local/share/gtk-doc/html/clutter/ClutterListModel.html +12 -15
  190. data/vendor/local/share/gtk-doc/html/clutter/ClutterMedia.html +39 -42
  191. data/vendor/local/share/gtk-doc/html/clutter/ClutterModel.html +12 -15
  192. data/vendor/local/share/gtk-doc/html/clutter/ClutterModelIter.html +12 -15
  193. data/vendor/local/share/gtk-doc/html/clutter/ClutterOffscreenEffect.html +60 -15
  194. data/vendor/local/share/gtk-doc/html/clutter/ClutterPageTurnEffect.html +12 -15
  195. data/vendor/local/share/gtk-doc/html/clutter/ClutterPaintNode.html +12 -15
  196. data/vendor/local/share/gtk-doc/html/clutter/ClutterPanAction.html +12 -15
  197. data/vendor/local/share/gtk-doc/html/clutter/ClutterPath.html +16 -19
  198. data/vendor/local/share/gtk-doc/html/clutter/ClutterPathConstraint.html +12 -15
  199. data/vendor/local/share/gtk-doc/html/clutter/ClutterPropertyTransition.html +12 -15
  200. data/vendor/local/share/gtk-doc/html/clutter/ClutterRectangle.html +12 -15
  201. data/vendor/local/share/gtk-doc/html/clutter/ClutterRotateAction.html +12 -15
  202. data/vendor/local/share/gtk-doc/html/clutter/ClutterScore.html +32 -35
  203. data/vendor/local/share/gtk-doc/html/clutter/ClutterScript.html +14 -17
  204. data/vendor/local/share/gtk-doc/html/clutter/ClutterScriptable.html +13 -16
  205. data/vendor/local/share/gtk-doc/html/clutter/ClutterScrollActor.html +12 -15
  206. data/vendor/local/share/gtk-doc/html/clutter/ClutterSettings.html +16 -19
  207. data/vendor/local/share/gtk-doc/html/clutter/ClutterShaderEffect.html +12 -15
  208. data/vendor/local/share/gtk-doc/html/clutter/ClutterSnapConstraint.html +12 -15
  209. data/vendor/local/share/gtk-doc/html/clutter/ClutterStage.html +731 -686
  210. data/vendor/local/share/gtk-doc/html/clutter/ClutterState.html +39 -42
  211. data/vendor/local/share/gtk-doc/html/clutter/ClutterSwipeAction.html +13 -16
  212. data/vendor/local/share/gtk-doc/html/clutter/ClutterTableLayout.html +27 -30
  213. data/vendor/local/share/gtk-doc/html/clutter/ClutterTapAction.html +12 -15
  214. data/vendor/local/share/gtk-doc/html/clutter/ClutterText.html +95 -27
  215. data/vendor/local/share/gtk-doc/html/clutter/ClutterTextBuffer.html +12 -15
  216. data/vendor/local/share/gtk-doc/html/clutter/ClutterTexture.html +47 -50
  217. data/vendor/local/share/gtk-doc/html/clutter/ClutterTimeline.html +20 -23
  218. data/vendor/local/share/gtk-doc/html/clutter/ClutterTransition.html +13 -16
  219. data/vendor/local/share/gtk-doc/html/clutter/ClutterTransitionGroup.html +12 -15
  220. data/vendor/local/share/gtk-doc/html/clutter/ClutterZoomAction.html +12 -15
  221. data/vendor/local/share/gtk-doc/html/clutter/annotation-glossary.html +59 -59
  222. data/vendor/local/share/gtk-doc/html/clutter/building-clutter.html +9 -9
  223. data/vendor/local/share/gtk-doc/html/clutter/ch01.html +9 -9
  224. data/vendor/local/share/gtk-doc/html/clutter/ch02.html +9 -9
  225. data/vendor/local/share/gtk-doc/html/clutter/ch03.html +9 -9
  226. data/vendor/local/share/gtk-doc/html/clutter/ch04.html +9 -9
  227. data/vendor/local/share/gtk-doc/html/clutter/ch05.html +9 -9
  228. data/vendor/local/share/gtk-doc/html/clutter/ch06.html +9 -9
  229. data/vendor/local/share/gtk-doc/html/clutter/ch07.html +9 -9
  230. data/vendor/local/share/gtk-doc/html/clutter/ch08.html +9 -9
  231. data/vendor/local/share/gtk-doc/html/clutter/ch09.html +9 -9
  232. data/vendor/local/share/gtk-doc/html/clutter/ch10.html +9 -9
  233. data/vendor/local/share/gtk-doc/html/clutter/ch11.html +9 -9
  234. data/vendor/local/share/gtk-doc/html/clutter/ch12.html +9 -9
  235. data/vendor/local/share/gtk-doc/html/clutter/clutter-Base-geometric-types.html +33 -24
  236. data/vendor/local/share/gtk-doc/html/clutter/clutter-ClutterGLXTexturePixmap.html +34 -35
  237. data/vendor/local/share/gtk-doc/html/clutter/clutter-ClutterWaylandSurface.html +18 -21
  238. data/vendor/local/share/gtk-doc/html/clutter/clutter-ClutterX11TexturePixmap.html +12 -15
  239. data/vendor/local/share/gtk-doc/html/clutter/clutter-Colors.html +12 -15
  240. data/vendor/local/share/gtk-doc/html/clutter/clutter-EGL-Specific-Support.html +14 -17
  241. data/vendor/local/share/gtk-doc/html/clutter/clutter-Events.html +96 -37
  242. data/vendor/local/share/gtk-doc/html/clutter/clutter-Features.html +12 -15
  243. data/vendor/local/share/gtk-doc/html/clutter/clutter-GDK-Specific-Support.html +13 -16
  244. data/vendor/local/share/gtk-doc/html/clutter/clutter-General.html +32 -35
  245. data/vendor/local/share/gtk-doc/html/clutter/clutter-Implicit-Animations.html +60 -63
  246. data/vendor/local/share/gtk-doc/html/clutter/clutter-Intel-CE3100-CE4100-Specific-Support.html +14 -17
  247. data/vendor/local/share/gtk-doc/html/clutter/clutter-Key-Bindings.html +12 -15
  248. data/vendor/local/share/gtk-doc/html/clutter/clutter-Paint-Nodes.html +12 -15
  249. data/vendor/local/share/gtk-doc/html/clutter/clutter-Shaders.html +33 -36
  250. data/vendor/local/share/gtk-doc/html/clutter/clutter-Stage-Manager.html +13 -16
  251. data/vendor/local/share/gtk-doc/html/clutter/clutter-Unit-conversion.html +14 -17
  252. data/vendor/local/share/gtk-doc/html/clutter/clutter-Utilities.html +23 -26
  253. data/vendor/local/share/gtk-doc/html/clutter/clutter-Value-intervals.html +20 -15
  254. data/vendor/local/share/gtk-doc/html/clutter/clutter-Versioning-Macros.html +31 -22
  255. data/vendor/local/share/gtk-doc/html/clutter/clutter-Wayland-compositor-specific-support.html +13 -16
  256. data/vendor/local/share/gtk-doc/html/clutter/clutter-Wayland-specific-support.html +259 -0
  257. data/vendor/local/share/gtk-doc/html/clutter/clutter-Win32-Specific-Support.html +12 -15
  258. data/vendor/local/share/gtk-doc/html/clutter/clutter-X11-Specific-Support.html +19 -22
  259. data/vendor/local/share/gtk-doc/html/clutter/clutter-overview.html +9 -9
  260. data/vendor/local/share/gtk-doc/html/clutter/clutter.devhelp2 +48 -25
  261. data/vendor/local/share/gtk-doc/html/clutter/clutteranimation.html +9 -9
  262. data/vendor/local/share/gtk-doc/html/clutter/clutterbackends.html +12 -9
  263. data/vendor/local/share/gtk-doc/html/clutter/clutterbase.html +9 -9
  264. data/vendor/local/share/gtk-doc/html/clutter/clutterglossary.html +9 -9
  265. data/vendor/local/share/gtk-doc/html/clutter/clutterobjecthierarchy.html +9 -9
  266. data/vendor/local/share/gtk-doc/html/clutter/clutterobjectindex.html +9 -9
  267. data/vendor/local/share/gtk-doc/html/clutter/clutterobjects.html +9 -9
  268. data/vendor/local/share/gtk-doc/html/clutter/cluttertools.html +9 -9
  269. data/vendor/local/share/gtk-doc/html/clutter/deprecated.html +9 -9
  270. data/vendor/local/share/gtk-doc/html/clutter/go01.html +9 -9
  271. data/vendor/local/share/gtk-doc/html/clutter/home.png +0 -0
  272. data/vendor/local/share/gtk-doc/html/clutter/index.html +7 -4
  273. data/vendor/local/share/gtk-doc/html/clutter/index.sgml +55 -26
  274. data/vendor/local/share/gtk-doc/html/clutter/iterating-paths.html +9 -9
  275. data/vendor/local/share/gtk-doc/html/clutter/ix01.html +155 -70
  276. data/vendor/local/share/gtk-doc/html/clutter/ix02.html +89 -45
  277. data/vendor/local/share/gtk-doc/html/clutter/ix03.html +39 -34
  278. data/vendor/local/share/gtk-doc/html/clutter/ix04.html +37 -40
  279. data/vendor/local/share/gtk-doc/html/clutter/ix05.html +33 -36
  280. data/vendor/local/share/gtk-doc/html/clutter/ix06.html +40 -43
  281. data/vendor/local/share/gtk-doc/html/clutter/ix07.html +39 -42
  282. data/vendor/local/share/gtk-doc/html/clutter/ix08.html +35 -38
  283. data/vendor/local/share/gtk-doc/html/clutter/ix09.html +33 -36
  284. data/vendor/local/share/gtk-doc/html/clutter/ix10.html +25 -28
  285. data/vendor/local/share/gtk-doc/html/clutter/ix11.html +31 -34
  286. data/vendor/local/share/gtk-doc/html/clutter/ix12.html +56 -47
  287. data/vendor/local/share/gtk-doc/html/clutter/ix13.html +49 -52
  288. data/vendor/local/share/gtk-doc/html/clutter/ix14.html +36 -24
  289. data/vendor/local/share/gtk-doc/html/clutter/left-insensitive.png +0 -0
  290. data/vendor/local/share/gtk-doc/html/clutter/left.png +0 -0
  291. data/vendor/local/share/gtk-doc/html/clutter/license.html +9 -9
  292. data/vendor/local/share/gtk-doc/html/clutter/migrating-ClutterAnimation.html +9 -9
  293. data/vendor/local/share/gtk-doc/html/clutter/migrating-ClutterBehaviour.html +9 -9
  294. data/vendor/local/share/gtk-doc/html/clutter/migrating-ClutterEffect.html +9 -9
  295. data/vendor/local/share/gtk-doc/html/clutter/migrating-ClutterPath.html +10 -10
  296. data/vendor/local/share/gtk-doc/html/clutter/migration.html +9 -9
  297. data/vendor/local/share/gtk-doc/html/clutter/pt09.html +9 -9
  298. data/vendor/local/share/gtk-doc/html/clutter/right-insensitive.png +0 -0
  299. data/vendor/local/share/gtk-doc/html/clutter/right.png +0 -0
  300. data/vendor/local/share/gtk-doc/html/clutter/running-clutter.html +9 -9
  301. data/vendor/local/share/gtk-doc/html/clutter/style.css +71 -16
  302. data/vendor/local/share/gtk-doc/html/clutter/up-insensitive.png +0 -0
  303. data/vendor/local/share/gtk-doc/html/clutter/up.png +0 -0
  304. data/vendor/local/share/gtk-doc/html/clutter/using-cairo.html +9 -9
  305. data/vendor/local/share/gtk-doc/html/json-glib/index.html +1 -1
  306. data/vendor/local/share/gtk-doc/html/json-glib/json-glib-Versioning-information.html +3 -3
  307. data/vendor/local/share/locale/an/LC_MESSAGES/clutter-1.0.mo +0 -0
  308. data/vendor/local/share/locale/an/LC_MESSAGES/cogl.mo +0 -0
  309. data/vendor/local/share/locale/ar/LC_MESSAGES/clutter-1.0.mo +0 -0
  310. data/vendor/local/share/locale/ar/LC_MESSAGES/cogl.mo +0 -0
  311. data/vendor/local/share/locale/as/LC_MESSAGES/clutter-1.0.mo +0 -0
  312. data/vendor/local/share/locale/as/LC_MESSAGES/cogl.mo +0 -0
  313. data/vendor/local/share/locale/as/LC_MESSAGES/json-glib-1.0.mo +0 -0
  314. data/vendor/local/share/locale/ast/LC_MESSAGES/clutter-1.0.mo +0 -0
  315. data/vendor/local/share/locale/ast/LC_MESSAGES/cogl.mo +0 -0
  316. data/vendor/local/share/locale/az_IR/LC_MESSAGES/clutter-1.0.mo +0 -0
  317. data/vendor/local/share/locale/be/LC_MESSAGES/clutter-1.0.mo +0 -0
  318. data/vendor/local/share/locale/be/LC_MESSAGES/cogl.mo +0 -0
  319. data/vendor/local/share/locale/bg/LC_MESSAGES/clutter-1.0.mo +0 -0
  320. data/vendor/local/share/locale/bg/LC_MESSAGES/cogl.mo +0 -0
  321. data/vendor/local/share/locale/bg/LC_MESSAGES/json-glib-1.0.mo +0 -0
  322. data/vendor/local/share/locale/bn_IN/LC_MESSAGES/json-glib-1.0.mo +0 -0
  323. data/vendor/local/share/locale/ca/LC_MESSAGES/clutter-1.0.mo +0 -0
  324. data/vendor/local/share/locale/ca/LC_MESSAGES/cogl.mo +0 -0
  325. data/vendor/local/share/locale/ca/LC_MESSAGES/json-glib-1.0.mo +0 -0
  326. data/vendor/local/share/locale/ca@valencia/LC_MESSAGES/clutter-1.0.mo +0 -0
  327. data/vendor/local/share/locale/ca@valencia/LC_MESSAGES/cogl.mo +0 -0
  328. data/vendor/local/share/locale/ca@valencia/LC_MESSAGES/json-glib-1.0.mo +0 -0
  329. data/vendor/local/share/locale/cs/LC_MESSAGES/clutter-1.0.mo +0 -0
  330. data/vendor/local/share/locale/cs/LC_MESSAGES/cogl.mo +0 -0
  331. data/vendor/local/share/locale/cs/LC_MESSAGES/json-glib-1.0.mo +0 -0
  332. data/vendor/local/share/locale/da/LC_MESSAGES/clutter-1.0.mo +0 -0
  333. data/vendor/local/share/locale/da/LC_MESSAGES/cogl.mo +0 -0
  334. data/vendor/local/share/locale/da/LC_MESSAGES/json-glib-1.0.mo +0 -0
  335. data/vendor/local/share/locale/de/LC_MESSAGES/clutter-1.0.mo +0 -0
  336. data/vendor/local/share/locale/de/LC_MESSAGES/cogl.mo +0 -0
  337. data/vendor/local/share/locale/de/LC_MESSAGES/json-glib-1.0.mo +0 -0
  338. data/vendor/local/share/locale/el/LC_MESSAGES/clutter-1.0.mo +0 -0
  339. data/vendor/local/share/locale/el/LC_MESSAGES/cogl.mo +0 -0
  340. data/vendor/local/share/locale/el/LC_MESSAGES/json-glib-1.0.mo +0 -0
  341. data/vendor/local/share/locale/en_CA/LC_MESSAGES/cogl.mo +0 -0
  342. data/vendor/local/share/locale/en_GB/LC_MESSAGES/clutter-1.0.mo +0 -0
  343. data/vendor/local/share/locale/en_GB/LC_MESSAGES/cogl.mo +0 -0
  344. data/vendor/local/share/locale/en_GB/LC_MESSAGES/json-glib-1.0.mo +0 -0
  345. data/vendor/local/share/locale/eo/LC_MESSAGES/clutter-1.0.mo +0 -0
  346. data/vendor/local/share/locale/eo/LC_MESSAGES/cogl.mo +0 -0
  347. data/vendor/local/share/locale/eo/LC_MESSAGES/json-glib-1.0.mo +0 -0
  348. data/vendor/local/share/locale/es/LC_MESSAGES/clutter-1.0.mo +0 -0
  349. data/vendor/local/share/locale/es/LC_MESSAGES/cogl.mo +0 -0
  350. data/vendor/local/share/locale/es/LC_MESSAGES/json-glib-1.0.mo +0 -0
  351. data/vendor/local/share/locale/et/LC_MESSAGES/json-glib-1.0.mo +0 -0
  352. data/vendor/local/share/locale/eu/LC_MESSAGES/cogl.mo +0 -0
  353. data/vendor/local/share/locale/eu/LC_MESSAGES/json-glib-1.0.mo +0 -0
  354. data/vendor/local/share/locale/fa/LC_MESSAGES/clutter-1.0.mo +0 -0
  355. data/vendor/local/share/locale/fa/LC_MESSAGES/cogl.mo +0 -0
  356. data/vendor/local/share/locale/fi/LC_MESSAGES/clutter-1.0.mo +0 -0
  357. data/vendor/local/share/locale/fr/LC_MESSAGES/clutter-1.0.mo +0 -0
  358. data/vendor/local/share/locale/fr/LC_MESSAGES/cogl.mo +0 -0
  359. data/vendor/local/share/locale/fr/LC_MESSAGES/json-glib-1.0.mo +0 -0
  360. data/vendor/local/share/locale/gl/LC_MESSAGES/clutter-1.0.mo +0 -0
  361. data/vendor/local/share/locale/gl/LC_MESSAGES/cogl.mo +0 -0
  362. data/vendor/local/share/locale/gl/LC_MESSAGES/json-glib-1.0.mo +0 -0
  363. data/vendor/local/share/locale/he/LC_MESSAGES/clutter-1.0.mo +0 -0
  364. data/vendor/local/share/locale/he/LC_MESSAGES/cogl.mo +0 -0
  365. data/vendor/local/share/locale/hi/LC_MESSAGES/clutter-1.0.mo +0 -0
  366. data/vendor/local/share/locale/hi/LC_MESSAGES/cogl.mo +0 -0
  367. data/vendor/local/share/locale/hi/LC_MESSAGES/json-glib-1.0.mo +0 -0
  368. data/vendor/local/share/locale/hu/LC_MESSAGES/clutter-1.0.mo +0 -0
  369. data/vendor/local/share/locale/hu/LC_MESSAGES/cogl.mo +0 -0
  370. data/vendor/local/share/locale/hu/LC_MESSAGES/json-glib-1.0.mo +0 -0
  371. data/vendor/local/share/locale/id/LC_MESSAGES/clutter-1.0.mo +0 -0
  372. data/vendor/local/share/locale/id/LC_MESSAGES/cogl.mo +0 -0
  373. data/vendor/local/share/locale/id/LC_MESSAGES/json-glib-1.0.mo +0 -0
  374. data/vendor/local/share/locale/it/LC_MESSAGES/clutter-1.0.mo +0 -0
  375. data/vendor/local/share/locale/it/LC_MESSAGES/cogl.mo +0 -0
  376. data/vendor/local/share/locale/it/LC_MESSAGES/json-glib-1.0.mo +0 -0
  377. data/vendor/local/share/locale/ja/LC_MESSAGES/clutter-1.0.mo +0 -0
  378. data/vendor/local/share/locale/ja/LC_MESSAGES/cogl.mo +0 -0
  379. data/vendor/local/share/locale/ja/LC_MESSAGES/json-glib-1.0.mo +0 -0
  380. data/vendor/local/share/locale/km/LC_MESSAGES/clutter-1.0.mo +0 -0
  381. data/vendor/local/share/locale/km/LC_MESSAGES/cogl.mo +0 -0
  382. data/vendor/local/share/locale/kn/LC_MESSAGES/clutter-1.0.mo +0 -0
  383. data/vendor/local/share/locale/kn/LC_MESSAGES/cogl.mo +0 -0
  384. data/vendor/local/share/locale/ko/LC_MESSAGES/cogl.mo +0 -0
  385. data/vendor/local/share/locale/ko/LC_MESSAGES/json-glib-1.0.mo +0 -0
  386. data/vendor/local/share/locale/ky/LC_MESSAGES/json-glib-1.0.mo +0 -0
  387. data/vendor/local/share/locale/lt/LC_MESSAGES/clutter-1.0.mo +0 -0
  388. data/vendor/local/share/locale/lt/LC_MESSAGES/cogl.mo +0 -0
  389. data/vendor/local/share/locale/lt/LC_MESSAGES/json-glib-1.0.mo +0 -0
  390. data/vendor/local/share/locale/lv/LC_MESSAGES/clutter-1.0.mo +0 -0
  391. data/vendor/local/share/locale/lv/LC_MESSAGES/cogl.mo +0 -0
  392. data/vendor/local/share/locale/lv/LC_MESSAGES/json-glib-1.0.mo +0 -0
  393. data/vendor/local/share/locale/mk/LC_MESSAGES/clutter-1.0.mo +0 -0
  394. data/vendor/local/share/locale/ml/LC_MESSAGES/clutter-1.0.mo +0 -0
  395. data/vendor/local/share/locale/ml/LC_MESSAGES/cogl.mo +0 -0
  396. data/vendor/local/share/locale/ml/LC_MESSAGES/json-glib-1.0.mo +0 -0
  397. data/vendor/local/share/locale/nb/LC_MESSAGES/clutter-1.0.mo +0 -0
  398. data/vendor/local/share/locale/nb/LC_MESSAGES/cogl.mo +0 -0
  399. data/vendor/local/share/locale/nb/LC_MESSAGES/json-glib-1.0.mo +0 -0
  400. data/vendor/local/share/locale/nl/LC_MESSAGES/clutter-1.0.mo +0 -0
  401. data/vendor/local/share/locale/nl/LC_MESSAGES/cogl.mo +0 -0
  402. data/vendor/local/share/locale/or/LC_MESSAGES/clutter-1.0.mo +0 -0
  403. data/vendor/local/share/locale/or/LC_MESSAGES/cogl.mo +0 -0
  404. data/vendor/local/share/locale/or/LC_MESSAGES/json-glib-1.0.mo +0 -0
  405. data/vendor/local/share/locale/pa/LC_MESSAGES/clutter-1.0.mo +0 -0
  406. data/vendor/local/share/locale/pa/LC_MESSAGES/cogl.mo +0 -0
  407. data/vendor/local/share/locale/pa/LC_MESSAGES/json-glib-1.0.mo +0 -0
  408. data/vendor/local/share/locale/pl/LC_MESSAGES/clutter-1.0.mo +0 -0
  409. data/vendor/local/share/locale/pl/LC_MESSAGES/cogl.mo +0 -0
  410. data/vendor/local/share/locale/pl/LC_MESSAGES/json-glib-1.0.mo +0 -0
  411. data/vendor/local/share/locale/ps/LC_MESSAGES/clutter-1.0.mo +0 -0
  412. data/vendor/local/share/locale/pt/LC_MESSAGES/clutter-1.0.mo +0 -0
  413. data/vendor/local/share/locale/pt/LC_MESSAGES/cogl.mo +0 -0
  414. data/vendor/local/share/locale/pt/LC_MESSAGES/json-glib-1.0.mo +0 -0
  415. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/clutter-1.0.mo +0 -0
  416. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/cogl.mo +0 -0
  417. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/json-glib-1.0.mo +0 -0
  418. data/vendor/local/share/locale/ro/LC_MESSAGES/clutter-1.0.mo +0 -0
  419. data/vendor/local/share/locale/ru/LC_MESSAGES/clutter-1.0.mo +0 -0
  420. data/vendor/local/share/locale/ru/LC_MESSAGES/cogl.mo +0 -0
  421. data/vendor/local/share/locale/ru/LC_MESSAGES/json-glib-1.0.mo +0 -0
  422. data/vendor/local/share/locale/sk/LC_MESSAGES/clutter-1.0.mo +0 -0
  423. data/vendor/local/share/locale/sk/LC_MESSAGES/cogl.mo +0 -0
  424. data/vendor/local/share/locale/sk/LC_MESSAGES/json-glib-1.0.mo +0 -0
  425. data/vendor/local/share/locale/sl/LC_MESSAGES/clutter-1.0.mo +0 -0
  426. data/vendor/local/share/locale/sl/LC_MESSAGES/cogl.mo +0 -0
  427. data/vendor/local/share/locale/sl/LC_MESSAGES/json-glib-1.0.mo +0 -0
  428. data/vendor/local/share/locale/sr/LC_MESSAGES/clutter-1.0.mo +0 -0
  429. data/vendor/local/share/locale/sr/LC_MESSAGES/cogl.mo +0 -0
  430. data/vendor/local/share/locale/sr/LC_MESSAGES/json-glib-1.0.mo +0 -0
  431. data/vendor/local/share/locale/sr@latin/LC_MESSAGES/clutter-1.0.mo +0 -0
  432. data/vendor/local/share/locale/sr@latin/LC_MESSAGES/cogl.mo +0 -0
  433. data/vendor/local/share/locale/sr@latin/LC_MESSAGES/json-glib-1.0.mo +0 -0
  434. data/vendor/local/share/locale/sv/LC_MESSAGES/clutter-1.0.mo +0 -0
  435. data/vendor/local/share/locale/sv/LC_MESSAGES/cogl.mo +0 -0
  436. data/vendor/local/share/locale/sv/LC_MESSAGES/json-glib-1.0.mo +0 -0
  437. data/vendor/local/share/locale/ta/LC_MESSAGES/clutter-1.0.mo +0 -0
  438. data/vendor/local/share/locale/ta/LC_MESSAGES/cogl.mo +0 -0
  439. data/vendor/local/share/locale/te/LC_MESSAGES/clutter-1.0.mo +0 -0
  440. data/vendor/local/share/locale/te/LC_MESSAGES/cogl.mo +0 -0
  441. data/vendor/local/share/locale/te/LC_MESSAGES/json-glib-1.0.mo +0 -0
  442. data/vendor/local/share/locale/tg/LC_MESSAGES/json-glib-1.0.mo +0 -0
  443. data/vendor/local/share/locale/th/LC_MESSAGES/cogl.mo +0 -0
  444. data/vendor/local/share/locale/tr/LC_MESSAGES/clutter-1.0.mo +0 -0
  445. data/vendor/local/share/locale/tr/LC_MESSAGES/cogl.mo +0 -0
  446. data/vendor/local/share/locale/tr/LC_MESSAGES/json-glib-1.0.mo +0 -0
  447. data/vendor/local/share/locale/ug/LC_MESSAGES/clutter-1.0.mo +0 -0
  448. data/vendor/local/share/locale/ug/LC_MESSAGES/cogl.mo +0 -0
  449. data/vendor/local/share/locale/ug/LC_MESSAGES/json-glib-1.0.mo +0 -0
  450. data/vendor/local/share/locale/uk/LC_MESSAGES/clutter-1.0.mo +0 -0
  451. data/vendor/local/share/locale/uk/LC_MESSAGES/cogl.mo +0 -0
  452. data/vendor/local/share/locale/uk/LC_MESSAGES/json-glib-1.0.mo +0 -0
  453. data/vendor/local/share/locale/ur/LC_MESSAGES/clutter-1.0.mo +0 -0
  454. data/vendor/local/share/locale/vi/LC_MESSAGES/cogl.mo +0 -0
  455. data/vendor/local/share/locale/vi/LC_MESSAGES/json-glib-1.0.mo +0 -0
  456. data/vendor/local/share/locale/yi/LC_MESSAGES/clutter-1.0.mo +0 -0
  457. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/clutter-1.0.mo +0 -0
  458. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/cogl.mo +0 -0
  459. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/json-glib-1.0.mo +0 -0
  460. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/clutter-1.0.mo +0 -0
  461. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/cogl.mo +0 -0
  462. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/json-glib-1.0.mo +0 -0
  463. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/clutter-1.0.mo +0 -0
  464. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/cogl.mo +0 -0
  465. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/json-glib-1.0.mo +0 -0
  466. metadata +39 -51
  467. data/vendor/local/bin/libcogl-12.dll +0 -0
  468. data/vendor/local/bin/libcogl-pango-12.dll +0 -0
  469. data/vendor/local/bin/libglut-0.dll +0 -0
  470. data/vendor/local/include/GL/freeglut.h +0 -22
  471. data/vendor/local/include/GL/freeglut_ext.h +0 -239
  472. data/vendor/local/include/GL/freeglut_std.h +0 -636
  473. data/vendor/local/include/GL/glut.h +0 -21
  474. data/vendor/local/include/cogl/cogl/cogl2-compatibility.h +0 -55
  475. data/vendor/local/lib/libglut.a +0 -0
  476. data/vendor/local/lib/libglut.dll.a +0 -0
  477. data/vendor/local/lib/libglut.la +0 -41
  478. data/vendor/local/share/license/freeglut/AUTHORS +0 -39
  479. data/vendor/local/share/license/freeglut/COPYING +0 -27
  480. data/vendor/local/share/locale/tg/LC_MESSAGES/clutter-1.0.mo +0 -0
@@ -190,7 +190,7 @@ typedef struct _CoglMatrixEntry CoglMatrixEntry;
190
190
  * cogl_matrix_stack_rotate(), cogl_matrix_stack_scale() and
191
191
  * cogl_matrix_stack_translate().
192
192
  *
193
- * Return value: A newly allocated #CoglMatrixStack
193
+ * Return value: (transfer full): A newly allocated #CoglMatrixStack
194
194
  */
195
195
  CoglMatrixStack *
196
196
  cogl_matrix_stack_new (CoglContext *ctx);
@@ -27,14 +27,17 @@
27
27
  #ifndef __COGL_MATRIX_H
28
28
  #define __COGL_MATRIX_H
29
29
 
30
+ #include <cogl/cogl-defines.h>
31
+
30
32
  #ifdef COGL_HAS_GTYPE_SUPPORT
31
33
  #include <glib-object.h>
32
34
  #endif /* COGL_HAS_GTYPE_SUPPORT */
33
35
 
34
- #include "cogl-types.h"
36
+ #include <cogl/cogl-types.h>
37
+ #include <cogl/cogl-macros.h>
35
38
 
36
39
  #ifdef COGL_ENABLE_EXPERIMENTAL_API
37
- #include "cogl-quaternion.h"
40
+ #include <cogl/cogl-quaternion.h>
38
41
  #endif
39
42
 
40
43
  COGL_BEGIN_DECLS
@@ -401,6 +404,7 @@ cogl_matrix_orthographic (CoglMatrix *matrix,
401
404
  *
402
405
  * Deprecated: 1.10: Use cogl_matrix_orthographic()
403
406
  */
407
+ COGL_DEPRECATED_IN_1_10_FOR (cogl_matrix_orthographic)
404
408
  void
405
409
  cogl_matrix_ortho (CoglMatrix *matrix,
406
410
  float left,
@@ -559,8 +563,8 @@ cogl_matrix_equal (const void *v1, const void *v2);
559
563
  * Allocates a new #CoglMatrix on the heap and initializes it with
560
564
  * the same values as @matrix.
561
565
  *
562
- * Returns: A newly allocated #CoglMatrix which should be freed using
563
- * cogl_matrix_free()
566
+ * Return value: (transfer full): A newly allocated #CoglMatrix which
567
+ * should be freed using cogl_matrix_free()
564
568
  *
565
569
  * Since: 1.6
566
570
  */
@@ -66,10 +66,10 @@ COGL_BEGIN_DECLS
66
66
  * Cogl doesn't aim to pretend that meta-textures are just like real
67
67
  * textures because it would get extremely complex to try and emulate
68
68
  * low-level GPU semantics transparently for these textures. The low
69
- * level drawing APIs of Cogl, such as cogl_framebuffer_draw_attributes()
70
- * don't actually know anything about the #CoglMetaTexture interface and its
71
- * the developer's responsibility to resolve all textures referenced by a
72
- * #CoglPipeline to low-level textures before drawing.
69
+ * level drawing APIs of Cogl, such as cogl_primitive_draw() don't
70
+ * actually know anything about the #CoglMetaTexture interface and its
71
+ * the developer's responsibility to resolve all textures referenced
72
+ * by a #CoglPipeline to low-level textures before drawing.
73
73
  *
74
74
  * If you want to develop custom primitive APIs like
75
75
  * cogl_framebuffer_draw_rectangle() and you want to support drawing
@@ -77,7 +77,7 @@ COGL_BEGIN_DECLS
77
77
  * example, then you will need to use this #CoglMetaTexture interface
78
78
  * to be able to resolve high-level textures into low-level textures
79
79
  * before drawing with Cogl's low-level drawing APIs such as
80
- * cogl_framebuffer_draw_attributes().
80
+ * cogl_primitive_draw().
81
81
  *
82
82
  * <note>Most developers won't need to use this interface directly
83
83
  * but still it is worth understanding the distinction between
@@ -153,10 +153,10 @@ typedef void (*CoglMetaTextureCallback) (CoglTexture *sub_texture,
153
153
  * internally use this API to resolve the low level textures of any
154
154
  * meta textures you have associated with CoglPipeline layers.
155
155
  *
156
- * <note>The low level drawing APIs such as cogl_framebuffer_draw_attributes()
156
+ * <note>The low level drawing APIs such as cogl_primitive_draw()
157
157
  * don't understand the #CoglMetaTexture interface and so it is your
158
- * responsibility to use this API to resolve all CoglPipeline
159
- * textures into low-level textures before drawing.</note>
158
+ * responsibility to use this API to resolve all CoglPipeline textures
159
+ * into low-level textures before drawing.</note>
160
160
  *
161
161
  * For each low-level texture that makes up part of the given region
162
162
  * of the @meta_texture, @callback is called specifying how the
@@ -103,7 +103,11 @@ typedef struct {
103
103
  *
104
104
  * Since: 1.4
105
105
  */
106
+ #ifdef COGL_HAS_GTYPE_SUPPORT
107
+ typedef GDestroyNotify CoglUserDataDestroyCallback;
108
+ #else
106
109
  typedef void (*CoglUserDataDestroyCallback) (void *user_data);
110
+ #endif
107
111
 
108
112
  /**
109
113
  * CoglDebugObjectTypeInfo:
@@ -182,8 +186,8 @@ cogl_object_get_user_data (CoglObject *object,
182
186
 
183
187
  /**
184
188
  * cogl_debug_object_foreach_type:
185
- * @func: A callback function for each type
186
- * @user_data: A pointer to pass to @func
189
+ * @func: (scope call): A callback function for each type
190
+ * @user_data: (closure): A pointer to pass to @func
187
191
  *
188
192
  * Invokes @func once for each type of object that Cogl uses and
189
193
  * passes a count of the number of objects for that type. This is
@@ -47,6 +47,41 @@ typedef struct _CoglOffscreen CoglOffscreen;
47
47
 
48
48
  /* Offscreen api */
49
49
 
50
+ /**
51
+ * cogl_offscreen_new_with_texture:
52
+ * @texture: A #CoglTexture pointer
53
+ *
54
+ * This creates an offscreen framebuffer object using the given
55
+ * @texture as the primary color buffer. It doesn't just initialize
56
+ * the contents of the offscreen buffer with the @texture; they are
57
+ * tightly bound so that drawing to the offscreen buffer effectively
58
+ * updates the contents of the given texture. You don't need to
59
+ * destroy the offscreen buffer before you can use the @texture again.
60
+ *
61
+ * <note>This api only works with low-level #CoglTexture types such as
62
+ * #CoglTexture2D, #CoglTexture3D and #CoglTextureRectangle, and not
63
+ * with meta-texture types such as #CoglTexture2DSliced.</note>
64
+ *
65
+ * The storage for the framebuffer is actually allocated lazily
66
+ * so this function will never return %NULL to indicate a runtime
67
+ * error. This means it is still possible to configure the framebuffer
68
+ * before it is really allocated.
69
+ *
70
+ * Simple applications without full error handling can simply rely on
71
+ * Cogl to lazily allocate the storage of framebuffers but you should
72
+ * be aware that if Cogl encounters an error (such as running out of
73
+ * GPU memory) then your application will simply abort with an error
74
+ * message. If you need to be able to catch such exceptions at runtime
75
+ * then you can explicitly allocate your framebuffer when you have
76
+ * finished configuring it by calling cogl_framebuffer_allocate() and
77
+ * passing in a #CoglError argument to catch any exceptions.
78
+ *
79
+ * Return value: (transfer full): a newly instantiated #CoglOffscreen
80
+ * framebuffer.
81
+ */
82
+ CoglOffscreen *
83
+ cogl_offscreen_new_with_texture (CoglTexture *texture);
84
+
50
85
  /**
51
86
  * cogl_offscreen_new_to_texture:
52
87
  * @texture: A #CoglTexture pointer
@@ -65,7 +100,9 @@ typedef struct _CoglOffscreen CoglOffscreen;
65
100
  * Return value: (transfer full): a newly instantiated #CoglOffscreen
66
101
  * framebuffer or %NULL if it wasn't possible to create the
67
102
  * buffer.
103
+ * Deprecated: 1.16: Use cogl_offscreen_new_with_texture instead.
68
104
  */
105
+ COGL_DEPRECATED_IN_1_16_FOR (cogl_offscreen_new_with_texture)
69
106
  CoglOffscreen *
70
107
  cogl_offscreen_new_to_texture (CoglTexture *texture);
71
108
 
@@ -82,8 +119,6 @@ cogl_offscreen_new_to_texture (CoglTexture *texture);
82
119
  CoglBool
83
120
  cogl_is_offscreen (void *object);
84
121
 
85
- #ifndef COGL_DISABLE_DEPRECATED
86
-
87
122
  /**
88
123
  * cogl_offscreen_ref:
89
124
  * @offscreen: A pointer to a #CoglOffscreen framebuffer
@@ -95,8 +130,9 @@ cogl_is_offscreen (void *object);
95
130
  *
96
131
  * Deprecated: 1.2: cogl_object_ref() should be used in new code.
97
132
  */
133
+ COGL_DEPRECATED_FOR (cogl_object_ref)
98
134
  void *
99
- cogl_offscreen_ref (void *offscreen) G_GNUC_DEPRECATED;
135
+ cogl_offscreen_ref (void *offscreen);
100
136
 
101
137
  /**
102
138
  * cogl_offscreen_unref:
@@ -107,10 +143,9 @@ cogl_offscreen_ref (void *offscreen) G_GNUC_DEPRECATED;
107
143
  *
108
144
  * Deprecated: 1.2: cogl_object_unref() should be used in new code.
109
145
  */
146
+ COGL_DEPRECATED_FOR (cogl_object_unref)
110
147
  void
111
- cogl_offscreen_unref (void *offscreen) G_GNUC_DEPRECATED;
112
-
113
- #endif /* COGL_DISABLE_DEPRECATED */
148
+ cogl_offscreen_unref (void *offscreen);
114
149
 
115
150
  COGL_END_DECLS
116
151
 
@@ -44,7 +44,7 @@ cogl_onscreen_template_new (CoglSwapChain *swap_chain);
44
44
 
45
45
  /**
46
46
  * cogl_onscreen_template_set_samples_per_pixel:
47
- * @onscreen: A #CoglOnscreenTemplate template framebuffer
47
+ * @onscreen_template: A #CoglOnscreenTemplate template framebuffer
48
48
  * @n: The minimum number of samples per pixel
49
49
  *
50
50
  * Requires that any future CoglOnscreen framebuffers derived from
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * An object oriented GL/GLES Abstraction/Utility Layer
5
5
  *
6
- * Copyright (C) 2011,2012 Intel Corporation.
6
+ * Copyright (C) 2011,2012,2013 Intel Corporation.
7
7
  *
8
8
  * This library is free software; you can redistribute it and/or
9
9
  * modify it under the terms of the GNU Lesser General Public
@@ -43,7 +43,7 @@ typedef struct _CoglOnscreen CoglOnscreen;
43
43
  #define COGL_ONSCREEN(X) ((CoglOnscreen *)(X))
44
44
 
45
45
  /**
46
- * cogl_onscreen_new:
46
+ * cogl_onscreen_new: (constructor)
47
47
  * @context: A #CoglContext
48
48
  * @width: The desired framebuffer width
49
49
  * @height: The desired framebuffer height
@@ -52,7 +52,7 @@ typedef struct _CoglOnscreen CoglOnscreen;
52
52
  * configured before later being allocated, either implicitly when
53
53
  * it is first used or explicitly via cogl_framebuffer_allocate().
54
54
  *
55
- * Return value: A newly instantiated #CoglOnscreen framebuffer
55
+ * Return value: (transfer full): A newly instantiated #CoglOnscreen framebuffer
56
56
  * Since: 1.8
57
57
  * Stability: unstable
58
58
  */
@@ -187,18 +187,37 @@ cogl_wayland_onscreen_get_surface (CoglOnscreen *onscreen);
187
187
  struct wl_shell_surface *
188
188
  cogl_wayland_onscreen_get_shell_surface (CoglOnscreen *onscreen);
189
189
 
190
+ /**
191
+ * cogl_wayland_onscreen_set_foreign_surface:
192
+ * @onscreen: An unallocated framebuffer.
193
+ * @surface A Wayland surface to associate with the @onscreen.
194
+ *
195
+ * Allows you to explicitly notify Cogl of an existing Wayland surface to use,
196
+ * which prevents Cogl from allocating a surface and shell surface for the
197
+ * @onscreen. An allocated surface will not be destroyed when the @onscreen is
198
+ * freed.
199
+ *
200
+ * This function must be called before @onscreen is allocated.
201
+ *
202
+ * Since: 1.16
203
+ * Stability: unstable
204
+ */
205
+ void
206
+ cogl_wayland_onscreen_set_foreign_surface (CoglOnscreen *onscreen,
207
+ struct wl_surface *surface);
208
+
190
209
  /**
191
210
  * cogl_wayland_onscreen_resize:
192
211
  * @onscreen: A #CoglOnscreen framebuffer
193
212
  * @width: The desired width of the framebuffer
194
213
  * @height: The desired height of the framebuffer
195
214
  * @offset_x: A relative x offset for the new framebuffer
196
- * @offset_y: A relative x offset for the new framebuffer
215
+ * @offset_y: A relative y offset for the new framebuffer
197
216
  *
198
- * Queues a resize of the given @onscreen framebuffer which will be applied
199
- * during the next swap buffers request. Since a buffer is usually conceptually
200
- * scaled with a center point the @offset_x and @offset_y arguments allow the
201
- * newly allocated buffer to be positioned relative to the old buffer size.
217
+ * Resizes the backbuffer of the given @onscreen framebuffer to the
218
+ * given size. Since a buffer is usually conceptually scaled with a
219
+ * center point the @offset_x and @offset_y arguments allow the newly
220
+ * allocated buffer to be positioned relative to the old buffer size.
202
221
  *
203
222
  * For example a buffer that is being resized by moving the bottom right
204
223
  * corner, and the top left corner is remaining static would use x and y
@@ -209,9 +228,14 @@ cogl_wayland_onscreen_get_shell_surface (CoglOnscreen *onscreen);
209
228
  * x/y_size_increase is how many pixels bigger the buffer is on the x and y
210
229
  * axis.
211
230
  *
212
- * If cogl_wayland_onscreen_resize() is called multiple times before the next
213
- * swap buffers request then the relative x and y offsets accumulate instead of
214
- * being replaced. The @width and @height values superseed the old values.
231
+ * Note that if some drawing commands have been applied to the
232
+ * framebuffer since the last swap buffers then the resize will be
233
+ * queued and will only take effect in the next swap buffers.
234
+ *
235
+ * If multiple calls to cogl_wayland_onscreen_resize() get queued
236
+ * before the next swap buffers request then the relative x and y
237
+ * offsets accumulate instead of being replaced. The @width and
238
+ * @height values superseed the old values.
215
239
  *
216
240
  * Since: 1.10
217
241
  * Stability: unstable
@@ -254,6 +278,12 @@ cogl_onscreen_set_swap_throttled (CoglOnscreen *onscreen,
254
278
  * This function will implicitly allocate the given @onscreen
255
279
  * framebuffer before showing it if it hasn't already been allocated.
256
280
  *
281
+ * When using the Wayland winsys calling this will set the surface to
282
+ * a toplevel type which will make it appear. If the application wants
283
+ * to set a different type for the surface, it can avoid calling
284
+ * cogl_onscreen_show() and set its own type directly with the Wayland
285
+ * client API via cogl_wayland_onscreen_get_surface().
286
+ *
257
287
  * <note>Since Cogl doesn't explicitly track the visibility status of
258
288
  * onscreen framebuffers it wont try to avoid redundant window system
259
289
  * requests e.g. to show an already visible window. This also means
@@ -303,6 +333,12 @@ cogl_onscreen_hide (CoglOnscreen *onscreen);
303
333
  * start a new frame that incrementally builds on the contents of the previous
304
334
  * frame.
305
335
  *
336
+ * <note>It is highly recommended that applications use
337
+ * cogl_onscreen_swap_buffers_with_damage() instead whenever possible
338
+ * and also use the cogl_onscreen_get_buffer_age() api so they can
339
+ * perform incremental updates to older buffers instead of having to
340
+ * render a full buffer for every frame.</note>
341
+ *
306
342
  * Since: 1.10
307
343
  * Stability: unstable
308
344
  */
@@ -357,6 +393,59 @@ cogl_onscreen_swap_buffers (CoglOnscreen *onscreen);
357
393
  int
358
394
  cogl_onscreen_get_buffer_age (CoglOnscreen *onscreen);
359
395
 
396
+ /**
397
+ * cogl_onscreen_swap_buffers_with_damage:
398
+ * @onscreen: A #CoglOnscreen framebuffer
399
+ * @rectangles: An array of integer 4-tuples representing damaged
400
+ * rectangles as (x, y, width, height) tuples.
401
+ * @n_rectangles: The number of 4-tuples to be read from @rectangles
402
+ *
403
+ * Swaps the current back buffer being rendered too, to the front for
404
+ * display and provides information to any system compositor about
405
+ * what regions of the buffer have changed (damage) with respect to
406
+ * the last swapped buffer.
407
+ *
408
+ * This function has the same semantics as
409
+ * cogl_framebuffer_swap_buffers() except that it additionally allows
410
+ * applications to pass a list of damaged rectangles which may be
411
+ * passed on to a compositor so that it can minimize how much of the
412
+ * screen is redrawn in response to this applications newly swapped
413
+ * front buffer.
414
+ *
415
+ * For example if your application is only animating a small object in
416
+ * the corner of the screen and everything else is remaining static
417
+ * then it can help the compositor to know that only the bottom right
418
+ * corner of your newly swapped buffer has really changed with respect
419
+ * to your previously swapped front buffer.
420
+ *
421
+ * If @n_rectangles is 0 then the whole buffer will implicitly be
422
+ * reported as damaged as if cogl_onscreen_swap_buffers() had been
423
+ * called.
424
+ *
425
+ * This function also implicitly discards the contents of the color,
426
+ * depth and stencil buffers as if cogl_framebuffer_discard_buffers()
427
+ * were used. The significance of the discard is that you should not
428
+ * expect to be able to start a new frame that incrementally builds on
429
+ * the contents of the previous frame. If you want to perform
430
+ * incremental updates to older back buffers then please refer to the
431
+ * cogl_onscreen_get_buffer_age() api.
432
+ *
433
+ * Whenever possible it is recommended that applications use this
434
+ * function instead of cogl_onscreen_swap_buffers() to improve
435
+ * performance when running under a compositor.
436
+ *
437
+ * <note>It is highly recommended to use this API in conjunction with
438
+ * the cogl_onscreen_get_buffer_age() api so that your application can
439
+ * perform incremental rendering based on old back buffers.</note>
440
+ *
441
+ * Since: 1.16
442
+ * Stability: unstable
443
+ */
444
+ void
445
+ cogl_onscreen_swap_buffers_with_damage (CoglOnscreen *onscreen,
446
+ const int *rectangles,
447
+ int n_rectangles);
448
+
360
449
  /**
361
450
  * cogl_onscreen_swap_region:
362
451
  * @onscreen: A #CoglOnscreen framebuffer
@@ -455,15 +544,15 @@ typedef void (*CoglFrameCallback) (CoglOnscreen *onscreen,
455
544
  * Since: 1.14
456
545
  * Stability: unstable
457
546
  */
458
- typedef struct _CoglFrameClosure CoglFrameClosure;
547
+ typedef struct _CoglClosure CoglFrameClosure;
459
548
 
460
549
  /**
461
550
  * cogl_onscreen_add_frame_callback:
462
551
  * @onscreen: A #CoglOnscreen framebuffer
463
- * @callback: A callback function to call for frame events
464
- * @user_data: A private pointer to be passed to @callback
465
- * @destroy: An optional callback to destroy @user_data when the
466
- * @callback is removed or @onscreen is freed.
552
+ * @callback: (scope notified): A callback function to call for frame events
553
+ * @user_data: (closure): A private pointer to be passed to @callback
554
+ * @destroy: (allow-none): An optional callback to destroy @user_data
555
+ * when the @callback is removed or @onscreen is freed.
467
556
  *
468
557
  * Installs a @callback function that will be called for significant
469
558
  * events relating to the given @onscreen framebuffer.
@@ -526,8 +615,9 @@ typedef void (*CoglSwapBuffersNotify) (CoglFramebuffer *framebuffer,
526
615
  /**
527
616
  * cogl_onscreen_add_swap_buffers_callback:
528
617
  * @onscreen: A #CoglOnscreen framebuffer
529
- * @callback: A callback function to call when a swap has completed
530
- * @user_data: A private pointer to be passed to @callback
618
+ * @callback: (scope notified): A callback function to call when a swap
619
+ * has completed
620
+ * @user_data: (closure): A private pointer to be passed to @callback
531
621
  *
532
622
  * Installs a @callback function that should be called whenever a swap buffers
533
623
  * request (made using cogl_onscreen_swap_buffers()) for the given
@@ -546,8 +636,9 @@ typedef void (*CoglSwapBuffersNotify) (CoglFramebuffer *framebuffer,
546
636
  * the callback later.
547
637
  * Since: 1.10
548
638
  * Stability: unstable
549
- * Deprecated: 1.14: Use cogl_onscreen_add_swap_complete_callback
639
+ * Deprecated: 1.14: Use cogl_onscreen_add_frame_callback() instead
550
640
  */
641
+ COGL_DEPRECATED_IN_1_14_FOR (cogl_onscreen_add_frame_callback)
551
642
  unsigned int
552
643
  cogl_onscreen_add_swap_buffers_callback (CoglOnscreen *onscreen,
553
644
  CoglSwapBuffersNotify callback,
@@ -563,8 +654,10 @@ cogl_onscreen_add_swap_buffers_callback (CoglOnscreen *onscreen,
563
654
  *
564
655
  * Since: 1.10
565
656
  * Stability: unstable
566
- * Deprecated: 1.14: Use cogl_onscreen_remove_swap_complete_callback
657
+ * Deprecated: 1.14: Use cogl_onscreen_remove_frame_callback() instead
567
658
  */
659
+
660
+ COGL_DEPRECATED_IN_1_14_FOR (cogl_onscreen_remove_frame_callback)
568
661
  void
569
662
  cogl_onscreen_remove_swap_buffers_callback (CoglOnscreen *onscreen,
570
663
  unsigned int id);
@@ -593,7 +686,7 @@ cogl_onscreen_remove_swap_buffers_callback (CoglOnscreen *onscreen,
593
686
  * will be automatically updated to match the new size of the
594
687
  * framebuffer with an origin of (0,0). If your application needs more
595
688
  * specialized control of the viewport it will need to register a
596
- * resize handler using cogl_onscreen_add_resize_handler() so that it
689
+ * resize handler using cogl_onscreen_add_resize_callback() so that it
597
690
  * can track when the viewport has been changed automatically.</note>
598
691
  *
599
692
  * Since: 2.0
@@ -634,10 +727,10 @@ cogl_onscreen_get_resizable (CoglOnscreen *onscreen);
634
727
  * @width: The new width of @onscreen
635
728
  * @height: The new height of @onscreen
636
729
  * @user_data: The private passed to
637
- * cogl_onscreen_add_resize_handler()
730
+ * cogl_onscreen_add_resize_callback()
638
731
  *
639
732
  * Is a callback type used with the
640
- * cogl_onscreen_add_resize_handler() allowing applications to be
733
+ * cogl_onscreen_add_resize_callback() allowing applications to be
641
734
  * notified whenever an @onscreen framebuffer is resized.
642
735
  *
643
736
  * <note>Cogl automatically updates the viewport of an @onscreen
@@ -646,8 +739,8 @@ cogl_onscreen_get_resizable (CoglOnscreen *onscreen);
646
739
  *
647
740
  * <note>A resize callback will only ever be called while dispatching
648
741
  * Cogl events from the system mainloop; so for example during
649
- * cogl_poll_dispatch(). This is so that callbacks shouldn't occur
650
- * while an application might have arbitrary locks held for
742
+ * cogl_poll_renderer_dispatch(). This is so that callbacks shouldn't
743
+ * occur while an application might have arbitrary locks held for
651
744
  * example.</note>
652
745
  *
653
746
  * Since: 2.0
@@ -658,18 +751,34 @@ typedef void (*CoglOnscreenResizeCallback) (CoglOnscreen *onscreen,
658
751
  void *user_data);
659
752
 
660
753
  /**
661
- * cogl_onscreen_add_resize_handler:
754
+ * CoglOnscreenResizeClosure:
755
+ *
756
+ * An opaque type that tracks a #CoglOnscreenResizeCallback and
757
+ * associated user data. A #CoglOnscreenResizeClosure pointer will be
758
+ * returned from cogl_onscreen_add_resize_callback() and it allows you
759
+ * to remove a callback later using
760
+ * cogl_onscreen_remove_resize_callback().
761
+ *
762
+ * Since: 2.0
763
+ * Stability: unstable
764
+ */
765
+ typedef struct _CoglClosure CoglOnscreenResizeClosure;
766
+
767
+ /**
768
+ * cogl_onscreen_add_resize_callback:
662
769
  * @onscreen: A #CoglOnscreen framebuffer
663
- * @callback: A #CoglOnscreenResizeCallback to call when the @onscreen
664
- * changes size.
665
- * @user_data: Private data to be passed to @callback.
770
+ * @callback: (scope notified): A #CoglOnscreenResizeCallback to call when
771
+ * the @onscreen changes size.
772
+ * @user_data: (closure): Private data to be passed to @callback.
773
+ * @destroy: (allow-none): An optional callback to destroy @user_data
774
+ * when the @callback is removed or @onscreen is freed.
666
775
  *
667
776
  * Registers a @callback with @onscreen that will be called whenever
668
777
  * the @onscreen framebuffer changes size.
669
778
  *
670
779
  * The @callback can be removed using
671
- * cogl_onscreen_remove_resize_handler() passing the same @callback
672
- * and @user_data pair.
780
+ * cogl_onscreen_remove_resize_callback() passing the returned closure
781
+ * pointer.
673
782
  *
674
783
  * <note>Since Cogl automatically updates the viewport of an @onscreen
675
784
  * framebuffer that is resized, a resize callback can also be used to
@@ -679,33 +788,144 @@ typedef void (*CoglOnscreenResizeCallback) (CoglOnscreen *onscreen,
679
788
  *
680
789
  * <note>A resize callback will only ever be called while dispatching
681
790
  * Cogl events from the system mainloop; so for example during
682
- * cogl_poll_dispatch(). This is so that callbacks shouldn't occur
683
- * while an application might have arbitrary locks held for
791
+ * cogl_poll_renderer_dispatch(). This is so that callbacks shouldn't
792
+ * occur while an application might have arbitrary locks held for
684
793
  * example.</note>
685
794
  *
686
- * Return value: a unique identifier that can be used to remove to remove
687
- * the callback later.
688
- *
795
+ * Return value: a #CoglOnscreenResizeClosure pointer that can be used to
796
+ * remove the callback and associated @user_data later.
689
797
  * Since: 2.0
690
798
  */
691
- unsigned int
692
- cogl_onscreen_add_resize_handler (CoglOnscreen *onscreen,
693
- CoglOnscreenResizeCallback callback,
694
- void *user_data);
799
+ CoglOnscreenResizeClosure *
800
+ cogl_onscreen_add_resize_callback (CoglOnscreen *onscreen,
801
+ CoglOnscreenResizeCallback callback,
802
+ void *user_data,
803
+ CoglUserDataDestroyCallback destroy);
695
804
 
696
805
  /**
697
- * cogl_onscreen_remove_resize_handler:
806
+ * cogl_onscreen_remove_resize_callback:
698
807
  * @onscreen: A #CoglOnscreen framebuffer
699
- * @id: An identifier returned from cogl_onscreen_add_resize_handler()
808
+ * @closure: An identifier returned from cogl_onscreen_add_resize_callback()
700
809
  *
701
810
  * Removes a resize @callback and @user_data pair that were previously
702
- * associated with @onscreen via cogl_onscreen_add_resize_handler().
811
+ * associated with @onscreen via cogl_onscreen_add_resize_callback().
703
812
  *
704
813
  * Since: 2.0
705
814
  */
706
815
  void
707
- cogl_onscreen_remove_resize_handler (CoglOnscreen *onscreen,
708
- unsigned int id);
816
+ cogl_onscreen_remove_resize_callback (CoglOnscreen *onscreen,
817
+ CoglOnscreenResizeClosure *closure);
818
+
819
+ /**
820
+ * CoglOnscreenDirtyInfo:
821
+ * @x: Left edge of the dirty rectangle
822
+ * @y: Top edge of the dirty rectangle, measured from the top of the window
823
+ * @width: Width of the dirty rectangle
824
+ * @height: Height of the dirty rectangle
825
+ *
826
+ * A structure passed to callbacks registered using
827
+ * cogl_onscreen_add_dirty_callback(). The members describe a
828
+ * rectangle within the onscreen buffer that should be redrawn.
829
+ *
830
+ * Since: 1.16
831
+ * Stability: unstable
832
+ */
833
+ typedef struct _CoglOnscreenDirtyInfo CoglOnscreenDirtyInfo;
834
+
835
+ struct _CoglOnscreenDirtyInfo
836
+ {
837
+ int x, y;
838
+ int width, height;
839
+ };
840
+
841
+ /**
842
+ * CoglOnscreenDirtyCallback:
843
+ * @onscreen: The onscreen that the frame is associated with
844
+ * @info: A #CoglOnscreenDirtyInfo struct containing the details of the
845
+ * dirty area
846
+ * @user_data: The user pointer passed to
847
+ * cogl_onscreen_add_frame_callback()
848
+ *
849
+ * Is a callback that can be registered via
850
+ * cogl_onscreen_add_dirty_callback() to be called when the windowing
851
+ * system determines that a region of the onscreen window has been
852
+ * lost and the application should redraw it.
853
+ *
854
+ * Since: 1.16
855
+ * Stability: unstable
856
+ */
857
+ typedef void (*CoglOnscreenDirtyCallback) (CoglOnscreen *onscreen,
858
+ const CoglOnscreenDirtyInfo *info,
859
+ void *user_data);
860
+
861
+ /**
862
+ * CoglOnscreenDirtyClosure:
863
+ *
864
+ * An opaque type that tracks a #CoglOnscreenDirtyCallback and associated
865
+ * user data. A #CoglOnscreenDirtyClosure pointer will be returned from
866
+ * cogl_onscreen_add_dirty_callback() and it allows you to remove a
867
+ * callback later using cogl_onscreen_remove_dirty_callback().
868
+ *
869
+ * Since: 1.16
870
+ * Stability: unstable
871
+ */
872
+ typedef struct _CoglClosure CoglOnscreenDirtyClosure;
873
+
874
+ /**
875
+ * cogl_onscreen_add_dirty_callback:
876
+ * @onscreen: A #CoglOnscreen framebuffer
877
+ * @callback: (scope notified): A callback function to call for dirty events
878
+ * @user_data: (closure): A private pointer to be passed to @callback
879
+ * @destroy: (allow-none): An optional callback to destroy @user_data when the
880
+ * @callback is removed or @onscreen is freed.
881
+ *
882
+ * Installs a @callback function that will be called whenever the
883
+ * window system has lost the contents of a region of the onscreen
884
+ * buffer and the application should redraw it to repair the buffer.
885
+ * For example this may happen in a window system without a compositor
886
+ * if a window that was previously covering up the onscreen window has
887
+ * been moved causing a region of the onscreen to be exposed.
888
+ *
889
+ * The @callback will be passed a #CoglOnscreenDirtyInfo struct which
890
+ * decribes a rectangle containing the newly dirtied region. Note that
891
+ * this may be called multiple times to describe a non-rectangular
892
+ * region composed of multiple smaller rectangles.
893
+ *
894
+ * The dirty events are separate from %COGL_FRAME_EVENT_SYNC events so
895
+ * the application should also listen for this event before rendering
896
+ * the dirty region to ensure that the framebuffer is actually ready
897
+ * for rendering.
898
+ *
899
+ * Return value: a #CoglOnscreenDirtyClosure pointer that can be used to
900
+ * remove the callback and associated @user_data later.
901
+ * Since: 1.16
902
+ * Stability: unstable
903
+ */
904
+ CoglOnscreenDirtyClosure *
905
+ cogl_onscreen_add_dirty_callback (CoglOnscreen *onscreen,
906
+ CoglOnscreenDirtyCallback callback,
907
+ void *user_data,
908
+ CoglUserDataDestroyCallback destroy);
909
+
910
+ /**
911
+ * cogl_onscreen_remove_dirty_callback:
912
+ * @onscreen: A #CoglOnscreen
913
+ * @closure: A #CoglOnscreenDirtyClosure returned from
914
+ * cogl_onscreen_add_dirty_callback()
915
+ *
916
+ * Removes a callback and associated user data that were previously
917
+ * registered using cogl_onscreen_add_dirty_callback().
918
+ *
919
+ * If a destroy callback was passed to
920
+ * cogl_onscreen_add_dirty_callback() to destroy the user data then
921
+ * this will also get called.
922
+ *
923
+ * Since: 1.16
924
+ * Stability: unstable
925
+ */
926
+ void
927
+ cogl_onscreen_remove_dirty_callback (CoglOnscreen *onscreen,
928
+ CoglOnscreenDirtyClosure *closure);
709
929
 
710
930
  /**
711
931
  * cogl_is_onscreen: