Skip to content
This repository
Browse code

Updated Loudmouth and Clutter docs.

  • Loading branch information...
commit a8e645a4a9d15ba72d89b30bfb70b0b23eb7cf3e 1 parent 3bed24d
Josip Lisec authored May 01, 2010

Showing 141 changed files with 2,160 additions and 333 deletions. Show diff stats Hide diff stats

  1. 3  .gitmodules
  2. 1  addons/Clutter/io/ClutterColor.io
  3. 6  addons/Clutter/io/ClutterEvent.io
  4. 2  addons/Clutter/io/ClutterShader.io
  5. 2  addons/Clutter/io/ClutterStage.io
  6. 6  addons/Clutter/io/ClutterUnits.io
  7. 2  addons/Clutter/io/IoClutterVertex.io
  8. 57  addons/Clutter/source/IoClutter.c
  9. 82  addons/Clutter/source/IoClutterActor.c
  10. 25  addons/Clutter/source/IoClutterActorBox.c
  11. 25  addons/Clutter/source/IoClutterColor.c
  12. 22  addons/Clutter/source/IoClutterEvent.c
  13. 4  addons/Clutter/source/IoClutterInputDevice.c
  14. 11  addons/Clutter/source/IoClutterShader.c
  15. 9  addons/Clutter/source/IoClutterStage.c
  16. 19  addons/Clutter/source/IoClutterUnits.c
  17. 11  addons/Clutter/source/IoClutterVertex.c
  18. 1  addons/Generys
  19. 18  addons/Loudmouth/io/JID.io
  20. 30  addons/Loudmouth/io/LoudmouthMessage.io
  21. 2  docs/docs.css
  22. 17  docs/js/browser.js
  23. 1  docs/reference/Apple/AppleExtras/index.html
  24. 1  docs/reference/Apple/index.html
  25. 1  docs/reference/Audio/LibSndFile/index.html
  26. 1  docs/reference/Audio/Ogg/index.html
  27. 1  docs/reference/Audio/PortAudio/index.html
  28. 1  docs/reference/Audio/SampleRateConverter/index.html
  29. 1  docs/reference/Audio/SoundTouch/index.html
  30. 1  docs/reference/Audio/TagLib/index.html
  31. 1  docs/reference/Audio/index.html
  32. 11  docs/reference/{binding/CFFI/CFFI → Bridges/CFFI/CFFIPointer}/index.html
  33. 9  docs/reference/{binding → Bridges}/CFFI/index.html
  34. 2  docs/reference/Bridges/ObjcBridge/index.html
  35. 2  docs/reference/Bridges/Python/index.html
  36. 2  docs/reference/Bridges/index.html
  37. 1  docs/reference/Compilers/Loki/index.html
  38. 1  docs/reference/Compilers/index.html
  39. 1  docs/reference/Compression/LZO/index.html
  40. 1  docs/reference/Compression/Zlib/index.html
  41. 1  docs/reference/Compression/index.html
  42. 1  docs/reference/Concurrency/Thread/index.html
  43. 1  docs/reference/Concurrency/index.html
  44. 4  docs/reference/Core/Core/Call/index.html
  45. 2  docs/reference/Core/Core/Coroutine/index.html
  46. 22  docs/reference/Core/Core/Directory/index.html
  47. 6  docs/reference/Core/Core/Exception/index.html
  48. 66  docs/reference/Core/Core/List/index.html
  49. 35  docs/reference/Core/Core/Number/index.html
  50. 2  docs/reference/Core/Core/Object/index.html
  51. 14  docs/reference/Core/Core/Sequence/index.html
  52. 1  docs/reference/Core/Core/index.html
  53. 1  docs/reference/Core/Flux/index.html
  54. 1  docs/reference/Core/NotificationCenter/index.html
  55. 1  docs/reference/Core/Range/index.html
  56. 1  docs/reference/Core/index.html
  57. 1  docs/reference/Databases/DBI/index.html
  58. 1  docs/reference/Databases/Memcached/index.html
  59. 1  docs/reference/Databases/MySQL/index.html
  60. 1  docs/reference/Databases/Obsidian/index.html
  61. 1  docs/reference/Databases/Postgres/index.html
  62. 1  docs/reference/Databases/QDBM/index.html
  63. 1  docs/reference/Databases/SQLite/index.html
  64. 1  docs/reference/Databases/SQLite3/index.html
  65. 1  docs/reference/Databases/SkipDB/index.html
  66. 1  docs/reference/Databases/SqlDatabase/index.html
  67. 1  docs/reference/Databases/TagDB/index.html
  68. 1  docs/reference/Databases/TokyoCabinet/index.html
  69. 1  docs/reference/Databases/index.html
  70. 1  docs/reference/Digests/MD5/index.html
  71. 1  docs/reference/Digests/SHA1/index.html
  72. 1  docs/reference/Digests/UUID/index.html
  73. 1  docs/reference/Digests/index.html
  74. 1  docs/reference/Encryption/Blowfish/index.html
  75. 1  docs/reference/Encryption/index.html
  76. 1  docs/reference/Filesystem/AsyncRequest/index.html
  77. 1  docs/reference/Filesystem/index.html
  78. 1  docs/reference/Graphics/Box/index.html
  79. 1  docs/reference/Graphics/Cairo/index.html
  80. 1  docs/reference/Graphics/Font/index.html
  81. 1  docs/reference/Graphics/GLFW/index.html
  82. 1  docs/reference/Graphics/Image/index.html
  83. 1  docs/reference/Graphics/OpenGL/index.html
  84. 1  docs/reference/Graphics/index.html
  85. 1  docs/reference/Math/BigNum/index.html
  86. 1  docs/reference/Math/ContinuedFraction/index.html
  87. 1  docs/reference/Math/Random/index.html
  88. 1  docs/reference/Math/Rational/index.html
  89. 1  docs/reference/Math/index.html
  90. 1  docs/reference/Networking/Beanstalk/index.html
  91. 1  docs/reference/Networking/CGI/index.html
  92. 1  docs/reference/Networking/DistributedObjects/index.html
  93. 1  docs/reference/Networking/GoogleSearch/index.html
  94. 4  docs/reference/Networking/HttpClient/HCRequest/index.html
  95. 1  docs/reference/Networking/HttpClient/index.html
  96. 12  docs/reference/Networking/Loudmouth/JID/index.html
  97. 56  docs/reference/Networking/Loudmouth/Loudmouth/index.html
  98. 64  docs/reference/Networking/Loudmouth/LoudmouthMessage/index.html
  99. 7  docs/reference/Networking/Loudmouth/XmppChatMessage/index.html
  100. 1  docs/reference/Networking/Loudmouth/index.html
  101. 1  docs/reference/Networking/NetworkAdapter/index.html
  102. 1  docs/reference/Networking/SecureSocket/index.html
  103. 1  docs/reference/Networking/Socket/index.html
  104. 1  docs/reference/Networking/Twitter/index.html
  105. 1  docs/reference/Networking/Volcano/index.html
  106. 1  docs/reference/Networking/index.html
  107. 1  docs/reference/Parsers/Fnmatch/index.html
  108. 1  docs/reference/Parsers/Libxml2/index.html
  109. 1  docs/reference/Parsers/Regex/index.html
  110. 1  docs/reference/Parsers/SGML/index.html
  111. 1  docs/reference/Parsers/Yajl/index.html
  112. 1  docs/reference/Parsers/index.html
  113. 1  docs/reference/Physics/ODE/index.html
  114. 1  docs/reference/Physics/index.html
  115. 1  docs/reference/Server/Curses/index.html
  116. 1  docs/reference/Server/EditLine/index.html
  117. 1  docs/reference/Server/NullAddon/index.html
  118. 1  docs/reference/Server/ReadLine/index.html
  119. 1  docs/reference/Server/Syslog/index.html
  120. 1  docs/reference/Server/SystemCall/index.html
  121. 1  docs/reference/Server/User/index.html
  122. 1  docs/reference/Server/index.html
  123. 253  docs/reference/UserInterface/Clutter/Clutter/index.html
  124. 513  docs/reference/UserInterface/Clutter/ClutterActor/index.html
  125. 71  docs/reference/UserInterface/Clutter/ClutterActorBox/index.html
  126. 152  docs/reference/UserInterface/Clutter/ClutterColor/index.html
  127. 176  docs/reference/UserInterface/Clutter/ClutterEvent/index.html
  128. 57  docs/reference/UserInterface/Clutter/ClutterInputDevice/index.html
  129. 120  docs/reference/UserInterface/Clutter/ClutterShader/index.html
  130. 78  docs/reference/UserInterface/Clutter/ClutterStage/index.html
  131. 136  docs/reference/UserInterface/Clutter/ClutterUnits/index.html
  132. 113  docs/reference/UserInterface/Clutter/ClutterVertex/index.html
  133. 12  docs/reference/UserInterface/Clutter/index.html
  134. 3  docs/reference/UserInterface/index.html
  135. 1  docs/reference/Video/AVCodec/index.html
  136. 1  docs/reference/Video/Theora/index.html
  137. 1  docs/reference/Video/Vorbis/index.html
  138. 1  docs/reference/Video/index.html
  139. 45  docs/reference/binding/index.html
  140. 2  docs/reference/docs.json
  141. 1  docs/reference/index.html
3  .gitmodules
... ...
@@ -1,3 +0,0 @@
1  
-[submodule "addons/Generys"]
2  
-	path = addons/Generys
3  
-	url = git://github.com/josip/generys.git
1  addons/Clutter/io/ClutterColor.io
@@ -2,5 +2,6 @@ ClutterColor do(
2 2
 
3 3
 )
4 4
 
  5
+//doc Sequence asClutterColor Calls [[ClutterColor with]] with self as an argument.
5 6
 Sequence asClutterColor := method(
6 7
   ClutterColor with(self))
6  addons/Clutter/io/ClutterEvent.io
@@ -3,14 +3,16 @@ ClutterEvent do(
3 3
     self x = 0
4 4
     self y = 0)
5 5
 
6  
-  0_coords_ := getSlot("coords")
  6
+  __coords := getSlot("coords")
7 7
   coords = lazySlot(
8  
-    realCoords := self 0_coords_
  8
+    realCoords := self __coords
9 9
     self setX(realCoord x) setY(realCoords y)
10 10
     realCoords)
11 11
 
  12
+  //doc ClutterEvent x
12 13
   x ::= method(
13 14
     self coords x)
  15
+  //doc ClutterEvent y
14 16
   y ::= method(
15 17
     self coords y)
16 18
 )
2  addons/Clutter/io/ClutterShader.io
... ...
@@ -1,7 +1,9 @@
1 1
 ClutterShader do(
  2
+  //doc ClutterShader enable
2 3
   enable := method(
3 4
     self setIsEnabled(true))
4 5
 
  6
+  //doc ClutterShader disable
5 7
   disable := method(
6 8
     self setIsEnabled(false))
7 9
 )
2  addons/Clutter/io/ClutterStage.io
... ...
@@ -1,5 +1,5 @@
1 1
 ClutterStage do(
2  
-  forwad := method(
  2
+  forward := method(
3 3
     self actor hasSlot(call message name) ifTrue(
4 4
       self actor doMessage(call message)))
5 5
 
6  addons/Clutter/io/ClutterUnits.io
... ...
@@ -1,14 +1,20 @@
1 1
 ClutterUnits do(
2 2
 )
3 3
 
  4
+//doc Sequence asClutterUnit Calls [[ClutterUnit withString]].
4 5
 Sequence asClutterUnit := method(
5 6
   ClutterUnit withString(self))
6 7
 
7 8
 Number do(
  9
+  //doc Number px Calls [[ClutterUnits withPx]].
8 10
   px := method(ClutterUnits withPx(self))
  11
+  //doc Number mm Calls [[ClutterUnits withMm]].
9 12
   mm := method(ClutterUnits withMm(self))
  13
+  //doc Number pt Calls [[ClutterUnits withPt]].
10 14
   pt := method(ClutterUnits withPt(self))
  15
+  //doc Number em Calls [[ClutterUnits withEm]].
11 16
   em := method(ClutterUnits withEm(self))
  17
+  //doc Number emForFont(fontname) Calls [[ClutterUnits emForFont]].
12 18
   emForFont := method(font,
13 19
     ClutterUnits withEmForFont(font, self))
14 20
 )
2  addons/Clutter/io/IoClutterVertex.io
... ...
@@ -1,4 +1,5 @@
1 1
 ClutterVertex do(
  2
+  //doc ClutterVertex asList Returns [[List]] with x, y, and z values.
2 3
   asList   := method(
3 4
     list(self x, self y, self z))
4 5
 
@@ -6,5 +7,6 @@ ClutterVertex do(
6 7
     self asList asString exSlice(4))
7 8
 )
8 9
 
  10
+//doc List asClutterVertex Converts [[List]] to [[ClutterVertex]].
9 11
 List asClutterVertex := method(
10 12
   ClutterVertex performWithArgList("with", self))
57  addons/Clutter/source/IoClutter.c
... ...
@@ -1,22 +1,23 @@
1 1
 #include "IoClutter.h"
2 2
 //metadoc Clutter category UserInterface
3 3
 /*metadoc Clutter description 
4  
-Clutter is a GObject based library for creating fast, visually rich, graphical user interfaces.
5  
-
  4
+<p>
  5
+<a href="http://clutter-project.org">Clutter</a> is a GObject based library for creating fast, visually rich, graphical user interfaces.
  6
+</p><p>
6 7
 Clutter works by manipulating a scene-graph of 2D surfaces, or 'actors', inside a 3D space.
7  
-
  8
+</p><p>
8 9
 ClutterActor is the base class for such surfaces. All ClutterActors can be positioned, scaled and rotated in 3D space. In addition, other properties can be set, such as 2D clipping, children and opacity. Tranforms applied to a parent actor also apply to any children. Actors are also able to receive events.
9  
-
  10
+</p><p>
10 11
 Subclasses of ClutterActor include ClutterStage, ClutterTexture, ClutterLabel, ClutterRectangle, ClutterEntry and ClutterGroup. ClutterActors are added to a parent, transformed and then made visible.
11  
-
  12
+</p><p>
12 13
 ClutterStage is the top level ClutterActor - it's the representation of a window, or framebuffer. It is created automatically when Clutter is initialised. ClutterStage is a ClutterGroup, a class implementing the ClutterCointainer interface.
13  
-
  14
+</p><p>
14 15
 ClutterTimelines provide the basis for Clutter's animation utilities. Multiple timelines can be synchronised using ClutterScore, and ClutterBehaviour and ClutterEffect allow for the creation of animation effects such as transitions.
15  
-
  16
+</p><p>
16 17
 Clutter further contains a number of utilities, including; ClutterScript - for loading 'UI definition' files formatted in JSON, ClutterShader - a class for applying GPU shaders to actors, ClutterModel - a utility class for MVC list type implementations, and fixed point math utilities.
17  
-
18  
-For detailed docs, see <a href=http://clutter-project.org/docs/clutter/stable/>clutter-project</a>
19  
-
  18
+</p><p>
  19
+For detailed docs, see <a href="http://clutter-project.org/docs/clutter/stable/">clutter-project</a>.
  20
+</p>
20 21
 */ 
21 22
 
22 23
 /*** Initalisation functions ***/
@@ -181,35 +182,51 @@ IO_METHOD(IoClutter, init) {
181 182
   IoObject_setSlot_to_(grav, IOSYMBOL("NORTH_WEST"),  IONUMBER(CLUTTER_GRAVITY_NORTH_WEST));
182 183
   IoObject_setSlot_to_(grav, IOSYMBOL("CENTER"),      IONUMBER(CLUTTER_GRAVITY_CENTER));
183 184
 
  185
+  //doc Clutter MASK Contains all CLUTTER_*_MASK constants.
184 186
   IoObject_setSlot_to_(self, IOSYMBOL("MASK"),        cmod);
  187
+  //doc Clutter SCROLL Contains all CLUTTER_SCROLL_* constants.
185 188
   IoObject_setSlot_to_(self, IOSYMBOL("SCROLL"),      sdir);
  189
+  //doc Clutter STAGE_STATE Contains all CLUTTER_STAGE_STATE_* constants.
186 190
   IoObject_setSlot_to_(self, IOSYMBOL("STAGE_STATE"), stag);
  191
+  //doc Clutter EVENT Contains all Clutter event type constants.
187 192
   IoObject_setSlot_to_(self, IOSYMBOL("EVENT"),       evnt);
  193
+  //doc Clutter EVENT_FLAG Contains all CLUTTER_EVENT_FLAG_* constants.
188 194
   IoObject_setSlot_to_(self, IOSYMBOL("EVENT_FLAG"),  eflg);
  195
+  //doc Clutter DEVICE_TYPE Contains all CLUTTER_TYPE_* constants.
189 196
   IoObject_setSlot_to_(self, IOSYMBOL("DEVICE_TYPE"), devt);
  197
+  //doc Clutter SHADER_ERROR Contains all CLUTTER_SHADER_ERROR_* constants.
190 198
   IoObject_setSlot_to_(self, IOSYMBOL("SHADER_ERROR"),shde);
  199
+  //doc Clutter UNIT Contains all CLUTTER_UNIT_* constants.
191 200
   IoObject_setSlot_to_(self, IOSYMBOL("UNIT"),        unit);
  201
+  //doc Clutter AXIS Contains all CLUTTER_AXIS_* constants.
192 202
   IoObject_setSlot_to_(self, IOSYMBOL("AXIS"),        axis);
  203
+  //doc Clutter GRAVITY Contains all CLUTTER_GRAVITY_* constants.
193 204
   IoObject_setSlot_to_(self, IOSYMBOL("GRAVITY"),     grav);
194 205
 
  206
+  //doc Clutter version
195 207
   IoObject_setSlot_to_(self, IOSYMBOL("version"), IOSYMBOL(CLUTTER_VERSION_S));
  208
+  //doc Clutter flavour
196 209
   IoObject_setSlot_to_(self, IOSYMBOL("flavour"), IOSYMBOL(CLUTTER_FLAVOUR));
  210
+  //doc Clutter cogl
197 211
   IoObject_setSlot_to_(self, IOSYMBOL("cogl"),    IOSYMBOL(CLUTTER_COGL));
198 212
 
199 213
   return IOBOOL(self, clutter_init(NULL, NULL));
200 214
 }
201 215
 
  216
+//doc Clutter initThreads
202 217
 IO_METHOD(IoClutter, initThreads) {
203 218
   g_thread_init(NULL);
204 219
   clutter_threads_init();
205 220
   return self;
206 221
 }
207 222
 
  223
+//doc Clutter threadEnter
208 224
 IO_METHOD(IoClutter, threadEnter) {
209 225
   clutter_threads_enter();
210 226
   return self;
211 227
 }
212 228
 
  229
+//doc Clutter threadLeave
213 230
 IO_METHOD(IoClutter, threadLeave) {
214 231
   clutter_threads_leave();
215 232
   return self;
@@ -217,53 +234,63 @@ IO_METHOD(IoClutter, threadLeave) {
217 234
 
218 235
 // TODO: clutter_threads_add_idle(), _add_idle_full(), _add_timeout, _add_timeout_full
219 236
 
  237
+//doc Clutter main Calls clutter_main() which starts GMainLoop.
220 238
 IO_METHOD(IoClutter, main) {
221 239
   clutter_main();
222 240
   return IONIL(self);
223 241
 }
224 242
 
  243
+//doc Clutter quitMain
225 244
 IO_METHOD(IoClutter, quitMain) {
226 245
   clutter_main_quit();
227 246
   return IONIL(self);
228 247
 }
229 248
 
  249
+//doc Clutter mainLevel
230 250
 IO_METHOD(IoClutter, mainLevel) {
231 251
   return IONUMBER(clutter_main_level());
232 252
 }
233 253
 
  254
+//doc Clutter isFpsShown
234 255
 IO_METHOD(IoClutter, isFpsShown) {
235 256
   return IOBOOL(self, clutter_get_show_fps());
236 257
 }
237 258
 
  259
+//doc Clutter getDefaultFrameRate
238 260
 IO_METHOD(IoClutter, getDefaultFrameRate) {
239 261
   return IONUMBER(clutter_get_default_frame_rate());
240 262
 }
241 263
 
  264
+//doc Clutter setDefaultFrameRate(frameRate)
242 265
 IO_METHOD(IoClutter, setDefaultFrameRate) {
243 266
   clutter_set_default_frame_rate((guint)(IoMessage_locals_floatArgAt_(m, locals, 0)));
244 267
   return self;
245 268
 }
246 269
 
  270
+//doc Clutter enableMotionEvents
247 271
 IO_METHOD(IoClutter, enableMotionEvents) {
248 272
   clutter_set_motion_events_enabled(1);
249 273
   return self;
250 274
 }
251 275
 
  276
+//doc Clutter disableMotionEvents
252 277
 IO_METHOD(IoClutter, disableMotionEvents) {
253 278
   clutter_set_motion_events_enabled(0);
254 279
   return self;
255 280
 }
256 281
 
  282
+//doc Clutter motionEventsEnabled Returns true if motion events are enabled.
257 283
 IO_METHOD(IoClutter, motionEventsEnabled) {
258 284
   return IOBOOL(self, clutter_get_motion_events_enabled());
259 285
 }
260 286
 
  287
+//doc Clutter clearGlyphCache
261 288
 IO_METHOD(IoClutter, clearGlyphCache) {
262 289
   clutter_clear_glyph_cache();
263 290
   return self;
264 291
 }
265 292
 
266  
-//doc Clutter fontHinting Returns <code>true</code> if <code>CLUTTER_FONT_HINTING</code>
  293
+//doc Clutter fontHinting Returns <code>true</code> if <code>CLUTTER_FONT_HINTING</code> is set.
267 294
 IO_METHOD(IoClutter, getFontHinting) {
268 295
   return IOBOOL(self, clutter_get_font_flags());
269 296
 }
@@ -276,16 +303,19 @@ IO_METHOD(IoClutter, setFontHinting) {
276 303
   return self;
277 304
 }
278 305
 
  306
+//doc Clutter getActorByGid(gid)
279 307
 IO_METHOD(IoClutter, getActorByGid) {
280 308
   guint32 gid = (guint32)(IoMessage_locals_doubleArgAt_(m, locals, 0));
281 309
   ClutterActor *actor = clutter_get_actor_by_gid(gid);
282 310
   return (actor == NULL)? IONIL(self) : IoClutterActor_newWithActor(IOSTATE, actor);
283 311
 }
284 312
 
  313
+//doc Clutter getKeyboardGrab
285 314
 IO_METHOD(IoClutter, getKeyboardGrab) {
286 315
   return IoClutterActor_newWithActor(IOSTATE, clutter_get_keyboard_grab());
287 316
 }
288 317
 
  318
+//doc Clutter getPointerGrab
289 319
 IO_METHOD(IoClutter, getPointerGrab) {
290 320
   return IoClutterActor_newWithActor(IOSTATE, clutter_get_pointer_grab());
291 321
 }
@@ -310,12 +340,13 @@ IO_METHOD(IoClutter, grabPointer) {
310 340
   return self;
311 341
 }
312 342
 
313  
-//IoObject *IoClutter_ungrabKeyboard(IoClutter *self, IoObject *l, IoMessage *m) {
  343
+//doc Clutter ungrabKeyboard
314 344
 IO_METHOD(IoClutter, ungrabKeyboard) {
315 345
   clutter_ungrab_keyboard();
316 346
   return self;
317 347
 }
318 348
 
  349
+//doc Clutter ungrabPointer
319 350
 IO_METHOD(IoClutter, ungrabPointer) {
320 351
   IoObject *device_n = IoMessage_locals_valueArgAt_(m, locals, 0);
321 352
 
@@ -327,10 +358,12 @@ IO_METHOD(IoClutter, ungrabPointer) {
327 358
   return self;
328 359
 }
329 360
 
  361
+//doc Clutter keySymbolToUnicode(symbol)
330 362
 IO_METHOD(IoClutter, keySymbolToUnicode) {
331 363
   return IONUMBER(clutter_keysym_to_unicode(IoMessage_locals_doubleArgAt_(m, locals, 0)));
332 364
 }
333 365
 
  366
+//doc Clutter currentEventTime
334 367
 IO_METHOD(IoClutter, currentEventTime) {
335 368
   return IoDate_newWithTime_(IOSTATE, clutter_get_current_event_time());
336 369
 }
82  addons/Clutter/source/IoClutterActor.c
... ...
@@ -1,4 +1,6 @@
1 1
 #include "IoClutterActor.h"
  2
+//metadoc ClutterActor category UserInterface
  3
+//metadoc ClutterActor description For more detailed docs see <a href="http://clutter-project.org/docs/clutter/stable/ClutterActor.html">Clutter documentation</a>.
2 4
 
3 5
 /*** Initalisation functions ***/
4 6
 IoTag *IoClutterActor_newTag(void *state) {
@@ -131,22 +133,27 @@ IoObject *IoMessage_locals_clutterActorArgAt_(IoMessage *self, IoObject *locals,
131 133
   return v;
132 134
 }
133 135
 
  136
+//doc ClutterActor isMapped
134 137
 IO_METHOD(IoClutterActor, isMapped) {
135 138
   return IOBOOL(self, CLUTTER_ACTOR_IS_MAPPED(IOCACTOR(self)));
136 139
 }
137 140
 
  141
+//doc ClutterActor isRealized
138 142
 IO_METHOD(IoClutterActor, isRealized) {
139 143
   return IOBOOL(self, CLUTTER_ACTOR_IS_REALIZED(IOCACTOR(self)));
140 144
 }
141 145
 
  146
+//doc ClutterActor isVisible
142 147
 IO_METHOD(IoClutterActor, isVisible) {
143 148
   return IOBOOL(self, CLUTTER_ACTOR_IS_VISIBLE(IOCACTOR(self)));
144 149
 }
145 150
 
  151
+//doc ClutterActor isReactive
146 152
 IO_METHOD(IoClutterActor, isReactive) {
147 153
   return IOBOOL(self, CLUTTER_ACTOR_IS_REACTIVE(IOCACTOR(self)));
148 154
 }
149 155
 
  156
+//doc ClutterActor show
150 157
 IO_METHOD(IoClutterActor, show) {
151 158
   fprintf(stderr, "In IoClutterActor_show\n");
152 159
   clutter_actor_show(IOCACTOR(self));
@@ -154,47 +161,55 @@ IO_METHOD(IoClutterActor, show) {
154 161
   return self;
155 162
 }
156 163
 
  164
+//doc ClutterActor showAll
157 165
 IO_METHOD(IoClutterActor, showAll) {
158 166
   clutter_actor_show_all(IOCACTOR(self));
159 167
   return self;
160 168
 }
161 169
 
  170
+//doc ClutterActor hide
162 171
 IO_METHOD(IoClutterActor, hide) {
163 172
   clutter_actor_hide(IOCACTOR(self));
164 173
   return self;
165 174
 }
166 175
 
  176
+//doc ClutterActor hideAll
167 177
 IO_METHOD(IoClutterActor, hideAll) {
168 178
   clutter_actor_hide_all(IOCACTOR(self));
169 179
   return self;
170 180
 }
171 181
 
  182
+//doc ClutterActor realize
172 183
 IO_METHOD(IoClutterActor, realize) {
173 184
   clutter_actor_realize(IOCACTOR(self));
174 185
   return self;
175 186
 }
176 187
 
  188
+//doc ClutterActor unrealize
177 189
 IO_METHOD(IoClutterActor, unrealize) {
178 190
   clutter_actor_unrealize(IOCACTOR(self));
179 191
   return self;
180 192
 }
181 193
 
182  
-
  194
+//doc ClutterActor paint
183 195
 IO_METHOD(IoClutterActor, paint) {
184 196
   clutter_actor_paint(IOCACTOR(self));
185 197
   return self;
186 198
 }
187 199
 
  200
+//doc ClutterActor queueRedraw
188 201
 IO_METHOD(IoClutterActor, queueRedraw) {
189 202
   clutter_actor_queue_redraw(IOCACTOR(self));
190 203
   return self;
191 204
 }
192 205
 
  206
+//doc ClutterActor queueRelayout
193 207
 IO_METHOD(IoClutterActor, queueRelayout) {
194 208
   clutter_actor_queue_relayout(IOCACTOR(self));
195 209
   return self;
196 210
 }
197 211
 
  212
+//doc ClutterActor destroy
198 213
 IO_METHOD(IoClutterActor, destroy) {
199 214
   clutter_actor_destroy(IOCACTOR(self));
200 215
   return self;
@@ -210,15 +225,18 @@ IO_METHOD(IoClutterActor, event) {
210 225
   return IOBOOL(self, success);
211 226
 }
212 227
 
  228
+//doc ClutterActor shouldPickPaint
213 229
 IO_METHOD(IoClutterActor, shouldPickPaint) {
214 230
   return IOBOOL(self, clutter_actor_should_pick_paint(IOCACTOR(self)));
215 231
 }
216 232
 
  233
+//doc ClutterActor map
217 234
 IO_METHOD(IoClutterActor, map) {
218 235
   clutter_actor_map(IOCACTOR(self));
219 236
   return self;
220 237
 }
221 238
 
  239
+//doc ClutterActor unmap
222 240
 IO_METHOD(IoClutterActor, unmap) {
223 241
   clutter_actor_unmap(IOCACTOR(self));
224 242
   return self;
@@ -261,6 +279,7 @@ IO_METHOD(IoClutterActor, allocateAvailableSize) {
261 279
   return self;
262 280
 }
263 281
 
  282
+//doc ClutterActor allocationBox Return new x.
264 283
 IO_METHOD(IoClutterActor, getAllocationBox) {
265 284
   ClutterActorBox actorBox = { 0, };
266 285
   clutter_actor_get_allocation_box(IOCACTOR(self), &actorBox);
@@ -268,12 +287,17 @@ IO_METHOD(IoClutterActor, getAllocationBox) {
268 287
   return IoClutterActorBox_newWithActorBox(IOSTATE, &actorBox);
269 288
 }
270 289
 
  290
+
  291
+/*doc ClutterActor allocationGeometry
  292
+Returns an Object with slots <code>x</code>, <code>y</code>, <code>width</code>, <code>height</code>.
  293
+*/
271 294
 IO_METHOD(IoClutterActor, getAllocationGeometry) {
272 295
   ClutterGeometry geom = { 0, };
273 296
   clutter_actor_get_allocation_geometry(IOCACTOR(self), &geom);
274 297
   return clutter_geometry_to_ioObject(IOSTATE, self, &geom);
275 298
 }
276 299
 
  300
+//doc ClutterActor allocationVertices([ancestorActor]) Returns [[List]] with four x objects.
277 301
 IO_METHOD(IoClutterActor, getAllocationVertices) {
278 302
   ClutterVertex vertices[4] = {};
279 303
   IoList *result = IoList_new(IOSTATE);
@@ -293,6 +317,9 @@ IO_METHOD(IoClutterActor, getAllocationVertices) {
293 317
   return result;
294 318
 }
295 319
 
  320
+/*doc ClutterActor preferredSize
  321
+Returns an [[Object]] with slots <code>minWidth</code>, <code>minHeight</code>, <code>naturalHeight</code> and <code>naturalWidth</code>.
  322
+*/
296 323
 IO_METHOD(IoClutterActor, getPreferredSize) {
297 324
   float min_width = 0,
298 325
         min_height = 0,
@@ -308,12 +335,13 @@ IO_METHOD(IoClutterActor, getPreferredSize) {
308 335
 
309 336
   IoObject_setSlot_to_(p_size, IOSYMBOL("minWidth"),       IONUMBER(min_width));
310 337
   IoObject_setSlot_to_(p_size, IOSYMBOL("minHeight"),      IONUMBER(min_height));
311  
-  IoObject_setSlot_to_(p_size, IOSYMBOL("naturalHeight"),  IONUMBER(natural_width));
  338
+  IoObject_setSlot_to_(p_size, IOSYMBOL("naturalWidth"),  IONUMBER(natural_width));
312 339
   IoObject_setSlot_to_(p_size, IOSYMBOL("naturalHeight"),  IONUMBER(natural_height));
313 340
 
314 341
   return p_size;
315 342
 }
316 343
 
  344
+//doc ClutterActor preferredWidth Returns an [[Object]] with slots <code>minWidth</code> and <code>naturalWidth</code> set.
317 345
 IO_METHOD(IoClutterActor, getPreferredWidth) {
318 346
   float for_height    = IoMessage_locals_floatArgAt_(m, locals, 0),
319 347
         min_width     = 0,
@@ -331,6 +359,7 @@ IO_METHOD(IoClutterActor, getPreferredWidth) {
331 359
   return result;
332 360
 }
333 361
 
  362
+//doc ClutterActor preferredHeight Returns an [[Object]] with slots <code>minHeight</code> and <code>naturalHeight</code> set.
334 363
 IO_METHOD(IoClutterActor, getPreferredHeight) {
335 364
   float for_width       = IoMessage_locals_floatArgAt_(m, locals, 0),
336 365
         min_height      = 0,
@@ -348,22 +377,29 @@ IO_METHOD(IoClutterActor, getPreferredHeight) {
348 377
   return result;
349 378
 }
350 379
 
  380
+//doc ClutterActor fixedPosition
351 381
 IO_METHOD(IoClutterActor, getFixedPosition) {
352 382
   return IOBOOL(self, clutter_actor_get_fixed_position_set(IOCACTOR(self)));
353 383
 }
354 384
 
  385
+
  386
+//doc ClutterActor setFixedPosition(state) <code>state</code> can be <code>true</code> or <code>false</code>.
355 387
 IO_METHOD(IoClutterActor, setFixedPosition) {
356 388
   int state = IoMessage_locals_boolArgAt_(m, locals, 0);
357 389
   clutter_actor_set_fixed_position_set(IOCACTOR(self), state);
358 390
   return self;
359 391
 }
360 392
 
  393
+/*doc ClutterActor geometry
  394
+Returns an [[Object]] with slots <code>x</code>, <code>y</code>, <code>width</code>, <code>height</code>.
  395
+*/
361 396
 IO_METHOD(IoClutterActor, getGeometry) {
362 397
   ClutterGeometry geometry;
363 398
   clutter_actor_get_geometry(IOCACTOR(self), &geometry);
364 399
   return clutter_geometry_to_ioObject(IOSTATE, self, &geometry);
365 400
 }
366 401
 
  402
+//doc ClutterActor setGeometry(x, y, width, height) Sets actor's geometry.
367 403
 IO_METHOD(IoClutterActor, setGeometry) {
368 404
   ClutterGeometry geometry = { 0, 0, 0, 0, };
369 405
   geometry.x       = IoMessage_locals_intArgAt_(m, locals, 0);
@@ -375,6 +411,7 @@ IO_METHOD(IoClutterActor, setGeometry) {
375 411
   return self;
376 412
 }
377 413
 
  414
+//doc ClutterActor size Returns an [[Object]] with slots <code>width</code> and <code>height</code> set.
378 415
 IO_METHOD(IoClutterActor, getSize) {
379 416
   float width = 0,
380 417
         height = 0;
@@ -387,6 +424,7 @@ IO_METHOD(IoClutterActor, getSize) {
387 424
   return size;
388 425
 }
389 426
 
  427
+//doc ClutterActor setSize(width, height) Sets actor's size.
390 428
 IO_METHOD(IoClutterActor, setSize) {
391 429
   float width   = IoMessage_locals_floatArgAt_(m, locals, 0),
392 430
         height  = IoMessage_locals_floatArgAt_(m, locals, 1);
@@ -395,6 +433,7 @@ IO_METHOD(IoClutterActor, setSize) {
395 433
   return self;
396 434
 }
397 435
 
  436
+//doc ClutterActor position Returns an [[Object]] with slots <code>x</code> and <code>y</code> set.
398 437
 IO_METHOD(IoClutterActor, getPosition) {
399 438
   float x = 0,
400 439
         y = 0;
@@ -407,6 +446,7 @@ IO_METHOD(IoClutterActor, getPosition) {
407 446
   return size;
408 447
 }
409 448
 
  449
+//doc ClutterActor setPosition(x, y) Sets actor's position.
410 450
 IO_METHOD(IoClutterActor, setPosition) {
411 451
   float x  = IoMessage_locals_floatArgAt_(m, locals, 0),
412 452
         y  = IoMessage_locals_floatArgAt_(m, locals, 1);
@@ -415,42 +455,51 @@ IO_METHOD(IoClutterActor, setPosition) {
415 455
   return self;
416 456
 }
417 457
 
  458
+//doc ClutterActor width
418 459
 IO_METHOD(IoClutterActor, getWidth) {
419 460
   return IONUMBER(clutter_actor_get_width(IOCACTOR(self)));
420 461
 }
421 462
 
  463
+//doc ClutterActor setWidth(width)
422 464
 IO_METHOD(IoClutterActor, setWidth) {
423 465
   clutter_actor_set_width(IOCACTOR(self), IoMessage_locals_floatArgAt_(m, locals, 0));
424 466
   return self;
425 467
 }
426 468
 
  469
+//doc ClutterActor height
427 470
 IO_METHOD(IoClutterActor, getHeight) {
428 471
   return IONUMBER(clutter_actor_get_height(IOCACTOR(self)));
429 472
 }
430 473
 
  474
+//doc ClutterActor setHeight(height)
431 475
 IO_METHOD(IoClutterActor, setHeight) {
432 476
   clutter_actor_set_height(IOCACTOR(self), IoMessage_locals_floatArgAt_(m, locals, 0));
433 477
   return self;
434 478
 }
435 479
 
  480
+//doc ClutterActor x
436 481
 IO_METHOD(IoClutterActor, getX) {
437 482
   return IONUMBER(clutter_actor_get_x(IOCACTOR(self)));
438 483
 }
439 484
 
  485
+//doc ClutterActor setX(xCoord)
440 486
 IO_METHOD(IoClutterActor, setX) {
441 487
   clutter_actor_set_x(IOCACTOR(self), IoMessage_locals_floatArgAt_(m, locals, 0));
442 488
   return self;
443 489
 }
444 490
 
  491
+//doc ClutterActor y
445 492
 IO_METHOD(IoClutterActor, getY) {
446 493
   return IONUMBER(clutter_actor_get_y(IOCACTOR(self)));
447 494
 }
448 495
 
  496
+//doc ClutterActor setY(yCoord)
449 497
 IO_METHOD(IoClutterActor, setY) {
450 498
   clutter_actor_set_y(IOCACTOR(self), IoMessage_locals_floatArgAt_(m, locals, 0));
451 499
   return self;
452 500
 }
453 501
 
  502
+//doc ClutterActor moveBy(dx, dy)
454 503
 IO_METHOD(IoClutterActor, moveBy) {
455 504
   float dx = IoMessage_locals_floatArgAt_(m, locals, 0),
456 505
         dy = IoMessage_locals_floatArgAt_(m, locals, 1);
@@ -459,6 +508,9 @@ IO_METHOD(IoClutterActor, moveBy) {
459 508
   return self;
460 509
 }
461 510
 
  511
+
  512
+/*doc ClutterActor rotation
  513
+Returns an [[Object]] with slots <code>x</code>, <code>y</code>, <code>z</code> and <code>angle</code> set.*/
462 514
 IO_METHOD(IoClutterActor, getRotation) {
463 515
   ClutterRotateAxis axis = IoMessage_locals_intArgAt_(m, locals, 0);
464 516
   float x = 0,
@@ -475,6 +527,7 @@ IO_METHOD(IoClutterActor, getRotation) {
475 527
   return rotation;
476 528
 }
477 529
 
  530
+//doc ClutterActor setRotation(axis, angle, x, y, z) Sets actor's rotation. Use <code>Clutter AXIS X/Y/Z</code> for first argument.
478 531
 IO_METHOD(IoClutterActor, setRotation) {
479 532
   ClutterRotateAxis axis = IoMessage_locals_intArgAt_(m, locals, 0);
480 533
   double angle  = IoMessage_locals_doubleArgAt_(m, locals, 1);
@@ -486,10 +539,12 @@ IO_METHOD(IoClutterActor, setRotation) {
486 539
   return self;
487 540
 }
488 541
 
  542
+//doc ClutterActor zRotationGravity Returns an object from [[Clutter GRAVITY]].
489 543
 IO_METHOD(IoClutterActor, getZRotationGravity) {
490 544
   return IONUMBER(clutter_actor_get_z_rotation_gravity(IOCACTOR(self)));
491 545
 }
492 546
 
  547
+//doc ClutterActor setZRotationFromGravity(angle, gravity)
493 548
 IO_METHOD(IoClutterActor, setZRotationFromGravity) {
494 549
   clutter_actor_set_z_rotation_from_gravity(
495 550
     IOCACTOR(self),
@@ -499,14 +554,17 @@ IO_METHOD(IoClutterActor, setZRotationFromGravity) {
499 554
   return self;
500 555
 }
501 556
 
  557
+//doc ClutterActor isRotated
502 558
 IO_METHOD(IoClutterActor, isRotated) {
503 559
   return IOBOOL(self, clutter_actor_is_rotated(IOCACTOR(self)));
504 560
 }
505 561
 
  562
+//doc ClutterActor opacity
506 563
 IO_METHOD(IoClutterActor, getOpacity) {
507 564
   return IONUMBER(clutter_actor_get_opacity(IOCACTOR(self)));
508 565
 }
509 566
 
  567
+//doc ClutterActor setOpacity(opacity)
510 568
 IO_METHOD(IoClutterActor, setOpacity) {
511 569
   clutter_actor_set_opacity(
512 570
     IOCACTOR(self),
@@ -515,10 +573,12 @@ IO_METHOD(IoClutterActor, setOpacity) {
515 573
   return self;
516 574
 }
517 575
 
  576
+//doc ClutterActor name
518 577
 IO_METHOD(IoClutterActor, getName) {
519 578
   return IOSYMBOL(clutter_actor_get_name(IOCACTOR(self)));
520 579
 }
521 580
 
  581
+//doc ClutterActor setName
522 582
 IO_METHOD(IoClutterActor, setName) {
523 583
   clutter_actor_set_name(
524 584
     IOCACTOR(self),
@@ -527,10 +587,13 @@ IO_METHOD(IoClutterActor, setName) {
527 587
   return self;
528 588
 }
529 589
 
  590
+//doc ClutterActor gid
530 591
 IO_METHOD(IoClutterActor, getGid) {
531 592
   return IONUMBER(clutter_actor_get_gid(IOCACTOR(self)));
532 593
 }
533 594
 
  595
+/*doc ClutterActor clip
  596
+Returns an [[Object]] with slots <code>xOff</code>, <code>yOff</code>, <code>width</code> and <code>height</code> set. */
534 597
 IO_METHOD(IoClutterActor, getClip) {
535 598
   float xoff    = 0,
536 599
         yoff    = 0,
@@ -547,6 +610,7 @@ IO_METHOD(IoClutterActor, getClip) {
547 610
   return result;
548 611
 }
549 612
 
  613
+//doc ClutterActor setClip(xOff, yOff, width, height)
550 614
 IO_METHOD(IoClutterActor, setClip) {
551 615
   clutter_actor_set_clip(
552 616
     IOCACTOR(self),
@@ -558,15 +622,18 @@ IO_METHOD(IoClutterActor, setClip) {
558 622
   return self;
559 623
 }
560 624
 
  625
+//doc ClutterActor hasClip
561 626
 IO_METHOD(IoClutterActor, hasClip) {
562 627
   return IOBOOL(self, clutter_actor_has_clip(IOCACTOR(self)));
563 628
 }
564 629
 
  630
+//doc ClutterActor removeClip
565 631
 IO_METHOD(IoClutterActor, removeClip) {
566 632
   clutter_actor_remove_clip(IOCACTOR(self));
567 633
   return self;
568 634
 }
569 635
 
  636
+//doc ClutterActor parent
570 637
 IO_METHOD(IoClutterActor, getParent) {
571 638
   return IoClutterActor_newWithActor(
572 639
     IOSTATE,
@@ -574,6 +641,7 @@ IO_METHOD(IoClutterActor, getParent) {
574 641
   );
575 642
 }
576 643
 
  644
+//doc ClutterActor setParent(parentActor)
577 645
 IO_METHOD(IoClutterActor, setParent) {
578 646
   clutter_actor_set_parent(
579 647
     IOCACTOR(self),
@@ -582,6 +650,7 @@ IO_METHOD(IoClutterActor, setParent) {
582 650
   return self;
583 651
 }
584 652
 
  653
+//doc ClutterActor reparent
585 654
 IO_METHOD(IoClutterActor, reparent) {
586 655
   clutter_actor_reparent(
587 656
     IOCACTOR(self),
@@ -590,11 +659,13 @@ IO_METHOD(IoClutterActor, reparent) {
590 659
   return self;
591 660
 }
592 661
 
  662
+//doc ClutterActor unparent
593 663
 IO_METHOD(IoClutterActor, unparent) {
594 664
   clutter_actor_unparent(IOCACTOR(self));
595 665
   return self;
596 666
 }
597 667
 
  668
+//doc ClutterActor raise
598 669
 IO_METHOD(IoClutterActor, raise) {
599 670
   clutter_actor_raise(
600 671
     IOCACTOR(self),
@@ -604,6 +675,7 @@ IO_METHOD(IoClutterActor, raise) {
604 675
   return self;
605 676
 }
606 677
 
  678
+//doc ClutterActor lower
607 679
 IO_METHOD(IoClutterActor, lower) {
608 680
   clutter_actor_lower(
609 681
     IOCACTOR(self),
@@ -613,21 +685,25 @@ IO_METHOD(IoClutterActor, lower) {
613 685
   return self;
614 686
 }
615 687
 
  688
+
  689
+//doc ClutterActor raiseToTop
616 690
 IO_METHOD(IoClutterActor, raiseToTop) {
617 691
   clutter_actor_raise_top(IOCACTOR(self));
618 692
 
619 693
   return self;
620 694
 }
621 695
 
  696
+//doc ClutterActor lowerToBottom
622 697
 IO_METHOD(IoClutterActor, lowerToBottom) {
623 698
   clutter_actor_lower_bottom(IOCACTOR(self));
624 699
 
625 700
   return self;
626 701
 }
627 702
 
  703
+//doc ClutterActor stage
628 704
 IO_METHOD(IoClutterActor, getStage) {
629 705
   return IoClutterActor_newWithActor(
630 706
     IOSTATE,
631 707
     clutter_actor_get_stage(IOCACTOR(self))
632 708
   );
633  
-}
  709
+}
25  addons/Clutter/source/IoClutterActorBox.c
... ...
@@ -1,4 +1,6 @@
1 1
 #include "IoClutterActorBox.h"
  2
+//metadoc ClutterActorBox category UserInterface
  3
+//metadoc ClutterActorBox description For more detailed docs see <a href="http://clutter-project.org/docs/clutter/stable/ClutterActor.html#ClutterActorBox">Clutter documentation</a>.
2 4
 
3 5
 /*** Initalisation functions ***/
4 6
 IoTag *IoClutterActorBox_newTag(void *state) {
@@ -68,12 +70,13 @@ IoObject *IoMessage_locals_clutterActorBoxArgAt_(IoMessage *self, IoObject *loca
68 70
 }
69 71
 
70 72
 /*** Object functions ***/
71  
-//doc ClutterActorBox with(x1, y1, x2, y2)
  73
+
72 74
 IO_METHOD(IoClutterActorBox, equals) {
73 75
   ClutterActorBox *other = IOCABOX(IoMessage_locals_clutterActorBoxArgAt_(m, locals, 0));
74 76
   return IOBOOL(self, clutter_actor_box_equal(IOCABOX(self), other));
75 77
 }
76 78
 
  79
+//doc ClutterActorBox with(x1, y1, x2, y2)
77 80
 IO_METHOD(IoClutterActorBox, with) {
78 81
   float x1 = IoMessage_locals_floatArgAt_(m, locals, 0),
79 82
         y1 = IoMessage_locals_floatArgAt_(m, locals, 1),
@@ -81,39 +84,40 @@ IO_METHOD(IoClutterActorBox, with) {
81 84
         y2 = IoMessage_locals_floatArgAt_(m, locals, 3);
82 85
 
83 86
   ClutterActorBox *actorBox = clutter_actor_box_new(x1, y1, x2, y2);
84  
-  IoClutterActorBox *clone = IoClutterActorBox_newWithActorBox(IOSTATE, actorBox);
  87
+  IoClutterActorBox *klone = IoClutterActorBox_newWithActorBox(IOSTATE, actorBox);
85 88
 
86  
-  IoObject_setSlot_to_(clone,
  89
+  IoObject_setSlot_to_(klone,
87 90
     IOSYMBOL("x1"), IoMessage_locals_numberArgAt_(m, locals, 0)
88 91
   );
89 92
 
90  
-  IoObject_setSlot_to_(clone,
  93
+  IoObject_setSlot_to_(klone,
91 94
     IOSYMBOL("y1"), IoMessage_locals_numberArgAt_(m, locals, 1)
92 95
   );
93 96
 
94  
-  IoObject_setSlot_to_(clone,
  97
+  IoObject_setSlot_to_(klone,
95 98
     IOSYMBOL("x2"), IoMessage_locals_numberArgAt_(m, locals, 2)
96 99
   );
97 100
 
98  
-  IoObject_setSlot_to_(clone,
  101
+  IoObject_setSlot_to_(klone,
99 102
     IOSYMBOL("y2"), IoMessage_locals_numberArgAt_(m, locals, 3)
100 103
   );
101 104
 
102  
-  IoObject_setSlot_to_(clone,
  105
+  IoObject_setSlot_to_(klone,
103 106
     IOSYMBOL("width"), IONUMBER(clutter_actor_box_get_width(actorBox))
104 107
   );
105 108
 
106  
-  IoObject_setSlot_to_(clone,
  109
+  IoObject_setSlot_to_(klone,
107 110
     IOSYMBOL("height"), IONUMBER(clutter_actor_box_get_height(actorBox))
108 111
   );
109 112
 
110  
-  IoObject_setSlot_to_(clone,
  113
+  IoObject_setSlot_to_(klone,
111 114
     IOSYMBOL("area"), IONUMBER(clutter_actor_box_get_area(actorBox))
112 115
   );
113 116
 
114 117
   return clone;
115 118
 }
116 119
 
  120
+//doc ClutterActorBox origin
117 121
 IO_METHOD(IoClutterActorBox, getOrigin) {
118 122
   float x = 0,
119 123
         y = 0;
@@ -126,6 +130,7 @@ IO_METHOD(IoClutterActorBox, getOrigin) {
126 130
   return coords;
127 131
 }
128 132
 
  133
+//doc ClutterActorBox size
129 134
 IO_METHOD(IoClutterActorBox, getSize) {
130 135
   float width  = 0,
131 136
         height = 0;
@@ -145,4 +150,4 @@ IO_METHOD(IoClutterActorBox, contains) {
145 150
   int contains = clutter_actor_box_contains(IOCABOX(self), x, y);
146 151
 
147 152
   return IOBOOL(self, contains);
148  
-}
  153
+}
25  addons/Clutter/source/IoClutterColor.c
... ...
@@ -1,6 +1,14 @@
1 1
 #include "IoClutterColor.h"
2 2
 #define DATA(self) ((IoClutterColorData*)IoObject_dataPointer(self))
3 3
 
  4
+//metadoc ClutterColor category UserInterface
  5
+/*metadoc ClutterColor description
  6
+<p>
  7
+For more detailed docs see <a href="http://clutter-project.org/docs/clutter/stable/clutter-Colors.html">Clutter documentation</a>.</p>
  8
+<pre><code>red := ClutterColor fromString("red")
  9
+blue := "#00f" asClutterColor
  10
+(red + blue) asString println</code></pre>*/
  11
+
4 12
 /*** Initalisation functions ***/
5 13
 IoTag *IoClutterColor_newTag(void *state) {
6 14
   IoTag *tag = IoTag_newWithName_("ClutterColor");
@@ -83,16 +91,19 @@ IoObject *IoMessage_locals_clutterColorArgAt_(IoMessage *self, IoObject *locals,
83 91
   return v;
84 92
 }
85 93
 
  94
+//doc ClutterColor ==(otherColor)
86 95
 IO_METHOD(IoClutterColor, equals) {
87 96
   ClutterColor other = IOCCOLOR(IoMessage_locals_clutterColorArgAt_(m, locals, 0));
88 97
   return IOBOOL(self, clutter_color_equal(&(IOCCOLOR(self)), &other));
89 98
 }
90 99
 
  100
+//doc ClutterColor !=(otherColor)
91 101
 IO_METHOD(IoClutterColor, notEquals) {
92 102
   ClutterColor other = IOCCOLOR(IoMessage_locals_clutterColorArgAt_(m, locals, 0));
93 103
   return IOBOOL(self, !clutter_color_equal(&(IOCCOLOR(self)), &other));
94 104
 }
95 105
 
  106
+//doc ClutterColor fromString(str)
96 107
 IO_METHOD(IoClutterColor, fromString) {
97 108
   ClutterColor color;
98 109
   char *seq = CSTRING(IoMessage_locals_seqArgAt_(m, locals, 0));
@@ -101,11 +112,13 @@ IO_METHOD(IoClutterColor, fromString) {
101 112
   return IoClutterColor_newWithColor(IOSTATE, color);
102 113
 }
103 114
 
  115
+//doc ClutterColor asString
104 116
 IO_METHOD(IoClutterColor, asString) {
105 117
   char *color = clutter_color_to_string(&(IOCCOLOR(self)));
106 118
   return IOSYMBOL(color);
107 119
 }
108 120
 
  121
+//doc ClutterColor fromHLS(h, l, s)
109 122
 IO_METHOD(IoClutterColor, fromHLS) {
110 123
   ClutterColor color;
111 124
   float h = CNUMBER(IoMessage_locals_numberArgAt_(m, locals, 0)),
@@ -117,6 +130,7 @@ IO_METHOD(IoClutterColor, fromHLS) {
117 130
   return IoClutterColor_newWithColor(IOSTATE, color);
118 131
 }
119 132
 
  133
+//doc ClutterColor toHLS(h, l, s)
120 134
 IO_METHOD(IoClutterColor, toHLS) {
121 135
   float h = CNUMBER(IoMessage_locals_numberArgAt_(m, locals, 0)),
122 136
         l = CNUMBER(IoMessage_locals_numberArgAt_(m, locals, 1)),
@@ -126,6 +140,7 @@ IO_METHOD(IoClutterColor, toHLS) {
126 140
   return self;
127 141
 }
128 142
 
  143
+//doc ClutterColor fromPixel(pixel)
129 144
 IO_METHOD(IoClutterColor, fromPixel) {
130 145
   ClutterColor color;
131 146
   guint32 pixel = CNUMBER(IoMessage_locals_numberArgAt_(m, locals, 0));
@@ -134,10 +149,12 @@ IO_METHOD(IoClutterColor, fromPixel) {
134 149
   return IoClutterColor_newWithColor(IOSTATE, color);
135 150
 }
136 151
 
  152
+//doc ClutterColor toPixel
137 153
 IO_METHOD(IoClutterColor, toPixel) {
138 154
   return IONUMBER(clutter_color_to_pixel(&IOCCOLOR(self)));
139 155
 }
140 156
 
  157
+//doc ClutterColor +(otherColor)
141 158
 IO_METHOD(IoClutterColor, add) {
142 159
   ClutterColor color_a = IOCCOLOR(self);
143 160
   ClutterColor color_b = IOCCOLOR(IoMessage_locals_clutterColorArgAt_(m, locals, 0));
@@ -147,6 +164,7 @@ IO_METHOD(IoClutterColor, add) {
147 164
   return IoClutterColor_newWithColor(IOSTATE, result);
148 165
 }
149 166
 
  167
+//doc ClutterColor addInPlace(otherColor)
150 168
 IO_METHOD(IoClutterColor, addInPlace) {
151 169
   ClutterColor color_a = IOCCOLOR(self);
152 170
   ClutterColor color_b = IOCCOLOR(IoMessage_locals_clutterColorArgAt_(m, locals, 0));
@@ -159,6 +177,7 @@ IO_METHOD(IoClutterColor, addInPlace) {
159 177
   return self;
160 178
 }
161 179
 
  180
+//doc ClutterColor -(otherColor)
162 181
 IO_METHOD(IoClutterColor, subtract) {
163 182
   ClutterColor color_a = IOCCOLOR(self);
164 183
   ClutterColor color_b = IOCCOLOR(IoMessage_locals_clutterColorArgAt_(m, locals, 0));
@@ -168,6 +187,7 @@ IO_METHOD(IoClutterColor, subtract) {
168 187
   return IoClutterColor_newWithColor(IOSTATE, result);
169 188
 }
170 189
 
  190
+//doc ClutterColor subtractInPlace(otherColor)
171 191
 IO_METHOD(IoClutterColor, subtractInPlace) {
172 192
   ClutterColor color_a = IOCCOLOR(self);
173 193
   ClutterColor color_b = IOCCOLOR(IoMessage_locals_clutterColorArgAt_(m, locals, 0));
@@ -180,6 +200,7 @@ IO_METHOD(IoClutterColor, subtractInPlace) {
180 200
   return self;
181 201
 }
182 202
 
  203
+//doc ClutterColor lighten
183 204
 IO_METHOD(IoClutterColor, lighten) {
184 205
   ClutterColor result;
185 206
   clutter_color_lighten(&IOCCOLOR(self), &result);
@@ -187,6 +208,7 @@ IO_METHOD(IoClutterColor, lighten) {
187 208
   return IoClutterColor_newWithColor(IOSTATE, result);
188 209
 }
189 210
 
  211
+//doc ClutterColor darken
190 212
 IO_METHOD(IoClutterColor, darken) {
191 213
   ClutterColor result;
192 214
   clutter_color_darken(&IOCCOLOR(self), &result);
@@ -194,10 +216,11 @@ IO_METHOD(IoClutterColor, darken) {
194 216
   return IoClutterColor_newWithColor(IOSTATE, result);
195 217
 }
196 218
 
  219
+//doc ClutterColor shade(amount)
197 220
 IO_METHOD(IoClutterColor, shade) {
198 221
   ClutterColor result;
199 222
   double factor = CNUMBER(IoMessage_locals_numberArgAt_(m, locals, 0));
200 223
   clutter_color_shade(&IOCCOLOR(self), factor, &result);
201 224
 
202 225
   return IoClutterColor_newWithColor(IOSTATE, result);
203  
-}
  226
+}
22  addons/Clutter/source/IoClutterEvent.c
... ...
@@ -1,4 +1,6 @@
1 1
 #include "IoClutterEvent.h"
  2
+//metadoc ClutterEvent category UserInterface
  3
+//metadoc ClutterEvent description For more detailed docs see <a href="http://clutter-project.org/docs/clutter/stable/clutter-Events.html">Clutter documentation</a>.
2 4
 
3 5
 /*** Initalisation functions ***/
4 6
 IoTag *IoClutterEvent_newTag(void *state) {
@@ -85,10 +87,12 @@ IoObject *IoMessage_locals_clutterEventArgAt_(IoMessage *self, IoObject *locals,
85 87
   return v;
86 88
 }
87 89
 
  90
+//doc ClutterEvent eventType Returns a value from [[Clutter EVENT]].
88 91
 IO_METHOD(IoClutterEvent, eventType) {
89 92
   return IONUMBER(clutter_event_type(IOCEVENT(self)));
90 93
 }
91 94
 
  95
+//doc ClutterEvent coords Returns an [[Object]] with slots <code>x</code> and <code>y</code> set.
92 96
 IO_METHOD(IoClutterEvent, getCoords) {
93 97
   float x = 0,
94 98
         y = 0;
@@ -101,14 +105,18 @@ IO_METHOD(IoClutterEvent, getCoords) {
101 105
   return coords;
102 106
 }
103 107
 
  108
+//doc ClutterEvent state Returns a value from [[Clutter STATE]].
104 109
 IO_METHOD(IoClutterEvent, getState) {
105 110
   return IONUMBER(clutter_event_get_state(IOCEVENT(self)));
106 111
 }
107 112
 
  113
+
  114
+//doc ClutterEvent time Returns a [[Date]] object.
108 115
 IO_METHOD(IoClutterEvent, getTime) {
109 116
   return IoDate_newWithTime_(IOSTATE, clutter_event_get_time(IOCEVENT(self)));
110 117
 }
111 118
 
  119
+//doc ClutterEvent source
112 120
 IO_METHOD(IoClutterEvent, getSource) {
113 121
   return IoClutterActor_newWithActor(IOSTATE, clutter_event_get_source(IOCEVENT(self)));
114 122
 }
@@ -117,59 +125,71 @@ IO_METHOD(IoClutterEvent, getSource) {
117 125
 //  return IoDate_newWithTime_(IOSTATE, clutter_event_get_time(IOCEVENT(self)));
118 126
 //}
119 127
 
  128
+//doc ClutterEvent flags
120 129
 IO_METHOD(IoClutterEvent, getFlags) {
121 130
   return IONUMBER(clutter_event_get_flags(IOCEVENT(self)));
122 131
 }
123 132
 
  133
+//doc ClutterEvent peek
124 134
 IO_METHOD(IoClutterEvent, peek) {
125 135
   ClutterEvent *event = clutter_event_peek();
126 136
   return (event == NULL) ? IONIL(self) : IoClutterEvent_newWithEvent(IOSTATE, event);
127 137
 }
128 138
 
  139
+//doc ClutterEvent put(event)
129 140
 IO_METHOD(IoClutterEvent, put) {
130 141
   clutter_event_put(IOCEVENT(IoMessage_locals_clutterEventArgAt_(m, locals, 0)));
131 142
   return self;
132 143
 }
133 144
 
134  
-// ClutterEvent putBack() Puts <code>self</code> back to event queue.
  145
+// ClutterEvent putBack Puts <code>self</code> back to event queue.
135 146
 IO_METHOD(IoClutterEvent, putBack) {
136 147
   clutter_event_put(IOCEVENT(self));
137 148