gio2 0.90.3-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (856) hide show
  1. data/ChangeLog +60 -0
  2. data/README +34 -0
  3. data/Rakefile +76 -0
  4. data/ext/gio2/depend +5 -0
  5. data/ext/gio2/extconf.rb +91 -0
  6. data/ext/gio2/gappinfo.c +318 -0
  7. data/ext/gio2/gapplaunchcontext.c +79 -0
  8. data/ext/gio2/gasyncinitable.c +244 -0
  9. data/ext/gio2/gasyncresult.c +39 -0
  10. data/ext/gio2/gbufferedinputstream.c +184 -0
  11. data/ext/gio2/gbufferedoutputstream.c +82 -0
  12. data/ext/gio2/gcancellable.c +177 -0
  13. data/ext/gio2/gcharsetconverter.c +72 -0
  14. data/ext/gio2/gcontenttype.c +135 -0
  15. data/ext/gio2/gconverter.c +117 -0
  16. data/ext/gio2/gconverterinputstream.c +48 -0
  17. data/ext/gio2/gconverteroutputstream.c +48 -0
  18. data/ext/gio2/gdatainputstream.c +341 -0
  19. data/ext/gio2/gdataoutputstream.c +202 -0
  20. data/ext/gio2/gdesktopappinfo.c +90 -0
  21. data/ext/gio2/gdrive.c +267 -0
  22. data/ext/gio2/gemblem.c +71 -0
  23. data/ext/gio2/gemblemedicon.c +63 -0
  24. data/ext/gio2/gfile.c +2058 -0
  25. data/ext/gio2/gfileattribute.c +263 -0
  26. data/ext/gio2/gfileattributematcher.c +90 -0
  27. data/ext/gio2/gfiledescriptorbased.c +42 -0
  28. data/ext/gio2/gfileenumerator.c +167 -0
  29. data/ext/gio2/gfileicon.c +46 -0
  30. data/ext/gio2/gfileinfo.c +641 -0
  31. data/ext/gio2/gfileinputstream.c +92 -0
  32. data/ext/gio2/gfileiostream.c +98 -0
  33. data/ext/gio2/gfilemonitor.c +63 -0
  34. data/ext/gio2/gfilenamecompleter.c +72 -0
  35. data/ext/gio2/gfileoutputstream.c +100 -0
  36. data/ext/gio2/gfilterinputstream.c +56 -0
  37. data/ext/gio2/gfilteroutputstream.c +56 -0
  38. data/ext/gio2/gicon.c +69 -0
  39. data/ext/gio2/ginetaddress.c +188 -0
  40. data/ext/gio2/ginetsocketaddress.c +54 -0
  41. data/ext/gio2/ginitable.c +195 -0
  42. data/ext/gio2/ginputstream.c +341 -0
  43. data/ext/gio2/gio2.c +120 -0
  44. data/ext/gio2/gio2.def +2 -0
  45. data/ext/gio2/gio2.h +343 -0
  46. data/ext/gio2/gioerror.c +67 -0
  47. data/ext/gio2/giomodule.c +63 -0
  48. data/ext/gio2/gioscheduler.c +195 -0
  49. data/ext/gio2/giostream.c +129 -0
  50. data/ext/gio2/gloadableicon.c +91 -0
  51. data/ext/gio2/gmemoryinputstream.c +65 -0
  52. data/ext/gio2/gmemoryoutputstream.c +65 -0
  53. data/ext/gio2/gmount.c +283 -0
  54. data/ext/gio2/gmountoperation.c +168 -0
  55. data/ext/gio2/gnetworkaddress.c +71 -0
  56. data/ext/gio2/gnetworkservice.c +64 -0
  57. data/ext/gio2/goutputstream.c +343 -0
  58. data/ext/gio2/gresolver.c +230 -0
  59. data/ext/gio2/gseekable.c +89 -0
  60. data/ext/gio2/gsimpleasyncresult.c +153 -0
  61. data/ext/gio2/gsocket.c +451 -0
  62. data/ext/gio2/gsocketaddress.c +45 -0
  63. data/ext/gio2/gsocketclient.c +273 -0
  64. data/ext/gio2/gsocketconnectable.c +97 -0
  65. data/ext/gio2/gsocketconnection.c +82 -0
  66. data/ext/gio2/gsocketcontrolmessage.c +82 -0
  67. data/ext/gio2/gsocketlistener.c +239 -0
  68. data/ext/gio2/gsocketservice.c +64 -0
  69. data/ext/gio2/gsrvtarget.c +77 -0
  70. data/ext/gio2/gtcpconnection.c +48 -0
  71. data/ext/gio2/gthemedicon.c +86 -0
  72. data/ext/gio2/gthreadedsocketservice.c +39 -0
  73. data/ext/gio2/gunixconnection.c +69 -0
  74. data/ext/gio2/gunixfdlist.c +112 -0
  75. data/ext/gio2/gunixfdmessage.c +81 -0
  76. data/ext/gio2/gunixinputstream.c +73 -0
  77. data/ext/gio2/gunixmounts.c +346 -0
  78. data/ext/gio2/gunixoutputstream.c +73 -0
  79. data/ext/gio2/gunixsocketaddress.c +79 -0
  80. data/ext/gio2/gvfs.c +84 -0
  81. data/ext/gio2/gvolume.c +191 -0
  82. data/ext/gio2/gvolumemonitor.c +77 -0
  83. data/ext/gio2/gzlibcompressor.c +47 -0
  84. data/ext/gio2/gzlibdecompressor.c +43 -0
  85. data/ext/gio2/util.c +323 -0
  86. data/extconf.rb +49 -0
  87. data/lib/1.8/gio2.so +0 -0
  88. data/lib/1.9/gio2.so +0 -0
  89. data/lib/gio2.rb +141 -0
  90. data/vendor/local/bin/envsubst.exe +0 -0
  91. data/vendor/local/bin/gettext.exe +0 -0
  92. data/vendor/local/bin/gettext.sh +123 -0
  93. data/vendor/local/bin/glib-genmarshal.exe +0 -0
  94. data/vendor/local/bin/glib-gettextize +188 -0
  95. data/vendor/local/bin/glib-mkenums +537 -0
  96. data/vendor/local/bin/gobject-query.exe +0 -0
  97. data/vendor/local/bin/gspawn-win32-helper-console.exe +0 -0
  98. data/vendor/local/bin/gspawn-win32-helper.exe +0 -0
  99. data/vendor/local/bin/intl.dll +0 -0
  100. data/vendor/local/bin/libasprintf-0.dll +0 -0
  101. data/vendor/local/bin/libgcc_s_dw2-1.dll +0 -0
  102. data/vendor/local/bin/libgio-2.0-0.dll +0 -0
  103. data/vendor/local/bin/libglib-2.0-0.dll +0 -0
  104. data/vendor/local/bin/libgmodule-2.0-0.dll +0 -0
  105. data/vendor/local/bin/libgobject-2.0-0.dll +0 -0
  106. data/vendor/local/bin/libgthread-2.0-0.dll +0 -0
  107. data/vendor/local/bin/ngettext.exe +0 -0
  108. data/vendor/local/include/autosprintf.h +66 -0
  109. data/vendor/local/include/glib-2.0/gio/gappinfo.h +236 -0
  110. data/vendor/local/include/glib-2.0/gio/gasyncinitable.h +119 -0
  111. data/vendor/local/include/glib-2.0/gio/gasyncresult.h +73 -0
  112. data/vendor/local/include/glib-2.0/gio/gbufferedinputstream.h +123 -0
  113. data/vendor/local/include/glib-2.0/gio/gbufferedoutputstream.h +81 -0
  114. data/vendor/local/include/glib-2.0/gio/gcancellable.h +103 -0
  115. data/vendor/local/include/glib-2.0/gio/gcharsetconverter.h +60 -0
  116. data/vendor/local/include/glib-2.0/gio/gcontenttype.h +57 -0
  117. data/vendor/local/include/glib-2.0/gio/gconverter.h +95 -0
  118. data/vendor/local/include/glib-2.0/gio/gconverterinputstream.h +79 -0
  119. data/vendor/local/include/glib-2.0/gio/gconverteroutputstream.h +79 -0
  120. data/vendor/local/include/glib-2.0/gio/gcredentials.h +76 -0
  121. data/vendor/local/include/glib-2.0/gio/gdatainputstream.h +150 -0
  122. data/vendor/local/include/glib-2.0/gio/gdataoutputstream.h +115 -0
  123. data/vendor/local/include/glib-2.0/gio/gdbusaddress.h +58 -0
  124. data/vendor/local/include/glib-2.0/gio/gdbusauthobserver.h +46 -0
  125. data/vendor/local/include/glib-2.0/gio/gdbusconnection.h +562 -0
  126. data/vendor/local/include/glib-2.0/gio/gdbuserror.h +100 -0
  127. data/vendor/local/include/glib-2.0/gio/gdbusintrospection.h +286 -0
  128. data/vendor/local/include/glib-2.0/gio/gdbusmessage.h +149 -0
  129. data/vendor/local/include/glib-2.0/gio/gdbusmethodinvocation.h +73 -0
  130. data/vendor/local/include/glib-2.0/gio/gdbusnameowning.h +112 -0
  131. data/vendor/local/include/glib-2.0/gio/gdbusnamewatching.h +94 -0
  132. data/vendor/local/include/glib-2.0/gio/gdbusproxy.h +167 -0
  133. data/vendor/local/include/glib-2.0/gio/gdbusserver.h +54 -0
  134. data/vendor/local/include/glib-2.0/gio/gdbusutils.h +44 -0
  135. data/vendor/local/include/glib-2.0/gio/gdrive.h +225 -0
  136. data/vendor/local/include/glib-2.0/gio/gemblem.h +58 -0
  137. data/vendor/local/include/glib-2.0/gio/gemblemedicon.h +62 -0
  138. data/vendor/local/include/glib-2.0/gio/gfile.h +1017 -0
  139. data/vendor/local/include/glib-2.0/gio/gfileattribute.h +77 -0
  140. data/vendor/local/include/glib-2.0/gio/gfileenumerator.h +132 -0
  141. data/vendor/local/include/glib-2.0/gio/gfileicon.h +56 -0
  142. data/vendor/local/include/glib-2.0/gio/gfileinfo.h +952 -0
  143. data/vendor/local/include/glib-2.0/gio/gfileinputstream.h +112 -0
  144. data/vendor/local/include/glib-2.0/gio/gfileiostream.h +118 -0
  145. data/vendor/local/include/glib-2.0/gio/gfilemonitor.h +95 -0
  146. data/vendor/local/include/glib-2.0/gio/gfilenamecompleter.h +76 -0
  147. data/vendor/local/include/glib-2.0/gio/gfileoutputstream.h +119 -0
  148. data/vendor/local/include/glib-2.0/gio/gfilterinputstream.h +76 -0
  149. data/vendor/local/include/glib-2.0/gio/gfilteroutputstream.h +76 -0
  150. data/vendor/local/include/glib-2.0/gio/gicon.h +91 -0
  151. data/vendor/local/include/glib-2.0/gio/ginetaddress.h +103 -0
  152. data/vendor/local/include/glib-2.0/gio/ginetsocketaddress.h +69 -0
  153. data/vendor/local/include/glib-2.0/gio/ginitable.h +96 -0
  154. data/vendor/local/include/glib-2.0/gio/ginputstream.h +172 -0
  155. data/vendor/local/include/glib-2.0/gio/gio.h +122 -0
  156. data/vendor/local/include/glib-2.0/gio/gioenums.h +1221 -0
  157. data/vendor/local/include/glib-2.0/gio/gioenumtypes.h +121 -0
  158. data/vendor/local/include/glib-2.0/gio/gioerror.h +52 -0
  159. data/vendor/local/include/glib-2.0/gio/giomodule.h +132 -0
  160. data/vendor/local/include/glib-2.0/gio/gioscheduler.h +52 -0
  161. data/vendor/local/include/glib-2.0/gio/giostream.h +112 -0
  162. data/vendor/local/include/glib-2.0/gio/giotypes.h +375 -0
  163. data/vendor/local/include/glib-2.0/gio/gloadableicon.h +97 -0
  164. data/vendor/local/include/glib-2.0/gio/gmemoryinputstream.h +82 -0
  165. data/vendor/local/include/glib-2.0/gio/gmemoryoutputstream.h +98 -0
  166. data/vendor/local/include/glib-2.0/gio/gmount.h +242 -0
  167. data/vendor/local/include/glib-2.0/gio/gmountoperation.h +123 -0
  168. data/vendor/local/include/glib-2.0/gio/gnativevolumemonitor.h +62 -0
  169. data/vendor/local/include/glib-2.0/gio/gnetworkaddress.h +73 -0
  170. data/vendor/local/include/glib-2.0/gio/gnetworkservice.h +71 -0
  171. data/vendor/local/include/glib-2.0/gio/goutputstream.h +207 -0
  172. data/vendor/local/include/glib-2.0/gio/gpermission.h +118 -0
  173. data/vendor/local/include/glib-2.0/gio/gproxy.h +123 -0
  174. data/vendor/local/include/glib-2.0/gio/gproxyaddress.h +76 -0
  175. data/vendor/local/include/glib-2.0/gio/gproxyaddressenumerator.h +75 -0
  176. data/vendor/local/include/glib-2.0/gio/gproxyresolver.h +96 -0
  177. data/vendor/local/include/glib-2.0/gio/gresolver.h +167 -0
  178. data/vendor/local/include/glib-2.0/gio/gseekable.h +99 -0
  179. data/vendor/local/include/glib-2.0/gio/gsettings.h +258 -0
  180. data/vendor/local/include/glib-2.0/gio/gsettingsbackend.h +138 -0
  181. data/vendor/local/include/glib-2.0/gio/gsimpleasyncresult.h +125 -0
  182. data/vendor/local/include/glib-2.0/gio/gsimplepermission.h +45 -0
  183. data/vendor/local/include/glib-2.0/gio/gsocket.h +194 -0
  184. data/vendor/local/include/glib-2.0/gio/gsocketaddress.h +79 -0
  185. data/vendor/local/include/glib-2.0/gio/gsocketaddressenumerator.h +89 -0
  186. data/vendor/local/include/glib-2.0/gio/gsocketclient.h +152 -0
  187. data/vendor/local/include/glib-2.0/gio/gsocketconnectable.h +74 -0
  188. data/vendor/local/include/glib-2.0/gio/gsocketconnection.h +91 -0
  189. data/vendor/local/include/glib-2.0/gio/gsocketcontrolmessage.h +105 -0
  190. data/vendor/local/include/glib-2.0/gio/gsocketlistener.h +138 -0
  191. data/vendor/local/include/glib-2.0/gio/gsocketservice.h +88 -0
  192. data/vendor/local/include/glib-2.0/gio/gsrvtarget.h +52 -0
  193. data/vendor/local/include/glib-2.0/gio/gtcpconnection.h +68 -0
  194. data/vendor/local/include/glib-2.0/gio/gthemedicon.h +63 -0
  195. data/vendor/local/include/glib-2.0/gio/gthreadedsocketservice.h +81 -0
  196. data/vendor/local/include/glib-2.0/gio/gvfs.h +125 -0
  197. data/vendor/local/include/glib-2.0/gio/gvolume.h +211 -0
  198. data/vendor/local/include/glib-2.0/gio/gvolumemonitor.h +150 -0
  199. data/vendor/local/include/glib-2.0/gio/gzlibcompressor.h +60 -0
  200. data/vendor/local/include/glib-2.0/gio/gzlibdecompressor.h +57 -0
  201. data/vendor/local/include/glib-2.0/glib-object.h +42 -0
  202. data/vendor/local/include/glib-2.0/glib.h +99 -0
  203. data/vendor/local/include/glib-2.0/glib/galloca.h +110 -0
  204. data/vendor/local/include/glib-2.0/glib/garray.h +179 -0
  205. data/vendor/local/include/glib-2.0/glib/gasyncqueue.h +120 -0
  206. data/vendor/local/include/glib-2.0/glib/gatomic.h +105 -0
  207. data/vendor/local/include/glib-2.0/glib/gbacktrace.h +68 -0
  208. data/vendor/local/include/glib-2.0/glib/gbase64.h +57 -0
  209. data/vendor/local/include/glib-2.0/glib/gbitlock.h +43 -0
  210. data/vendor/local/include/glib-2.0/glib/gbookmarkfile.h +215 -0
  211. data/vendor/local/include/glib-2.0/glib/gcache.h +69 -0
  212. data/vendor/local/include/glib-2.0/glib/gchecksum.h +86 -0
  213. data/vendor/local/include/glib-2.0/glib/gcompletion.h +81 -0
  214. data/vendor/local/include/glib-2.0/glib/gconvert.h +162 -0
  215. data/vendor/local/include/glib-2.0/glib/gdataset.h +122 -0
  216. data/vendor/local/include/glib-2.0/glib/gdate.h +263 -0
  217. data/vendor/local/include/glib-2.0/glib/gdatetime.h +217 -0
  218. data/vendor/local/include/glib-2.0/glib/gdir.h +52 -0
  219. data/vendor/local/include/glib-2.0/glib/gerror.h +98 -0
  220. data/vendor/local/include/glib-2.0/glib/gfileutils.h +128 -0
  221. data/vendor/local/include/glib-2.0/glib/ghash.h +166 -0
  222. data/vendor/local/include/glib-2.0/glib/ghook.h +181 -0
  223. data/vendor/local/include/glib-2.0/glib/ghostutils.h +40 -0
  224. data/vendor/local/include/glib-2.0/glib/gi18n-lib.h +38 -0
  225. data/vendor/local/include/glib-2.0/glib/gi18n.h +34 -0
  226. data/vendor/local/include/glib-2.0/glib/giochannel.h +366 -0
  227. data/vendor/local/include/glib-2.0/glib/gkeyfile.h +266 -0
  228. data/vendor/local/include/glib-2.0/glib/glist.h +120 -0
  229. data/vendor/local/include/glib-2.0/glib/gmacros.h +284 -0
  230. data/vendor/local/include/glib-2.0/glib/gmain.h +531 -0
  231. data/vendor/local/include/glib-2.0/glib/gmappedfile.h +49 -0
  232. data/vendor/local/include/glib-2.0/glib/gmarkup.h +163 -0
  233. data/vendor/local/include/glib-2.0/glib/gmem.h +309 -0
  234. data/vendor/local/include/glib-2.0/glib/gmessages.h +343 -0
  235. data/vendor/local/include/glib-2.0/glib/gnode.h +290 -0
  236. data/vendor/local/include/glib-2.0/glib/goption.h +370 -0
  237. data/vendor/local/include/glib-2.0/glib/gpattern.h +49 -0
  238. data/vendor/local/include/glib-2.0/glib/gpoll.h +117 -0
  239. data/vendor/local/include/glib-2.0/glib/gprimes.h +51 -0
  240. data/vendor/local/include/glib-2.0/glib/gprintf.h +52 -0
  241. data/vendor/local/include/glib-2.0/glib/gqsort.h +46 -0
  242. data/vendor/local/include/glib-2.0/glib/gquark.h +52 -0
  243. data/vendor/local/include/glib-2.0/glib/gqueue.h +127 -0
  244. data/vendor/local/include/glib-2.0/glib/grand.h +85 -0
  245. data/vendor/local/include/glib-2.0/glib/gregex.h +471 -0
  246. data/vendor/local/include/glib-2.0/glib/grel.h +101 -0
  247. data/vendor/local/include/glib-2.0/glib/gscanner.h +278 -0
  248. data/vendor/local/include/glib-2.0/glib/gsequence.h +128 -0
  249. data/vendor/local/include/glib-2.0/glib/gshell.h +55 -0
  250. data/vendor/local/include/glib-2.0/glib/gslice.h +86 -0
  251. data/vendor/local/include/glib-2.0/glib/gslist.h +114 -0
  252. data/vendor/local/include/glib-2.0/glib/gspawn.h +139 -0
  253. data/vendor/local/include/glib-2.0/glib/gstdio.h +147 -0
  254. data/vendor/local/include/glib-2.0/glib/gstrfuncs.h +269 -0
  255. data/vendor/local/include/glib-2.0/glib/gstring.h +178 -0
  256. data/vendor/local/include/glib-2.0/glib/gtestutils.h +297 -0
  257. data/vendor/local/include/glib-2.0/glib/gthread.h +407 -0
  258. data/vendor/local/include/glib-2.0/glib/gthreadpool.h +114 -0
  259. data/vendor/local/include/glib-2.0/glib/gtimer.h +65 -0
  260. data/vendor/local/include/glib-2.0/glib/gtimezone.h +44 -0
  261. data/vendor/local/include/glib-2.0/glib/gtree.h +91 -0
  262. data/vendor/local/include/glib-2.0/glib/gtypes.h +451 -0
  263. data/vendor/local/include/glib-2.0/glib/gunicode.h +421 -0
  264. data/vendor/local/include/glib-2.0/glib/gurifuncs.h +81 -0
  265. data/vendor/local/include/glib-2.0/glib/gutils.h +490 -0
  266. data/vendor/local/include/glib-2.0/glib/gvariant.h +248 -0
  267. data/vendor/local/include/glib-2.0/glib/gvarianttype.h +334 -0
  268. data/vendor/local/include/glib-2.0/glib/gwin32.h +114 -0
  269. data/vendor/local/include/glib-2.0/gmodule.h +101 -0
  270. data/vendor/local/include/glib-2.0/gobject/gbinding.h +136 -0
  271. data/vendor/local/include/glib-2.0/gobject/gboxed.h +248 -0
  272. data/vendor/local/include/glib-2.0/gobject/gclosure.h +251 -0
  273. data/vendor/local/include/glib-2.0/gobject/genums.h +261 -0
  274. data/vendor/local/include/glib-2.0/gobject/gmarshal.h +186 -0
  275. data/vendor/local/include/glib-2.0/gobject/gobject.h +567 -0
  276. data/vendor/local/include/glib-2.0/gobject/gobjectnotifyqueue.c +193 -0
  277. data/vendor/local/include/glib-2.0/gobject/gparam.h +415 -0
  278. data/vendor/local/include/glib-2.0/gobject/gparamspecs.h +1137 -0
  279. data/vendor/local/include/glib-2.0/gobject/gsignal.h +509 -0
  280. data/vendor/local/include/glib-2.0/gobject/gsourceclosure.h +51 -0
  281. data/vendor/local/include/glib-2.0/gobject/gtype.h +1736 -0
  282. data/vendor/local/include/glib-2.0/gobject/gtypemodule.h +263 -0
  283. data/vendor/local/include/glib-2.0/gobject/gtypeplugin.h +134 -0
  284. data/vendor/local/include/glib-2.0/gobject/gvalue.h +159 -0
  285. data/vendor/local/include/glib-2.0/gobject/gvaluearray.h +77 -0
  286. data/vendor/local/include/glib-2.0/gobject/gvaluecollector.h +227 -0
  287. data/vendor/local/include/glib-2.0/gobject/gvaluetypes.h +260 -0
  288. data/vendor/local/include/libintl.h +464 -0
  289. data/vendor/local/lib/GNU.Gettext.dll +0 -0
  290. data/vendor/local/lib/gio-2.0.def +1143 -0
  291. data/vendor/local/lib/gio-2.0.lib +0 -0
  292. data/vendor/local/lib/glib-2.0.def +1452 -0
  293. data/vendor/local/lib/glib-2.0.lib +0 -0
  294. data/vendor/local/lib/glib-2.0/include/glibconfig.h +284 -0
  295. data/vendor/local/lib/gmodule-2.0.def +11 -0
  296. data/vendor/local/lib/gmodule-2.0.lib +0 -0
  297. data/vendor/local/lib/gobject-2.0.def +370 -0
  298. data/vendor/local/lib/gobject-2.0.lib +0 -0
  299. data/vendor/local/lib/gthread-2.0.def +3 -0
  300. data/vendor/local/lib/gthread-2.0.lib +0 -0
  301. data/vendor/local/lib/intl.lib +0 -0
  302. data/vendor/local/lib/libasprintf.dll.a +0 -0
  303. data/vendor/local/lib/libgio-2.0.dll.a +0 -0
  304. data/vendor/local/lib/libglib-2.0.dll.a +0 -0
  305. data/vendor/local/lib/libgmodule-2.0.dll.a +0 -0
  306. data/vendor/local/lib/libgobject-2.0.dll.a +0 -0
  307. data/vendor/local/lib/libgthread-2.0.dll.a +0 -0
  308. data/vendor/local/lib/libintl.def +31 -0
  309. data/vendor/local/lib/libintl.dll.a +0 -0
  310. data/vendor/local/lib/pkgconfig/gio-2.0.pc +15 -0
  311. data/vendor/local/lib/pkgconfig/gio-windows-2.0.pc +11 -0
  312. data/vendor/local/lib/pkgconfig/glib-2.0.pc +15 -0
  313. data/vendor/local/lib/pkgconfig/gmodule-2.0.pc +14 -0
  314. data/vendor/local/lib/pkgconfig/gmodule-no-export-2.0.pc +14 -0
  315. data/vendor/local/lib/pkgconfig/gobject-2.0.pc +11 -0
  316. data/vendor/local/lib/pkgconfig/gthread-2.0.pc +11 -0
  317. data/vendor/local/manifest/gettext-runtime-dev_0.18.1.1-2_win32.mft +81 -0
  318. data/vendor/local/manifest/gettext-runtime_0.18.1.1-2_win32.mft +3 -0
  319. data/vendor/local/manifest/glib-dev_2.24.2-2_win32.mft +491 -0
  320. data/vendor/local/manifest/glib-dev_2.26.0-2_win32.mft +570 -0
  321. data/vendor/local/manifest/glib_2.24.2-2_win32.mft +101 -0
  322. data/vendor/local/manifest/glib_2.26.0-2_win32.mft +102 -0
  323. data/vendor/local/share/aclocal/glib-2.0.m4 +211 -0
  324. data/vendor/local/share/aclocal/glib-gettext.m4 +432 -0
  325. data/vendor/local/share/doc/gettext/bind_textdomain_codeset.3.html +165 -0
  326. data/vendor/local/share/doc/gettext/bindtextdomain.3.html +160 -0
  327. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext.html +8 -0
  328. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext_GettextResourceManager.html +305 -0
  329. data/vendor/local/share/doc/gettext/csharpdoc/GNU_Gettext_GettextResourceSet.html +356 -0
  330. data/vendor/local/share/doc/gettext/csharpdoc/begin.html +11 -0
  331. data/vendor/local/share/doc/gettext/csharpdoc/index.html +10 -0
  332. data/vendor/local/share/doc/gettext/csharpdoc/namespaces.html +6 -0
  333. data/vendor/local/share/doc/gettext/envsubst.1.html +213 -0
  334. data/vendor/local/share/doc/gettext/gettext.1.html +266 -0
  335. data/vendor/local/share/doc/gettext/gettext.3.html +186 -0
  336. data/vendor/local/share/doc/gettext/ngettext.1.html +280 -0
  337. data/vendor/local/share/doc/gettext/ngettext.3.html +143 -0
  338. data/vendor/local/share/doc/gettext/textdomain.3.html +150 -0
  339. data/vendor/local/share/doc/glib-2.24.2/COPYING +482 -0
  340. data/vendor/local/share/doc/glib-2.26.0/COPYING +482 -0
  341. data/vendor/local/share/doc/glib-dev-2.24.2/COPYING +482 -0
  342. data/vendor/local/share/doc/glib-dev-2.26.0/COPYING +482 -0
  343. data/vendor/local/share/doc/libasprintf/autosprintf_all.html +174 -0
  344. data/vendor/local/share/glib-2.0/gdb/glib.py +249 -0
  345. data/vendor/local/share/glib-2.0/gdb/gobject.py +305 -0
  346. data/vendor/local/share/glib-2.0/gettext/mkinstalldirs +111 -0
  347. data/vendor/local/share/glib-2.0/gettext/po/Makefile.in.in +279 -0
  348. data/vendor/local/share/glib-2.0/schemas/gschema.dtd +60 -0
  349. data/vendor/local/share/gtk-doc/html/gio/GAppInfo.html +1403 -0
  350. data/vendor/local/share/gtk-doc/html/gio/GAsyncInitable.html +733 -0
  351. data/vendor/local/share/gtk-doc/html/gio/GAsyncResult.html +343 -0
  352. data/vendor/local/share/gtk-doc/html/gio/GBufferedInputStream.html +563 -0
  353. data/vendor/local/share/gtk-doc/html/gio/GBufferedOutputStream.html +291 -0
  354. data/vendor/local/share/gtk-doc/html/gio/GCancellable.html +620 -0
  355. data/vendor/local/share/gtk-doc/html/gio/GCharsetConverter.html +245 -0
  356. data/vendor/local/share/gtk-doc/html/gio/GConverter.html +423 -0
  357. data/vendor/local/share/gtk-doc/html/gio/GCredentials.html +398 -0
  358. data/vendor/local/share/gtk-doc/html/gio/GDBusAuthObserver.html +254 -0
  359. data/vendor/local/share/gtk-doc/html/gio/GDBusConnection.html +6211 -0
  360. data/vendor/local/share/gtk-doc/html/gio/GDBusMessage.html +1833 -0
  361. data/vendor/local/share/gtk-doc/html/gio/GDBusMethodInvocation.html +618 -0
  362. data/vendor/local/share/gtk-doc/html/gio/GDBusProxy.html +2050 -0
  363. data/vendor/local/share/gtk-doc/html/gio/GDBusServer.html +1124 -0
  364. data/vendor/local/share/gtk-doc/html/gio/GDataInputStream.html +1215 -0
  365. data/vendor/local/share/gtk-doc/html/gio/GDataOutputStream.html +540 -0
  366. data/vendor/local/share/gtk-doc/html/gio/GDrive.html +1416 -0
  367. data/vendor/local/share/gtk-doc/html/gio/GEmblem.html +272 -0
  368. data/vendor/local/share/gtk-doc/html/gio/GEmblemedIcon.html +206 -0
  369. data/vendor/local/share/gtk-doc/html/gio/GFile.html +7462 -0
  370. data/vendor/local/share/gtk-doc/html/gio/GFileDescriptorBased.html +120 -0
  371. data/vendor/local/share/gtk-doc/html/gio/GFileEnumerator.html +516 -0
  372. data/vendor/local/share/gtk-doc/html/gio/GFileIOStream.html +312 -0
  373. data/vendor/local/share/gtk-doc/html/gio/GFileIcon.html +155 -0
  374. data/vendor/local/share/gtk-doc/html/gio/GFileInfo.html +3144 -0
  375. data/vendor/local/share/gtk-doc/html/gio/GFileInputStream.html +262 -0
  376. data/vendor/local/share/gtk-doc/html/gio/GFileMonitor.html +353 -0
  377. data/vendor/local/share/gtk-doc/html/gio/GFileOutputStream.html +301 -0
  378. data/vendor/local/share/gtk-doc/html/gio/GFilenameCompleter.html +217 -0
  379. data/vendor/local/share/gtk-doc/html/gio/GFilterInputStream.html +188 -0
  380. data/vendor/local/share/gtk-doc/html/gio/GFilterOutputStream.html +189 -0
  381. data/vendor/local/share/gtk-doc/html/gio/GIOModule.html +261 -0
  382. data/vendor/local/share/gtk-doc/html/gio/GIOStream.html +479 -0
  383. data/vendor/local/share/gtk-doc/html/gio/GIcon.html +331 -0
  384. data/vendor/local/share/gtk-doc/html/gio/GInetAddress.html +717 -0
  385. data/vendor/local/share/gtk-doc/html/gio/GInetSocketAddress.html +196 -0
  386. data/vendor/local/share/gtk-doc/html/gio/GInitable.html +388 -0
  387. data/vendor/local/share/gtk-doc/html/gio/GInputStream.html +808 -0
  388. data/vendor/local/share/gtk-doc/html/gio/GLoadableIcon.html +301 -0
  389. data/vendor/local/share/gtk-doc/html/gio/GMemoryInputStream.html +185 -0
  390. data/vendor/local/share/gtk-doc/html/gio/GMemoryOutputStream.html +393 -0
  391. data/vendor/local/share/gtk-doc/html/gio/GMount.html +1465 -0
  392. data/vendor/local/share/gtk-doc/html/gio/GMountOperation.html +848 -0
  393. data/vendor/local/share/gtk-doc/html/gio/GNetworkAddress.html +343 -0
  394. data/vendor/local/share/gtk-doc/html/gio/GNetworkService.html +311 -0
  395. data/vendor/local/share/gtk-doc/html/gio/GOutputStream.html +1012 -0
  396. data/vendor/local/share/gtk-doc/html/gio/GPermission.html +560 -0
  397. data/vendor/local/share/gtk-doc/html/gio/GProxy.html +312 -0
  398. data/vendor/local/share/gtk-doc/html/gio/GProxyAddress.html +348 -0
  399. data/vendor/local/share/gtk-doc/html/gio/GProxyResolver.html +301 -0
  400. data/vendor/local/share/gtk-doc/html/gio/GResolver.html +787 -0
  401. data/vendor/local/share/gtk-doc/html/gio/GSeekable.html +350 -0
  402. data/vendor/local/share/gtk-doc/html/gio/GSettings.html +2424 -0
  403. data/vendor/local/share/gtk-doc/html/gio/GSettingsBackend.html +609 -0
  404. data/vendor/local/share/gtk-doc/html/gio/GSimpleAsyncResult.html +1193 -0
  405. data/vendor/local/share/gtk-doc/html/gio/GSimplePermission.html +107 -0
  406. data/vendor/local/share/gtk-doc/html/gio/GSocket.html +2438 -0
  407. data/vendor/local/share/gtk-doc/html/gio/GSocketAddress.html +297 -0
  408. data/vendor/local/share/gtk-doc/html/gio/GSocketClient.html +1292 -0
  409. data/vendor/local/share/gtk-doc/html/gio/GSocketConnectable.html +513 -0
  410. data/vendor/local/share/gtk-doc/html/gio/GSocketConnection.html +337 -0
  411. data/vendor/local/share/gtk-doc/html/gio/GSocketControlMessage.html +275 -0
  412. data/vendor/local/share/gtk-doc/html/gio/GSocketListener.html +745 -0
  413. data/vendor/local/share/gtk-doc/html/gio/GSocketService.html +258 -0
  414. data/vendor/local/share/gtk-doc/html/gio/GTcpConnection.html +165 -0
  415. data/vendor/local/share/gtk-doc/html/gio/GThemedIcon.html +377 -0
  416. data/vendor/local/share/gtk-doc/html/gio/GThreadedSocketService.html +197 -0
  417. data/vendor/local/share/gtk-doc/html/gio/GUnixConnection.html +298 -0
  418. data/vendor/local/share/gtk-doc/html/gio/GUnixCredentialsMessage.html +222 -0
  419. data/vendor/local/share/gtk-doc/html/gio/GUnixFDList.html +389 -0
  420. data/vendor/local/share/gtk-doc/html/gio/GUnixFDMessage.html +288 -0
  421. data/vendor/local/share/gtk-doc/html/gio/GUnixInputStream.html +237 -0
  422. data/vendor/local/share/gtk-doc/html/gio/GUnixOutputStream.html +237 -0
  423. data/vendor/local/share/gtk-doc/html/gio/GUnixSocketAddress.html +491 -0
  424. data/vendor/local/share/gtk-doc/html/gio/GVfs.html +274 -0
  425. data/vendor/local/share/gtk-doc/html/gio/GVolume.html +1028 -0
  426. data/vendor/local/share/gtk-doc/html/gio/GVolumeMonitor.html +705 -0
  427. data/vendor/local/share/gtk-doc/html/gio/GZlibCompressor.html +252 -0
  428. data/vendor/local/share/gtk-doc/html/gio/GZlibDecompressor.html +170 -0
  429. data/vendor/local/share/gtk-doc/html/gio/annotation-glossary.html +65 -0
  430. data/vendor/local/share/gtk-doc/html/gio/api-index-2-18.html +153 -0
  431. data/vendor/local/share/gtk-doc/html/gio/api-index-2-20.html +155 -0
  432. data/vendor/local/share/gtk-doc/html/gio/api-index-2-22.html +1084 -0
  433. data/vendor/local/share/gtk-doc/html/gio/api-index-2-24.html +223 -0
  434. data/vendor/local/share/gtk-doc/html/gio/api-index-2-26.html +1598 -0
  435. data/vendor/local/share/gtk-doc/html/gio/api-index-deprecated.html +112 -0
  436. data/vendor/local/share/gtk-doc/html/gio/api-index-full.html +6250 -0
  437. data/vendor/local/share/gtk-doc/html/gio/async.html +44 -0
  438. data/vendor/local/share/gtk-doc/html/gio/ch01.html +207 -0
  439. data/vendor/local/share/gtk-doc/html/gio/ch02.html +50 -0
  440. data/vendor/local/share/gtk-doc/html/gio/ch03.html +180 -0
  441. data/vendor/local/share/gtk-doc/html/gio/ch19.html +75 -0
  442. data/vendor/local/share/gtk-doc/html/gio/ch20.html +217 -0
  443. data/vendor/local/share/gtk-doc/html/gio/ch20s02.html +41 -0
  444. data/vendor/local/share/gtk-doc/html/gio/ch20s03.html +39 -0
  445. data/vendor/local/share/gtk-doc/html/gio/ch24.html +75 -0
  446. data/vendor/local/share/gtk-doc/html/gio/ch25.html +217 -0
  447. data/vendor/local/share/gtk-doc/html/gio/ch25s02.html +41 -0
  448. data/vendor/local/share/gtk-doc/html/gio/ch25s03.html +39 -0
  449. data/vendor/local/share/gtk-doc/html/gio/ch26.html +57 -0
  450. data/vendor/local/share/gtk-doc/html/gio/ch26s02.html +59 -0
  451. data/vendor/local/share/gtk-doc/html/gio/ch26s03.html +159 -0
  452. data/vendor/local/share/gtk-doc/html/gio/ch26s04.html +46 -0
  453. data/vendor/local/share/gtk-doc/html/gio/ch26s05.html +48 -0
  454. data/vendor/local/share/gtk-doc/html/gio/ch26s06.html +277 -0
  455. data/vendor/local/share/gtk-doc/html/gio/ch26s07.html +95 -0
  456. data/vendor/local/share/gtk-doc/html/gio/ch27.html +70 -0
  457. data/vendor/local/share/gtk-doc/html/gio/ch27s02.html +130 -0
  458. data/vendor/local/share/gtk-doc/html/gio/ch27s03.html +202 -0
  459. data/vendor/local/share/gtk-doc/html/gio/ch27s04.html +96 -0
  460. data/vendor/local/share/gtk-doc/html/gio/ch27s05.html +823 -0
  461. data/vendor/local/share/gtk-doc/html/gio/ch27s06.html +828 -0
  462. data/vendor/local/share/gtk-doc/html/gio/conversion.html +44 -0
  463. data/vendor/local/share/gtk-doc/html/gio/extending-gio.html +109 -0
  464. data/vendor/local/share/gtk-doc/html/gio/extending.html +41 -0
  465. data/vendor/local/share/gtk-doc/html/gio/failable_initialization.html +38 -0
  466. data/vendor/local/share/gtk-doc/html/gio/file_mon.html +33 -0
  467. data/vendor/local/share/gtk-doc/html/gio/file_ops.html +50 -0
  468. data/vendor/local/share/gtk-doc/html/gio/gdbus-convenience.html +41 -0
  469. data/vendor/local/share/gtk-doc/html/gio/gdbus-lowlevel.html +59 -0
  470. data/vendor/local/share/gtk-doc/html/gio/gdbus.html +243 -0
  471. data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Addresses.html +316 -0
  472. data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Introspection-Data.html +1117 -0
  473. data/vendor/local/share/gtk-doc/html/gio/gio-D-Bus-Utilities.html +216 -0
  474. data/vendor/local/share/gtk-doc/html/gio/gio-Desktop-file-based-GAppInfo.html +339 -0
  475. data/vendor/local/share/gtk-doc/html/gio/gio-Extension-Points.html +473 -0
  476. data/vendor/local/share/gtk-doc/html/gio/gio-GContentType.html +391 -0
  477. data/vendor/local/share/gtk-doc/html/gio/gio-GConverterInputstream.html +159 -0
  478. data/vendor/local/share/gtk-doc/html/gio/gio-GConverterOutputstream.html +159 -0
  479. data/vendor/local/share/gtk-doc/html/gio/gio-GDBusError.html +908 -0
  480. data/vendor/local/share/gtk-doc/html/gio/gio-GFileAttribute.html +933 -0
  481. data/vendor/local/share/gtk-doc/html/gio/gio-GIOError.html +409 -0
  482. data/vendor/local/share/gtk-doc/html/gio/gio-GIOScheduler.html +297 -0
  483. data/vendor/local/share/gtk-doc/html/gio/gio-GSrvTarget.html +313 -0
  484. data/vendor/local/share/gtk-doc/html/gio/gio-Owning-Bus-Names.html +736 -0
  485. data/vendor/local/share/gtk-doc/html/gio/gio-Unix-Mounts.html +909 -0
  486. data/vendor/local/share/gtk-doc/html/gio/gio-Watching-Bus-Names.html +666 -0
  487. data/vendor/local/share/gtk-doc/html/gio/gio-hierarchy.html +123 -0
  488. data/vendor/local/share/gtk-doc/html/gio/gio-querymodules.html +53 -0
  489. data/vendor/local/share/gtk-doc/html/gio/gio.devhelp +1736 -0
  490. data/vendor/local/share/gtk-doc/html/gio/gio.devhelp2 +2006 -0
  491. data/vendor/local/share/gtk-doc/html/gio/glib-compile-schemas.html +102 -0
  492. data/vendor/local/share/gtk-doc/html/gio/gvfs-overview.png +0 -0
  493. data/vendor/local/share/gtk-doc/html/gio/highlevel-socket.html +53 -0
  494. data/vendor/local/share/gtk-doc/html/gio/home.png +0 -0
  495. data/vendor/local/share/gtk-doc/html/gio/icons.html +50 -0
  496. data/vendor/local/share/gtk-doc/html/gio/index.html +435 -0
  497. data/vendor/local/share/gtk-doc/html/gio/index.sgml +2513 -0
  498. data/vendor/local/share/gtk-doc/html/gio/left.png +0 -0
  499. data/vendor/local/share/gtk-doc/html/gio/migrating.html +62 -0
  500. data/vendor/local/share/gtk-doc/html/gio/networking.html +69 -0
  501. data/vendor/local/share/gtk-doc/html/gio/permissions.html +39 -0
  502. data/vendor/local/share/gtk-doc/html/gio/pt01.html +39 -0
  503. data/vendor/local/share/gtk-doc/html/gio/pt02.html +390 -0
  504. data/vendor/local/share/gtk-doc/html/gio/resolver.html +50 -0
  505. data/vendor/local/share/gtk-doc/html/gio/right.png +0 -0
  506. data/vendor/local/share/gtk-doc/html/gio/settings.html +38 -0
  507. data/vendor/local/share/gtk-doc/html/gio/streaming.html +92 -0
  508. data/vendor/local/share/gtk-doc/html/gio/style.css +265 -0
  509. data/vendor/local/share/gtk-doc/html/gio/tools.html +44 -0
  510. data/vendor/local/share/gtk-doc/html/gio/types.html +41 -0
  511. data/vendor/local/share/gtk-doc/html/gio/up.png +0 -0
  512. data/vendor/local/share/gtk-doc/html/gio/utils.html +33 -0
  513. data/vendor/local/share/gtk-doc/html/gio/volume_mon.html +47 -0
  514. data/vendor/local/share/gtk-doc/html/glib/annotation-glossary.html +77 -0
  515. data/vendor/local/share/gtk-doc/html/glib/api-index-2-10.html +180 -0
  516. data/vendor/local/share/gtk-doc/html/glib/api-index-2-12.html +312 -0
  517. data/vendor/local/share/gtk-doc/html/glib/api-index-2-14.html +559 -0
  518. data/vendor/local/share/gtk-doc/html/glib/api-index-2-16.html +362 -0
  519. data/vendor/local/share/gtk-doc/html/glib/api-index-2-18.html +102 -0
  520. data/vendor/local/share/gtk-doc/html/glib/api-index-2-2.html +124 -0
  521. data/vendor/local/share/gtk-doc/html/glib/api-index-2-20.html +83 -0
  522. data/vendor/local/share/gtk-doc/html/glib/api-index-2-22.html +194 -0
  523. data/vendor/local/share/gtk-doc/html/glib/api-index-2-24.html +420 -0
  524. data/vendor/local/share/gtk-doc/html/glib/api-index-2-26.html +359 -0
  525. data/vendor/local/share/gtk-doc/html/glib/api-index-2-4.html +396 -0
  526. data/vendor/local/share/gtk-doc/html/glib/api-index-2-6.html +417 -0
  527. data/vendor/local/share/gtk-doc/html/glib/api-index-2-8.html +158 -0
  528. data/vendor/local/share/gtk-doc/html/glib/api-index-deprecated.html +419 -0
  529. data/vendor/local/share/gtk-doc/html/glib/api-index-full.html +8214 -0
  530. data/vendor/local/share/gtk-doc/html/glib/file-name-encodings.png +0 -0
  531. data/vendor/local/share/gtk-doc/html/glib/glib-Arrays.html +893 -0
  532. data/vendor/local/share/gtk-doc/html/glib/glib-Asynchronous-Queues.html +818 -0
  533. data/vendor/local/share/gtk-doc/html/glib/glib-Atomic-Operations.html +414 -0
  534. data/vendor/local/share/gtk-doc/html/glib/glib-Automatic-String-Completion.html +466 -0
  535. data/vendor/local/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html +802 -0
  536. data/vendor/local/share/gtk-doc/html/glib/glib-Base64-Encoding.html +372 -0
  537. data/vendor/local/share/gtk-doc/html/glib/glib-Basic-Types.html +500 -0
  538. data/vendor/local/share/gtk-doc/html/glib/glib-Bookmark-file-parser.html +2056 -0
  539. data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Arrays.html +560 -0
  540. data/vendor/local/share/gtk-doc/html/glib/glib-Byte-Order-Macros.html +1686 -0
  541. data/vendor/local/share/gtk-doc/html/glib/glib-Caches.html +398 -0
  542. data/vendor/local/share/gtk-doc/html/glib/glib-Character-Set-Conversion.html +1094 -0
  543. data/vendor/local/share/gtk-doc/html/glib/glib-Commandline-option-parser.html +1671 -0
  544. data/vendor/local/share/gtk-doc/html/glib/glib-Data-Checksums.html +460 -0
  545. data/vendor/local/share/gtk-doc/html/glib/glib-Datasets.html +528 -0
  546. data/vendor/local/share/gtk-doc/html/glib/glib-Date-and-Time-Functions.html +2045 -0
  547. data/vendor/local/share/gtk-doc/html/glib/glib-Double-ended-Queues.html +1278 -0
  548. data/vendor/local/share/gtk-doc/html/glib/glib-Doubly-Linked-Lists.html +1406 -0
  549. data/vendor/local/share/gtk-doc/html/glib/glib-Dynamic-Loading-of-Modules.html +548 -0
  550. data/vendor/local/share/gtk-doc/html/glib/glib-Error-Reporting.html +1026 -0
  551. data/vendor/local/share/gtk-doc/html/glib/glib-File-Utilities.html +1852 -0
  552. data/vendor/local/share/gtk-doc/html/glib/glib-GDateTime.html +2201 -0
  553. data/vendor/local/share/gtk-doc/html/glib/glib-GTimeZone.html +239 -0
  554. data/vendor/local/share/gtk-doc/html/glib/glib-GVariant.html +4278 -0
  555. data/vendor/local/share/gtk-doc/html/glib/glib-GVariantType.html +1864 -0
  556. data/vendor/local/share/gtk-doc/html/glib/glib-Glob-style-pattern-matching.html +295 -0
  557. data/vendor/local/share/gtk-doc/html/glib/glib-Hash-Tables.html +1512 -0
  558. data/vendor/local/share/gtk-doc/html/glib/glib-Hook-Functions.html +1367 -0
  559. data/vendor/local/share/gtk-doc/html/glib/glib-Hostname-Utilities.html +229 -0
  560. data/vendor/local/share/gtk-doc/html/glib/glib-I18N.html +692 -0
  561. data/vendor/local/share/gtk-doc/html/glib/glib-IO-Channels.html +2196 -0
  562. data/vendor/local/share/gtk-doc/html/glib/glib-Key-value-file-parser.html +2740 -0
  563. data/vendor/local/share/gtk-doc/html/glib/glib-Keyed-Data-Lists.html +612 -0
  564. data/vendor/local/share/gtk-doc/html/glib/glib-Lexical-Scanner.html +1451 -0
  565. data/vendor/local/share/gtk-doc/html/glib/glib-Limits-of-Basic-Types.html +389 -0
  566. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocation.html +1033 -0
  567. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Allocators.html +141 -0
  568. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Chunks.html +706 -0
  569. data/vendor/local/share/gtk-doc/html/glib/glib-Memory-Slices.html +510 -0
  570. data/vendor/local/share/gtk-doc/html/glib/glib-Message-Logging.html +748 -0
  571. data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Macros.html +1105 -0
  572. data/vendor/local/share/gtk-doc/html/glib/glib-Miscellaneous-Utility-Functions.html +1552 -0
  573. data/vendor/local/share/gtk-doc/html/glib/glib-N-ary-Trees.html +1468 -0
  574. data/vendor/local/share/gtk-doc/html/glib/glib-Numerical-Definitions.html +194 -0
  575. data/vendor/local/share/gtk-doc/html/glib/glib-Perl-compatible-regular-expressions.html +2745 -0
  576. data/vendor/local/share/gtk-doc/html/glib/glib-Pointer-Arrays.html +752 -0
  577. data/vendor/local/share/gtk-doc/html/glib/glib-Quarks.html +269 -0
  578. data/vendor/local/share/gtk-doc/html/glib/glib-Random-Numbers.html +578 -0
  579. data/vendor/local/share/gtk-doc/html/glib/glib-Relations-and-Tuples.html +532 -0
  580. data/vendor/local/share/gtk-doc/html/glib/glib-Sequences.html +1353 -0
  581. data/vendor/local/share/gtk-doc/html/glib/glib-Shell-related-Utilities.html +238 -0
  582. data/vendor/local/share/gtk-doc/html/glib/glib-Simple-XML-Subset-Parser.html +1282 -0
  583. data/vendor/local/share/gtk-doc/html/glib/glib-Singly-Linked-Lists.html +1213 -0
  584. data/vendor/local/share/gtk-doc/html/glib/glib-Spawning-Processes.html +924 -0
  585. data/vendor/local/share/gtk-doc/html/glib/glib-Standard-Macros.html +470 -0
  586. data/vendor/local/share/gtk-doc/html/glib/glib-String-Chunks.html +301 -0
  587. data/vendor/local/share/gtk-doc/html/glib/glib-String-Utility-Functions.html +2960 -0
  588. data/vendor/local/share/gtk-doc/html/glib/glib-Strings.html +1291 -0
  589. data/vendor/local/share/gtk-doc/html/glib/glib-Testing.html +1805 -0
  590. data/vendor/local/share/gtk-doc/html/glib/glib-The-Main-Event-Loop.html +3478 -0
  591. data/vendor/local/share/gtk-doc/html/glib/glib-Thread-Pools.html +606 -0
  592. data/vendor/local/share/gtk-doc/html/glib/glib-Threads.html +3411 -0
  593. data/vendor/local/share/gtk-doc/html/glib/glib-Timers.html +245 -0
  594. data/vendor/local/share/gtk-doc/html/glib/glib-Trash-Stacks.html +188 -0
  595. data/vendor/local/share/gtk-doc/html/glib/glib-Type-Conversion-Macros.html +263 -0
  596. data/vendor/local/share/gtk-doc/html/glib/glib-URI-Functions.html +400 -0
  597. data/vendor/local/share/gtk-doc/html/glib/glib-Unicode-Manipulation.html +3448 -0
  598. data/vendor/local/share/gtk-doc/html/glib/glib-Version-Information.html +253 -0
  599. data/vendor/local/share/gtk-doc/html/glib/glib-Warnings-and-Assertions.html +438 -0
  600. data/vendor/local/share/gtk-doc/html/glib/glib-Windows-Compatibility-Functions.html +476 -0
  601. data/vendor/local/share/gtk-doc/html/glib/glib-building.html +466 -0
  602. data/vendor/local/share/gtk-doc/html/glib/glib-changes.html +159 -0
  603. data/vendor/local/share/gtk-doc/html/glib/glib-compiling.html +118 -0
  604. data/vendor/local/share/gtk-doc/html/glib/glib-core.html +64 -0
  605. data/vendor/local/share/gtk-doc/html/glib/glib-cross-compiling.html +160 -0
  606. data/vendor/local/share/gtk-doc/html/glib/glib-data-types.html +120 -0
  607. data/vendor/local/share/gtk-doc/html/glib/glib-fundamentals.html +59 -0
  608. data/vendor/local/share/gtk-doc/html/glib/glib-gettextize.html +93 -0
  609. data/vendor/local/share/gtk-doc/html/glib/glib-regex-syntax.html +2217 -0
  610. data/vendor/local/share/gtk-doc/html/glib/glib-resources.html +121 -0
  611. data/vendor/local/share/gtk-doc/html/glib/glib-running.html +319 -0
  612. data/vendor/local/share/gtk-doc/html/glib/glib-utilities.html +118 -0
  613. data/vendor/local/share/gtk-doc/html/glib/glib.devhelp +2183 -0
  614. data/vendor/local/share/gtk-doc/html/glib/glib.devhelp2 +2671 -0
  615. data/vendor/local/share/gtk-doc/html/glib/glib.html +80 -0
  616. data/vendor/local/share/gtk-doc/html/glib/gtester-report.html +72 -0
  617. data/vendor/local/share/gtk-doc/html/glib/gtester.html +131 -0
  618. data/vendor/local/share/gtk-doc/html/glib/gvariant-format-strings.html +1288 -0
  619. data/vendor/local/share/gtk-doc/html/glib/home.png +0 -0
  620. data/vendor/local/share/gtk-doc/html/glib/index.html +344 -0
  621. data/vendor/local/share/gtk-doc/html/glib/index.sgml +2846 -0
  622. data/vendor/local/share/gtk-doc/html/glib/left.png +0 -0
  623. data/vendor/local/share/gtk-doc/html/glib/mainloop-states.gif +0 -0
  624. data/vendor/local/share/gtk-doc/html/glib/right.png +0 -0
  625. data/vendor/local/share/gtk-doc/html/glib/style.css +265 -0
  626. data/vendor/local/share/gtk-doc/html/glib/tools.html +41 -0
  627. data/vendor/local/share/gtk-doc/html/glib/up.png +0 -0
  628. data/vendor/local/share/gtk-doc/html/gobject/GBinding.html +803 -0
  629. data/vendor/local/share/gtk-doc/html/gobject/GTypeModule.html +710 -0
  630. data/vendor/local/share/gtk-doc/html/gobject/GTypePlugin.html +453 -0
  631. data/vendor/local/share/gtk-doc/html/gobject/annotation-glossary.html +47 -0
  632. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-10.html +85 -0
  633. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-12.html +55 -0
  634. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-14.html +51 -0
  635. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-18.html +46 -0
  636. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-2.html +38 -0
  637. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-22.html +46 -0
  638. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-24.html +73 -0
  639. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-26.html +201 -0
  640. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-4.html +178 -0
  641. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-6.html +42 -0
  642. data/vendor/local/share/gtk-doc/html/gobject/api-index-2-8.html +42 -0
  643. data/vendor/local/share/gtk-doc/html/gobject/api-index-deprecated.html +50 -0
  644. data/vendor/local/share/gtk-doc/html/gobject/api-index-full.html +2721 -0
  645. data/vendor/local/share/gtk-doc/html/gobject/ch01s02.html +136 -0
  646. data/vendor/local/share/gtk-doc/html/gobject/ch06s03.html +113 -0
  647. data/vendor/local/share/gtk-doc/html/gobject/chapter-gobject.html +293 -0
  648. data/vendor/local/share/gtk-doc/html/gobject/chapter-gtype.html +263 -0
  649. data/vendor/local/share/gtk-doc/html/gobject/chapter-intro.html +92 -0
  650. data/vendor/local/share/gtk-doc/html/gobject/chapter-signal.html +214 -0
  651. data/vendor/local/share/gtk-doc/html/gobject/glib-genmarshal.html +361 -0
  652. data/vendor/local/share/gtk-doc/html/gobject/glib-mkenums.html +307 -0
  653. data/vendor/local/share/gtk-doc/html/gobject/glue.png +0 -0
  654. data/vendor/local/share/gtk-doc/html/gobject/gobject-Boxed-Types.html +417 -0
  655. data/vendor/local/share/gtk-doc/html/gobject/gobject-Closures.html +2412 -0
  656. data/vendor/local/share/gtk-doc/html/gobject/gobject-Enumeration-and-Flag-Types.html +847 -0
  657. data/vendor/local/share/gtk-doc/html/gobject/gobject-GParamSpec.html +1433 -0
  658. data/vendor/local/share/gtk-doc/html/gobject/gobject-Generic-values.html +776 -0
  659. data/vendor/local/share/gtk-doc/html/gobject/gobject-Signals.html +2741 -0
  660. data/vendor/local/share/gtk-doc/html/gobject/gobject-Standard-Parameter-and-Value-Types.html +5555 -0
  661. data/vendor/local/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html +2875 -0
  662. data/vendor/local/share/gtk-doc/html/gobject/gobject-Type-Information.html +4460 -0
  663. data/vendor/local/share/gtk-doc/html/gobject/gobject-Value-arrays.html +416 -0
  664. data/vendor/local/share/gtk-doc/html/gobject/gobject-Varargs-Value-Collection.html +260 -0
  665. data/vendor/local/share/gtk-doc/html/gobject/gobject-memory.html +234 -0
  666. data/vendor/local/share/gtk-doc/html/gobject/gobject-properties.html +270 -0
  667. data/vendor/local/share/gtk-doc/html/gobject/gobject-query.html +117 -0
  668. data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp +762 -0
  669. data/vendor/local/share/gtk-doc/html/gobject/gobject.devhelp2 +801 -0
  670. data/vendor/local/share/gtk-doc/html/gobject/gtype-conventions.html +143 -0
  671. data/vendor/local/share/gtk-doc/html/gobject/gtype-instantiable-classed.html +287 -0
  672. data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable-classed.html +316 -0
  673. data/vendor/local/share/gtk-doc/html/gobject/gtype-non-instantiable.html +76 -0
  674. data/vendor/local/share/gtk-doc/html/gobject/home.png +0 -0
  675. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-chainup.html +100 -0
  676. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-code.html +86 -0
  677. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-construction.html +113 -0
  678. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-destruction.html +122 -0
  679. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject-methods.html +257 -0
  680. data/vendor/local/share/gtk-doc/html/gobject/howto-gobject.html +283 -0
  681. data/vendor/local/share/gtk-doc/html/gobject/howto-interface-implement.html +125 -0
  682. data/vendor/local/share/gtk-doc/html/gobject/howto-interface-properties.html +167 -0
  683. data/vendor/local/share/gtk-doc/html/gobject/howto-interface.html +160 -0
  684. data/vendor/local/share/gtk-doc/html/gobject/howto-signals.html +121 -0
  685. data/vendor/local/share/gtk-doc/html/gobject/index.html +192 -0
  686. data/vendor/local/share/gtk-doc/html/gobject/index.sgml +786 -0
  687. data/vendor/local/share/gtk-doc/html/gobject/left.png +0 -0
  688. data/vendor/local/share/gtk-doc/html/gobject/pr01.html +72 -0
  689. data/vendor/local/share/gtk-doc/html/gobject/pt01.html +80 -0
  690. data/vendor/local/share/gtk-doc/html/gobject/pt02.html +66 -0
  691. data/vendor/local/share/gtk-doc/html/gobject/pt03.html +55 -0
  692. data/vendor/local/share/gtk-doc/html/gobject/right.png +0 -0
  693. data/vendor/local/share/gtk-doc/html/gobject/rn01.html +85 -0
  694. data/vendor/local/share/gtk-doc/html/gobject/rn02.html +47 -0
  695. data/vendor/local/share/gtk-doc/html/gobject/signal.html +377 -0
  696. data/vendor/local/share/gtk-doc/html/gobject/style.css +265 -0
  697. data/vendor/local/share/gtk-doc/html/gobject/tools-ginspector.html +35 -0
  698. data/vendor/local/share/gtk-doc/html/gobject/tools-gob.html +40 -0
  699. data/vendor/local/share/gtk-doc/html/gobject/tools-gtkdoc.html +63 -0
  700. data/vendor/local/share/gtk-doc/html/gobject/tools-refdb.html +55 -0
  701. data/vendor/local/share/gtk-doc/html/gobject/tools-vala.html +43 -0
  702. data/vendor/local/share/gtk-doc/html/gobject/up.png +0 -0
  703. data/vendor/local/share/locale/af/LC_MESSAGES/glib20.mo +0 -0
  704. data/vendor/local/share/locale/am/LC_MESSAGES/glib20.mo +0 -0
  705. data/vendor/local/share/locale/ar/LC_MESSAGES/glib20.mo +0 -0
  706. data/vendor/local/share/locale/as/LC_MESSAGES/glib20.mo +0 -0
  707. data/vendor/local/share/locale/ast/LC_MESSAGES/glib20.mo +0 -0
  708. data/vendor/local/share/locale/az/LC_MESSAGES/glib20.mo +0 -0
  709. data/vendor/local/share/locale/be/LC_MESSAGES/gettext-runtime.mo +0 -0
  710. data/vendor/local/share/locale/be/LC_MESSAGES/glib20.mo +0 -0
  711. data/vendor/local/share/locale/be@latin/LC_MESSAGES/glib20.mo +0 -0
  712. data/vendor/local/share/locale/bg/LC_MESSAGES/gettext-runtime.mo +0 -0
  713. data/vendor/local/share/locale/bg/LC_MESSAGES/glib20.mo +0 -0
  714. data/vendor/local/share/locale/bn/LC_MESSAGES/glib20.mo +0 -0
  715. data/vendor/local/share/locale/bn_IN/LC_MESSAGES/glib20.mo +0 -0
  716. data/vendor/local/share/locale/bs/LC_MESSAGES/glib20.mo +0 -0
  717. data/vendor/local/share/locale/ca/LC_MESSAGES/gettext-runtime.mo +0 -0
  718. data/vendor/local/share/locale/ca/LC_MESSAGES/glib20.mo +0 -0
  719. data/vendor/local/share/locale/ca@valencia/LC_MESSAGES/glib20.mo +0 -0
  720. data/vendor/local/share/locale/cs/LC_MESSAGES/gettext-runtime.mo +0 -0
  721. data/vendor/local/share/locale/cs/LC_MESSAGES/glib20.mo +0 -0
  722. data/vendor/local/share/locale/cy/LC_MESSAGES/glib20.mo +0 -0
  723. data/vendor/local/share/locale/da/LC_MESSAGES/gettext-runtime.mo +0 -0
  724. data/vendor/local/share/locale/da/LC_MESSAGES/glib20.mo +0 -0
  725. data/vendor/local/share/locale/de/LC_MESSAGES/gettext-runtime.mo +0 -0
  726. data/vendor/local/share/locale/de/LC_MESSAGES/glib20.mo +0 -0
  727. data/vendor/local/share/locale/dz/LC_MESSAGES/glib20.mo +0 -0
  728. data/vendor/local/share/locale/el/LC_MESSAGES/gettext-runtime.mo +0 -0
  729. data/vendor/local/share/locale/el/LC_MESSAGES/glib20.mo +0 -0
  730. data/vendor/local/share/locale/en@boldquot/LC_MESSAGES/gettext-runtime.mo +0 -0
  731. data/vendor/local/share/locale/en@quot/LC_MESSAGES/gettext-runtime.mo +0 -0
  732. data/vendor/local/share/locale/en@shaw/LC_MESSAGES/glib20.mo +0 -0
  733. data/vendor/local/share/locale/en_CA/LC_MESSAGES/glib20.mo +0 -0
  734. data/vendor/local/share/locale/en_GB/LC_MESSAGES/glib20.mo +0 -0
  735. data/vendor/local/share/locale/eo/LC_MESSAGES/gettext-runtime.mo +0 -0
  736. data/vendor/local/share/locale/eo/LC_MESSAGES/glib20.mo +0 -0
  737. data/vendor/local/share/locale/es/LC_MESSAGES/gettext-runtime.mo +0 -0
  738. data/vendor/local/share/locale/es/LC_MESSAGES/glib20.mo +0 -0
  739. data/vendor/local/share/locale/et/LC_MESSAGES/gettext-runtime.mo +0 -0
  740. data/vendor/local/share/locale/et/LC_MESSAGES/glib20.mo +0 -0
  741. data/vendor/local/share/locale/eu/LC_MESSAGES/glib20.mo +0 -0
  742. data/vendor/local/share/locale/fa/LC_MESSAGES/glib20.mo +0 -0
  743. data/vendor/local/share/locale/fi/LC_MESSAGES/gettext-runtime.mo +0 -0
  744. data/vendor/local/share/locale/fi/LC_MESSAGES/glib20.mo +0 -0
  745. data/vendor/local/share/locale/fr/LC_MESSAGES/gettext-runtime.mo +0 -0
  746. data/vendor/local/share/locale/fr/LC_MESSAGES/glib20.mo +0 -0
  747. data/vendor/local/share/locale/ga/LC_MESSAGES/gettext-runtime.mo +0 -0
  748. data/vendor/local/share/locale/ga/LC_MESSAGES/glib20.mo +0 -0
  749. data/vendor/local/share/locale/gl/LC_MESSAGES/gettext-runtime.mo +0 -0
  750. data/vendor/local/share/locale/gl/LC_MESSAGES/glib20.mo +0 -0
  751. data/vendor/local/share/locale/gu/LC_MESSAGES/glib20.mo +0 -0
  752. data/vendor/local/share/locale/he/LC_MESSAGES/glib20.mo +0 -0
  753. data/vendor/local/share/locale/hi/LC_MESSAGES/glib20.mo +0 -0
  754. data/vendor/local/share/locale/hr/LC_MESSAGES/glib20.mo +0 -0
  755. data/vendor/local/share/locale/hu/LC_MESSAGES/glib20.mo +0 -0
  756. data/vendor/local/share/locale/hy/LC_MESSAGES/glib20.mo +0 -0
  757. data/vendor/local/share/locale/id/LC_MESSAGES/gettext-runtime.mo +0 -0
  758. data/vendor/local/share/locale/id/LC_MESSAGES/glib20.mo +0 -0
  759. data/vendor/local/share/locale/is/LC_MESSAGES/glib20.mo +0 -0
  760. data/vendor/local/share/locale/it/LC_MESSAGES/gettext-runtime.mo +0 -0
  761. data/vendor/local/share/locale/it/LC_MESSAGES/glib20.mo +0 -0
  762. data/vendor/local/share/locale/ja/LC_MESSAGES/gettext-runtime.mo +0 -0
  763. data/vendor/local/share/locale/ja/LC_MESSAGES/glib20.mo +0 -0
  764. data/vendor/local/share/locale/ka/LC_MESSAGES/glib20.mo +0 -0
  765. data/vendor/local/share/locale/kk/LC_MESSAGES/glib20.mo +0 -0
  766. data/vendor/local/share/locale/kn/LC_MESSAGES/glib20.mo +0 -0
  767. data/vendor/local/share/locale/ko/LC_MESSAGES/gettext-runtime.mo +0 -0
  768. data/vendor/local/share/locale/ko/LC_MESSAGES/glib20.mo +0 -0
  769. data/vendor/local/share/locale/ku/LC_MESSAGES/glib20.mo +0 -0
  770. data/vendor/local/share/locale/locale.alias +77 -0
  771. data/vendor/local/share/locale/lt/LC_MESSAGES/glib20.mo +0 -0
  772. data/vendor/local/share/locale/lv/LC_MESSAGES/glib20.mo +0 -0
  773. data/vendor/local/share/locale/mai/LC_MESSAGES/glib20.mo +0 -0
  774. data/vendor/local/share/locale/mg/LC_MESSAGES/glib20.mo +0 -0
  775. data/vendor/local/share/locale/mk/LC_MESSAGES/glib20.mo +0 -0
  776. data/vendor/local/share/locale/ml/LC_MESSAGES/glib20.mo +0 -0
  777. data/vendor/local/share/locale/mn/LC_MESSAGES/glib20.mo +0 -0
  778. data/vendor/local/share/locale/mr/LC_MESSAGES/glib20.mo +0 -0
  779. data/vendor/local/share/locale/ms/LC_MESSAGES/glib20.mo +0 -0
  780. data/vendor/local/share/locale/nb/LC_MESSAGES/gettext-runtime.mo +0 -0
  781. data/vendor/local/share/locale/nb/LC_MESSAGES/glib20.mo +0 -0
  782. data/vendor/local/share/locale/nds/LC_MESSAGES/glib20.mo +0 -0
  783. data/vendor/local/share/locale/ne/LC_MESSAGES/glib20.mo +0 -0
  784. data/vendor/local/share/locale/nl/LC_MESSAGES/gettext-runtime.mo +0 -0
  785. data/vendor/local/share/locale/nl/LC_MESSAGES/glib20.mo +0 -0
  786. data/vendor/local/share/locale/nn/LC_MESSAGES/gettext-runtime.mo +0 -0
  787. data/vendor/local/share/locale/nn/LC_MESSAGES/glib20.mo +0 -0
  788. data/vendor/local/share/locale/oc/LC_MESSAGES/glib20.mo +0 -0
  789. data/vendor/local/share/locale/or/LC_MESSAGES/glib20.mo +0 -0
  790. data/vendor/local/share/locale/pa/LC_MESSAGES/glib20.mo +0 -0
  791. data/vendor/local/share/locale/pl/LC_MESSAGES/gettext-runtime.mo +0 -0
  792. data/vendor/local/share/locale/pl/LC_MESSAGES/glib20.mo +0 -0
  793. data/vendor/local/share/locale/ps/LC_MESSAGES/glib20.mo +0 -0
  794. data/vendor/local/share/locale/pt/LC_MESSAGES/gettext-runtime.mo +0 -0
  795. data/vendor/local/share/locale/pt/LC_MESSAGES/glib20.mo +0 -0
  796. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/gettext-runtime.mo +0 -0
  797. data/vendor/local/share/locale/pt_BR/LC_MESSAGES/glib20.mo +0 -0
  798. data/vendor/local/share/locale/ro/LC_MESSAGES/gettext-runtime.mo +0 -0
  799. data/vendor/local/share/locale/ro/LC_MESSAGES/glib20.mo +0 -0
  800. data/vendor/local/share/locale/ru/LC_MESSAGES/gettext-runtime.mo +0 -0
  801. data/vendor/local/share/locale/ru/LC_MESSAGES/glib20.mo +0 -0
  802. data/vendor/local/share/locale/rw/LC_MESSAGES/glib20.mo +0 -0
  803. data/vendor/local/share/locale/si/LC_MESSAGES/glib20.mo +0 -0
  804. data/vendor/local/share/locale/sk/LC_MESSAGES/gettext-runtime.mo +0 -0
  805. data/vendor/local/share/locale/sk/LC_MESSAGES/glib20.mo +0 -0
  806. data/vendor/local/share/locale/sl/LC_MESSAGES/gettext-runtime.mo +0 -0
  807. data/vendor/local/share/locale/sl/LC_MESSAGES/glib20.mo +0 -0
  808. data/vendor/local/share/locale/sq/LC_MESSAGES/glib20.mo +0 -0
  809. data/vendor/local/share/locale/sr/LC_MESSAGES/gettext-runtime.mo +0 -0
  810. data/vendor/local/share/locale/sr/LC_MESSAGES/glib20.mo +0 -0
  811. data/vendor/local/share/locale/sr@ije/LC_MESSAGES/glib20.mo +0 -0
  812. data/vendor/local/share/locale/sr@latin/LC_MESSAGES/glib20.mo +0 -0
  813. data/vendor/local/share/locale/sv/LC_MESSAGES/gettext-runtime.mo +0 -0
  814. data/vendor/local/share/locale/sv/LC_MESSAGES/glib20.mo +0 -0
  815. data/vendor/local/share/locale/ta/LC_MESSAGES/glib20.mo +0 -0
  816. data/vendor/local/share/locale/te/LC_MESSAGES/glib20.mo +0 -0
  817. data/vendor/local/share/locale/th/LC_MESSAGES/glib20.mo +0 -0
  818. data/vendor/local/share/locale/tl/LC_MESSAGES/glib20.mo +0 -0
  819. data/vendor/local/share/locale/tr/LC_MESSAGES/gettext-runtime.mo +0 -0
  820. data/vendor/local/share/locale/tr/LC_MESSAGES/glib20.mo +0 -0
  821. data/vendor/local/share/locale/tt/LC_MESSAGES/glib20.mo +0 -0
  822. data/vendor/local/share/locale/uk/LC_MESSAGES/gettext-runtime.mo +0 -0
  823. data/vendor/local/share/locale/uk/LC_MESSAGES/glib20.mo +0 -0
  824. data/vendor/local/share/locale/vi/LC_MESSAGES/gettext-runtime.mo +0 -0
  825. data/vendor/local/share/locale/vi/LC_MESSAGES/glib20.mo +0 -0
  826. data/vendor/local/share/locale/wa/LC_MESSAGES/glib20.mo +0 -0
  827. data/vendor/local/share/locale/xh/LC_MESSAGES/glib20.mo +0 -0
  828. data/vendor/local/share/locale/yi/LC_MESSAGES/glib20.mo +0 -0
  829. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/gettext-runtime.mo +0 -0
  830. data/vendor/local/share/locale/zh_CN/LC_MESSAGES/glib20.mo +0 -0
  831. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/gettext-runtime.mo +0 -0
  832. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/glib20.mo +0 -0
  833. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/gettext-runtime.mo +0 -0
  834. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/glib20.mo +0 -0
  835. data/vendor/local/share/man/man1/envsubst.1 +54 -0
  836. data/vendor/local/share/man/man1/gettext.1 +69 -0
  837. data/vendor/local/share/man/man1/glib-genmarshal.1 +312 -0
  838. data/vendor/local/share/man/man1/glib-mkenums.1 +246 -0
  839. data/vendor/local/share/man/man1/gobject-query.1 +83 -0
  840. data/vendor/local/share/man/man1/ngettext.1 +68 -0
  841. data/vendor/local/share/man/man3/bind_textdomain_codeset.3 +72 -0
  842. data/vendor/local/share/man/man3/bindtextdomain.3 +69 -0
  843. data/vendor/local/share/man/man3/dcgettext.3 +1 -0
  844. data/vendor/local/share/man/man3/dcngettext.3 +1 -0
  845. data/vendor/local/share/man/man3/dgettext.3 +1 -0
  846. data/vendor/local/share/man/man3/dngettext.3 +1 -0
  847. data/vendor/local/share/man/man3/gettext.3 +99 -0
  848. data/vendor/local/share/man/man3/ngettext.3 +60 -0
  849. data/vendor/local/share/man/man3/textdomain.3 +57 -0
  850. data/vendor/local/src/tml/packaging/gettext_0.18.1.1-2_win32.log +10423 -0
  851. data/vendor/local/src/tml/packaging/gettext_0.18.1.1-2_win32.sh +457 -0
  852. data/vendor/local/src/tml/packaging/glib_2.24.2-2_win32.log +2602 -0
  853. data/vendor/local/src/tml/packaging/glib_2.24.2-2_win32.sh +290 -0
  854. data/vendor/local/src/tml/packaging/glib_2.26.0-2_win32.log +2867 -0
  855. data/vendor/local/src/tml/packaging/glib_2.26.0-2_win32.sh +64 -0
  856. metadata +952 -0
@@ -0,0 +1,2875 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
+ <html>
3
+ <head>
4
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5
+ <title>The Base Object Type</title>
6
+ <meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
7
+ <link rel="home" href="index.html" title="GObject Reference Manual">
8
+ <link rel="up" href="rn01.html" title="API Reference">
9
+ <link rel="prev" href="GTypeModule.html" title="GTypeModule">
10
+ <link rel="next" href="gobject-Enumeration-and-Flag-Types.html" title="Enumeration and Flag Types">
11
+ <meta name="generator" content="GTK-Doc V1.15.1 (XML mode)">
12
+ <link rel="stylesheet" href="style.css" type="text/css">
13
+ </head>
14
+ <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15
+ <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
16
+ <tr valign="middle">
17
+ <td><a accesskey="p" href="GTypeModule.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18
+ <td><a accesskey="u" href="rn01.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19
+ <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20
+ <th width="100%" align="center">GObject Reference Manual</th>
21
+ <td><a accesskey="n" href="gobject-Enumeration-and-Flag-Types.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
22
+ </tr>
23
+ <tr><td colspan="5" class="shortcuts">
24
+ <a href="#gobject-The-Base-Object-Type.synopsis" class="shortcut">Top</a>
25
+  | 
26
+ <a href="#gobject-The-Base-Object-Type.description" class="shortcut">Description</a>
27
+  | 
28
+ <a href="#gobject-The-Base-Object-Type.object-hierarchy" class="shortcut">Object Hierarchy</a>
29
+  | 
30
+ <a href="#gobject-The-Base-Object-Type.signals" class="shortcut">Signals</a>
31
+ </td></tr>
32
+ </table>
33
+ <div class="refentry">
34
+ <a name="gobject-The-Base-Object-Type"></a><div class="titlepage"></div>
35
+ <div class="refnamediv"><table width="100%"><tr>
36
+ <td valign="top">
37
+ <h2><span class="refentrytitle"><a name="gobject-The-Base-Object-Type.top_of_page"></a>The Base Object Type</span></h2>
38
+ <p>The Base Object Type — The base object type</p>
39
+ </td>
40
+ <td valign="top" align="right"></td>
41
+ </tr></table></div>
42
+ <div class="refsynopsisdiv">
43
+ <a name="gobject-The-Base-Object-Type.synopsis"></a><h2>Synopsis</h2>
44
+ <a name="GObject"></a><pre class="synopsis">
45
+ #include &lt;glib-object.h&gt;
46
+
47
+ <a class="link" href="gobject-The-Base-Object-Type.html#GObject-struct" title="GObject">GObject</a>;
48
+ <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass">GObjectClass</a>;
49
+ <a class="link" href="gobject-The-Base-Object-Type.html#GObjectConstructParam" title="GObjectConstructParam">GObjectConstructParam</a>;
50
+ <span class="returnvalue">void</span> (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectGetPropertyFunc" title="GObjectGetPropertyFunc ()">*GObjectGetPropertyFunc</a>) (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
51
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> property_id</code></em>,
52
+ <em class="parameter"><code><a class="link" href="gobject-Generic-values.html#GValue" title="GValue"><span class="type">GValue</span></a> *value</code></em>,
53
+ <em class="parameter"><code><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> *pspec</code></em>);
54
+ <span class="returnvalue">void</span> (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectSetPropertyFunc" title="GObjectSetPropertyFunc ()">*GObjectSetPropertyFunc</a>) (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
55
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> property_id</code></em>,
56
+ <em class="parameter"><code>const <a class="link" href="gobject-Generic-values.html#GValue" title="GValue"><span class="type">GValue</span></a> *value</code></em>,
57
+ <em class="parameter"><code><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> *pspec</code></em>);
58
+ <span class="returnvalue">void</span> (<a class="link" href="gobject-The-Base-Object-Type.html#GObjectFinalizeFunc" title="GObjectFinalizeFunc ()">*GObjectFinalizeFunc</a>) (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>);
59
+ #define <a class="link" href="gobject-The-Base-Object-Type.html#G-TYPE-IS-OBJECT:CAPS" title="G_TYPE_IS_OBJECT()">G_TYPE_IS_OBJECT</a> (type)
60
+ #define <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT:CAPS" title="G_OBJECT()">G_OBJECT</a> (object)
61
+ #define <a class="link" href="gobject-The-Base-Object-Type.html#G-IS-OBJECT:CAPS" title="G_IS_OBJECT()">G_IS_OBJECT</a> (object)
62
+ #define <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-CLASS:CAPS" title="G_OBJECT_CLASS()">G_OBJECT_CLASS</a> (class)
63
+ #define <a class="link" href="gobject-The-Base-Object-Type.html#G-IS-OBJECT-CLASS:CAPS" title="G_IS_OBJECT_CLASS()">G_IS_OBJECT_CLASS</a> (class)
64
+ #define <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-GET-CLASS:CAPS" title="G_OBJECT_GET_CLASS()">G_OBJECT_GET_CLASS</a> (object)
65
+ #define <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-TYPE:CAPS" title="G_OBJECT_TYPE()">G_OBJECT_TYPE</a> (object)
66
+ #define <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-TYPE-NAME:CAPS" title="G_OBJECT_TYPE_NAME()">G_OBJECT_TYPE_NAME</a> (object)
67
+ #define <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-CLASS-TYPE:CAPS" title="G_OBJECT_CLASS_TYPE()">G_OBJECT_CLASS_TYPE</a> (class)
68
+ #define <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-CLASS-NAME:CAPS" title="G_OBJECT_CLASS_NAME()">G_OBJECT_CLASS_NAME</a> (class)
69
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-install-property" title="g_object_class_install_property ()">g_object_class_install_property</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a> *oclass</code></em>,
70
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> property_id</code></em>,
71
+ <em class="parameter"><code><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> *pspec</code></em>);
72
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-install-properties" title="g_object_class_install_properties ()">g_object_class_install_properties</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a> *oclass</code></em>,
73
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_pspecs</code></em>,
74
+ <em class="parameter"><code><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> **pspecs</code></em>);
75
+ <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="returnvalue">GParamSpec</span></a> * <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-find-property" title="g_object_class_find_property ()">g_object_class_find_property</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a> *oclass</code></em>,
76
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>);
77
+ <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="returnvalue">GParamSpec</span></a> ** <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-list-properties" title="g_object_class_list_properties ()">g_object_class_list_properties</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a> *oclass</code></em>,
78
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *n_properties</code></em>);
79
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-override-property" title="g_object_class_override_property ()">g_object_class_override_property</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a> *oclass</code></em>,
80
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> property_id</code></em>,
81
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);
82
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-interface-install-property" title="g_object_interface_install_property ()">g_object_interface_install_property</a> (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> g_iface</code></em>,
83
+ <em class="parameter"><code><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> *pspec</code></em>);
84
+ <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="returnvalue">GParamSpec</span></a> * <a class="link" href="gobject-The-Base-Object-Type.html#g-object-interface-find-property" title="g_object_interface_find_property ()">g_object_interface_find_property</a> (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> g_iface</code></em>,
85
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>);
86
+ <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="returnvalue">GParamSpec</span></a> ** <a class="link" href="gobject-The-Base-Object-Type.html#g-object-interface-list-properties" title="g_object_interface_list_properties ()">g_object_interface_list_properties</a> (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> g_iface</code></em>,
87
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *n_properties_p</code></em>);
88
+ <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-new" title="g_object_new ()">g_object_new</a> (<em class="parameter"><code><a class="link" href="gobject-Type-Information.html#GType" title="GType"><span class="type">GType</span></a> object_type</code></em>,
89
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
90
+ <em class="parameter"><code>...</code></em>);
91
+ <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-newv" title="g_object_newv ()">g_object_newv</a> (<em class="parameter"><code><a class="link" href="gobject-Type-Information.html#GType" title="GType"><span class="type">GType</span></a> object_type</code></em>,
92
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_parameters</code></em>,
93
+ <em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GParameter" title="GParameter"><span class="type">GParameter</span></a> *parameters</code></em>);
94
+ <a class="link" href="gobject-The-Base-Object-Type.html#GParameter" title="GParameter">GParameter</a>;
95
+ <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref" title="g_object_ref ()">g_object_ref</a> (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>);
96
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-unref" title="g_object_unref ()">g_object_unref</a> (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>);
97
+ <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref-sink" title="g_object_ref_sink ()">g_object_ref_sink</a> (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>);
98
+ typedef <a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned" title="GInitiallyUnowned">GInitiallyUnowned</a>;
99
+ typedef <a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnownedClass" title="GInitiallyUnownedClass">GInitiallyUnownedClass</a>;
100
+ #define <a class="link" href="gobject-The-Base-Object-Type.html#G-TYPE-INITIALLY-UNOWNED:CAPS" title="G_TYPE_INITIALLY_UNOWNED">G_TYPE_INITIALLY_UNOWNED</a>
101
+ <a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-is-floating" title="g_object_is_floating ()">g_object_is_floating</a> (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>);
102
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-force-floating" title="g_object_force_floating ()">g_object_force_floating</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>);
103
+ <span class="returnvalue">void</span> (<a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify" title="GWeakNotify ()">*GWeakNotify</a>) (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
104
+ <em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *where_the_object_was</code></em>);
105
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-weak-ref" title="g_object_weak_ref ()">g_object_weak_ref</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
106
+ <em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify" title="GWeakNotify ()"><span class="type">GWeakNotify</span></a> notify</code></em>,
107
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);
108
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-weak-unref" title="g_object_weak_unref ()">g_object_weak_unref</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
109
+ <em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify" title="GWeakNotify ()"><span class="type">GWeakNotify</span></a> notify</code></em>,
110
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);
111
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-weak-pointer" title="g_object_add_weak_pointer ()">g_object_add_weak_pointer</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
112
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> *weak_pointer_location</code></em>);
113
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-remove-weak-pointer" title="g_object_remove_weak_pointer ()">g_object_remove_weak_pointer</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
114
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> *weak_pointer_location</code></em>);
115
+ <span class="returnvalue">void</span> (<a class="link" href="gobject-The-Base-Object-Type.html#GToggleNotify" title="GToggleNotify ()">*GToggleNotify</a>) (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
116
+ <em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
117
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> is_last_ref</code></em>);
118
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref" title="g_object_add_toggle_ref ()">g_object_add_toggle_ref</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
119
+ <em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GToggleNotify" title="GToggleNotify ()"><span class="type">GToggleNotify</span></a> notify</code></em>,
120
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);
121
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-remove-toggle-ref" title="g_object_remove_toggle_ref ()">g_object_remove_toggle_ref</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
122
+ <em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GToggleNotify" title="GToggleNotify ()"><span class="type">GToggleNotify</span></a> notify</code></em>,
123
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);
124
+ <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-connect" title="g_object_connect ()">g_object_connect</a> (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>,
125
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *signal_spec</code></em>,
126
+ <em class="parameter"><code>...</code></em>);
127
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-disconnect" title="g_object_disconnect ()">g_object_disconnect</a> (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>,
128
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *signal_spec</code></em>,
129
+ <em class="parameter"><code>...</code></em>);
130
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set" title="g_object_set ()">g_object_set</a> (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>,
131
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
132
+ <em class="parameter"><code>...</code></em>);
133
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get" title="g_object_get ()">g_object_get</a> (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>,
134
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
135
+ <em class="parameter"><code>...</code></em>);
136
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-notify" title="g_object_notify ()">g_object_notify</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
137
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>);
138
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-notify-by-pspec" title="g_object_notify_by_pspec ()">g_object_notify_by_pspec</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
139
+ <em class="parameter"><code><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> *pspec</code></em>);
140
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-freeze-notify" title="g_object_freeze_notify ()">g_object_freeze_notify</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>);
141
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-thaw-notify" title="g_object_thaw_notify ()">g_object_thaw_notify</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>);
142
+ <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-data" title="g_object_get_data ()">g_object_get_data</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
143
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>);
144
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-data" title="g_object_set_data ()">g_object_set_data</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
145
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>,
146
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);
147
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-data-full" title="g_object_set_data_full ()">g_object_set_data_full</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
148
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>,
149
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
150
+ <em class="parameter"><code><a href="./../glib/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>);
151
+ <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-steal-data" title="g_object_steal_data ()">g_object_steal_data</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
152
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>);
153
+ <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-qdata" title="g_object_get_qdata ()">g_object_get_qdata</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
154
+ <em class="parameter"><code><a href="./../glib/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> quark</code></em>);
155
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata" title="g_object_set_qdata ()">g_object_set_qdata</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
156
+ <em class="parameter"><code><a href="./../glib/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> quark</code></em>,
157
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);
158
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata-full" title="g_object_set_qdata_full ()">g_object_set_qdata_full</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
159
+ <em class="parameter"><code><a href="./../glib/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> quark</code></em>,
160
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
161
+ <em class="parameter"><code><a href="./../glib/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>);
162
+ <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-steal-qdata" title="g_object_steal_qdata ()">g_object_steal_qdata</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
163
+ <em class="parameter"><code><a href="./../glib/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> quark</code></em>);
164
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-property" title="g_object_set_property ()">g_object_set_property</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
165
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>,
166
+ <em class="parameter"><code>const <a class="link" href="gobject-Generic-values.html#GValue" title="GValue"><span class="type">GValue</span></a> *value</code></em>);
167
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-property" title="g_object_get_property ()">g_object_get_property</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
168
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>,
169
+ <em class="parameter"><code><a class="link" href="gobject-Generic-values.html#GValue" title="GValue"><span class="type">GValue</span></a> *value</code></em>);
170
+ <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> * <a class="link" href="gobject-The-Base-Object-Type.html#g-object-new-valist" title="g_object_new_valist ()">g_object_new_valist</a> (<em class="parameter"><code><a class="link" href="gobject-Type-Information.html#GType" title="GType"><span class="type">GType</span></a> object_type</code></em>,
171
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
172
+ <em class="parameter"><code><span class="type">va_list</span> var_args</code></em>);
173
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-valist" title="g_object_set_valist ()">g_object_set_valist</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
174
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
175
+ <em class="parameter"><code><span class="type">va_list</span> var_args</code></em>);
176
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-valist" title="g_object_get_valist ()">g_object_get_valist</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
177
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
178
+ <em class="parameter"><code><span class="type">va_list</span> var_args</code></em>);
179
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-watch-closure" title="g_object_watch_closure ()">g_object_watch_closure</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
180
+ <em class="parameter"><code><a class="link" href="gobject-Closures.html#GClosure" title="GClosure"><span class="type">GClosure</span></a> *closure</code></em>);
181
+ <span class="returnvalue">void</span> <a class="link" href="gobject-The-Base-Object-Type.html#g-object-run-dispose" title="g_object_run_dispose ()">g_object_run_dispose</a> (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>);
182
+ #define <a class="link" href="gobject-The-Base-Object-Type.html#G-OBJECT-WARN-INVALID-PROPERTY-ID:CAPS" title="G_OBJECT_WARN_INVALID_PROPERTY_ID()">G_OBJECT_WARN_INVALID_PROPERTY_ID</a> (object,
183
+ property_id,
184
+ pspec)
185
+ </pre>
186
+ </div>
187
+ <div class="refsect1">
188
+ <a name="gobject-The-Base-Object-Type.object-hierarchy"></a><h2>Object Hierarchy</h2>
189
+ <pre class="synopsis">
190
+ GObject
191
+ +----<a class="link" href="GBinding.html" title="GBinding">GBinding</a>
192
+ +----<a class="link" href="GTypeModule.html" title="GTypeModule">GTypeModule</a>
193
+ </pre>
194
+ </div>
195
+ <div class="refsect1">
196
+ <a name="gobject-The-Base-Object-Type.signals"></a><h2>Signals</h2>
197
+ <pre class="synopsis">
198
+ "<a class="link" href="gobject-The-Base-Object-Type.html#GObject-notify" title='The "notify" signal'>notify</a>" : Run First / No Recursion / Has Details / Action / No Hooks
199
+ </pre>
200
+ </div>
201
+ <div class="refsect1">
202
+ <a name="gobject-The-Base-Object-Type.description"></a><h2>Description</h2>
203
+ <p>
204
+ GObject is the fundamental type providing the common attributes and
205
+ methods for all object types in GTK+, Pango and other libraries
206
+ based on GObject. The GObject class provides methods for object
207
+ construction and destruction, property access methods, and signal
208
+ support. Signals are described in detail in <a class="xref" href="gobject-Signals.html" title="Signals"><span class="refentrytitle"><a name="gobject-Signals.top_of_page"></a>Signals</span>(3)</a>.
209
+ </p>
210
+ <p>
211
+ </p>
212
+ <p><a name="floating-ref"></a>
213
+ <a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned" title="GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a> is derived from <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>. The only difference between
214
+ the two is that the initial reference of a <a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned" title="GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a> is flagged
215
+ as a <em class="firstterm">floating</em> reference.
216
+ This means that it is not specifically claimed to be "owned" by
217
+ any code portion. The main motivation for providing floating references is
218
+ C convenience. In particular, it allows code to be written as:
219
+ </p>
220
+ <div class="informalexample">
221
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
222
+ <tbody>
223
+ <tr>
224
+ <td class="listing_lines" align="right"><pre>1
225
+ 2</pre></td>
226
+ <td class="listing_code"><pre class="programlisting"><span class="normal">container </span><span class="symbol">=</span><span class="normal"> </span><span class="function">create_container</span><span class="symbol">();</span>
227
+ <span class="function">container_add_child</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">container</span><span class="symbol">,</span><span class="normal"> </span><span class="function">create_child</span><span class="symbol">());</span></pre></td>
228
+ </tr>
229
+ </tbody>
230
+ </table>
231
+ </div>
232
+
233
+ <p>
234
+ If <code class="function"><code class="function">container_add_child()</code></code> will <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref-sink" title="g_object_ref_sink ()"><code class="function">g_object_ref_sink()</code></a> the
235
+ passed in child, no reference of the newly created child is leaked.
236
+ Without floating references, <code class="function"><code class="function">container_add_child()</code></code>
237
+ can only <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref" title="g_object_ref ()"><code class="function">g_object_ref()</code></a> the new child, so to implement this code without
238
+ reference leaks, it would have to be written as:
239
+ </p>
240
+ <div class="informalexample">
241
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
242
+ <tbody>
243
+ <tr>
244
+ <td class="listing_lines" align="right"><pre>1
245
+ 2
246
+ 3
247
+ 4
248
+ 5</pre></td>
249
+ <td class="listing_code"><pre class="programlisting"><span class="usertype">Child</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">child</span><span class="symbol">;</span>
250
+ <span class="normal">container </span><span class="symbol">=</span><span class="normal"> </span><span class="function">create_container</span><span class="symbol">();</span>
251
+ <span class="normal">child </span><span class="symbol">=</span><span class="normal"> </span><span class="function">create_child</span><span class="symbol">();</span>
252
+ <span class="function">container_add_child</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">container</span><span class="symbol">,</span><span class="normal"> child</span><span class="symbol">);</span>
253
+ <span class="function"><a href="gobject-The-Base-Object-Type.html#g-object-unref">g_object_unref</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">child</span><span class="symbol">);</span></pre></td>
254
+ </tr>
255
+ </tbody>
256
+ </table>
257
+ </div>
258
+
259
+ <p>
260
+ The floating reference can be converted into
261
+ an ordinary reference by calling <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref-sink" title="g_object_ref_sink ()"><code class="function">g_object_ref_sink()</code></a>.
262
+ For already sunken objects (objects that don't have a floating reference
263
+ anymore), <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref-sink" title="g_object_ref_sink ()"><code class="function">g_object_ref_sink()</code></a> is equivalent to <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref" title="g_object_ref ()"><code class="function">g_object_ref()</code></a> and returns
264
+ a new reference.
265
+ Since floating references are useful almost exclusively for C convenience,
266
+ language bindings that provide automated reference and memory ownership
267
+ maintenance (such as smart pointers or garbage collection) therefore don't
268
+ need to expose floating references in their API.
269
+ </p>
270
+ <p>
271
+ </p>
272
+ <p>
273
+ Some object implementations may need to save an objects floating state
274
+ across certain code portions (an example is <a href="http://library.gnome.org/devel/gtk/unstable/GtkMenu.html"><span class="type">GtkMenu</span></a>), to achive this, the
275
+ following sequence can be used:
276
+ </p>
277
+ <p>
278
+ </p>
279
+ <div class="informalexample">
280
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
281
+ <tbody>
282
+ <tr>
283
+ <td class="listing_lines" align="right"><pre>1
284
+ 2
285
+ 3
286
+ 4
287
+ 5
288
+ 6
289
+ 7
290
+ 8
291
+ 9</pre></td>
292
+ <td class="listing_code"><pre class="programlisting"><span class="comment">// save floating state</span>
293
+ <span class="usertype">gboolean</span><span class="normal"> was_floating </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="gobject-The-Base-Object-Type.html#g-object-is-floating">g_object_is_floating</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">object</span><span class="symbol">);</span>
294
+ <span class="function"><a href="gobject-The-Base-Object-Type.html#g-object-ref-sink">g_object_ref_sink</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">object</span><span class="symbol">);</span>
295
+ <span class="comment">// protected code portion</span>
296
+ <span class="symbol">...;</span>
297
+ <span class="comment">// restore floating state</span>
298
+ <span class="keyword">if</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">was_floating</span><span class="symbol">)</span>
299
+ <span class="normal"> </span><span class="function"><a href="gobject-The-Base-Object-Type.html#g-object-force-floating">g_object_force_floating</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">object</span><span class="symbol">);</span>
300
+ <span class="function">g_obejct_unref</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">object</span><span class="symbol">);</span><span class="normal"> </span><span class="comment">// release previously acquired reference</span></pre></td>
301
+ </tr>
302
+ </tbody>
303
+ </table>
304
+ </div>
305
+
306
+ <p>
307
+ </p>
308
+ </div>
309
+ <div class="refsect1">
310
+ <a name="gobject-The-Base-Object-Type.details"></a><h2>Details</h2>
311
+ <div class="refsect2">
312
+ <a name="GObject-struct"></a><h3>GObject</h3>
313
+ <pre class="programlisting">typedef struct _GObject GObject;</pre>
314
+ <p>
315
+ All the fields in the <span class="structname">GObject</span> structure are private
316
+ to the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> implementation and should never be accessed directly.
317
+ </p>
318
+ </div>
319
+ <hr>
320
+ <div class="refsect2">
321
+ <a name="GObjectClass"></a><h3>GObjectClass</h3>
322
+ <pre class="programlisting">typedef struct {
323
+ GTypeClass g_type_class;
324
+
325
+ /* seldomly overidden */
326
+ GObject* (*constructor) (GType type,
327
+ guint n_construct_properties,
328
+ GObjectConstructParam *construct_properties);
329
+ /* overridable methods */
330
+ void (*set_property) (GObject *object,
331
+ guint property_id,
332
+ const GValue *value,
333
+ GParamSpec *pspec);
334
+ void (*get_property) (GObject *object,
335
+ guint property_id,
336
+ GValue *value,
337
+ GParamSpec *pspec);
338
+ void (*dispose) (GObject *object);
339
+ void (*finalize) (GObject *object);
340
+ /* seldomly overidden */
341
+ void (*dispatch_properties_changed) (GObject *object,
342
+ guint n_pspecs,
343
+ GParamSpec **pspecs);
344
+ /* signals */
345
+ void (*notify) (GObject *object,
346
+ GParamSpec *pspec);
347
+
348
+ /* called when done constructing */
349
+ void (*constructed) (GObject *object);
350
+ } GObjectClass;
351
+ </pre>
352
+ <p>
353
+ The class structure for the <span class="structname">GObject</span> type.
354
+ </p>
355
+ <p>
356
+ </p>
357
+ <div class="example">
358
+ <a name="id405428"></a><p class="title"><b>Example 1. Implementing singletons using a constructor</b></p>
359
+ <div class="example-contents">
360
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
361
+ <tbody>
362
+ <tr>
363
+ <td class="listing_lines" align="right"><pre>1
364
+ 2
365
+ 3
366
+ 4
367
+ 5
368
+ 6
369
+ 7
370
+ 8
371
+ 9
372
+ 10
373
+ 11
374
+ 12
375
+ 13
376
+ 14
377
+ 15
378
+ 16
379
+ 17
380
+ 18
381
+ 19
382
+ 20
383
+ 21</pre></td>
384
+ <td class="listing_code"><pre class="programlisting"><span class="keyword">static</span><span class="normal"> </span><span class="usertype">MySingleton</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">the_singleton </span><span class="symbol">=</span><span class="normal"> <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">;</span>
385
+
386
+ <span class="keyword">static</span><span class="normal"> <a href="gobject-The-Base-Object-Type.html#GObject">GObject</a></span><span class="symbol">*</span>
387
+ <span class="function">my_singleton_constructor</span><span class="normal"> </span><span class="symbol">(</span><span class="usertype">GType</span><span class="normal"> type</span><span class="symbol">,</span>
388
+ <span class="normal"> </span><span class="usertype">guint</span><span class="normal"> n_construct_params</span><span class="symbol">,</span>
389
+ <span class="normal"> </span><span class="usertype">GObjectConstructParam</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">construct_params</span><span class="symbol">)</span>
390
+ <span class="cbracket">{</span>
391
+ <span class="normal"> </span><span class="usertype">GObject</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">object</span><span class="symbol">;</span>
392
+ <span class="normal"> </span>
393
+ <span class="normal"> </span><span class="keyword">if</span><span class="normal"> </span><span class="symbol">(!</span><span class="normal">the_singleton</span><span class="symbol">)</span>
394
+ <span class="normal"> </span><span class="cbracket">{</span>
395
+ <span class="normal"> object </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="gobject-The-Base-Object-Type.html#G-OBJECT-CLASS:CAPS">G_OBJECT_CLASS</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">parent_class</span><span class="symbol">)-&gt;</span><span class="function">constructor</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">type</span><span class="symbol">,</span>
396
+ <span class="normal"> n_construct_params</span><span class="symbol">,</span>
397
+ <span class="normal"> construct_params</span><span class="symbol">);</span>
398
+ <span class="normal"> the_singleton </span><span class="symbol">=</span><span class="normal"> </span><span class="function">MY_SINGLETON</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">object</span><span class="symbol">);</span>
399
+ <span class="normal"> </span><span class="cbracket">}</span>
400
+ <span class="normal"> </span><span class="keyword">else</span>
401
+ <span class="normal"> object </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="gobject-The-Base-Object-Type.html#g-object-ref">g_object_ref</a></span><span class="normal"> </span><span class="symbol">(</span><span class="function"><a href="gobject-The-Base-Object-Type.html#G-OBJECT:CAPS">G_OBJECT</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">the_singleton</span><span class="symbol">));</span>
402
+
403
+ <span class="normal"> </span><span class="keyword">return</span><span class="normal"> object</span><span class="symbol">;</span>
404
+ <span class="cbracket">}</span></pre></td>
405
+ </tr>
406
+ </tbody>
407
+ </table>
408
+ </div>
409
+
410
+ </div>
411
+ <p><br class="example-break">
412
+ </p>
413
+ <div class="variablelist"><table border="0">
414
+ <col align="left" valign="top">
415
+ <tbody>
416
+ <tr>
417
+ <td><p><span class="term"><a class="link" href="gobject-Type-Information.html#GTypeClass" title="GTypeClass"><span class="type">GTypeClass</span></a> <em class="structfield"><code><a name="GObjectClass.g-type-class"></a>g_type_class</code></em>;</span></p></td>
418
+ <td>the parent class
419
+ </td>
420
+ </tr>
421
+ <tr>
422
+ <td><p><span class="term"><em class="structfield"><code><a name="GObjectClass.constructor"></a>constructor</code></em> ()</span></p></td>
423
+ <td>the <em class="parameter"><code>constructor</code></em> function is called by <a class="link" href="gobject-The-Base-Object-Type.html#g-object-new" title="g_object_new ()"><code class="function">g_object_new()</code></a> to
424
+ complete the object initialization after all the construction properties are
425
+ set. The first thing a <em class="parameter"><code>constructor</code></em> implementation must do is chain up to the
426
+ <em class="parameter"><code>constructor</code></em> of the parent class. Overriding <em class="parameter"><code>constructor</code></em> should be rarely
427
+ needed, e.g. to handle construct properties, or to implement singletons.
428
+ </td>
429
+ </tr>
430
+ <tr>
431
+ <td><p><span class="term"><em class="structfield"><code><a name="GObjectClass.set-property"></a>set_property</code></em> ()</span></p></td>
432
+ <td>the generic setter for all properties of this type. Should be
433
+ overridden for every type with properties. Implementations of <em class="parameter"><code>set_property</code></em>
434
+ don't need to emit property change notification explicitly, this is handled
435
+ by the type system.
436
+ </td>
437
+ </tr>
438
+ <tr>
439
+ <td><p><span class="term"><em class="structfield"><code><a name="GObjectClass.get-property"></a>get_property</code></em> ()</span></p></td>
440
+ <td>the generic getter for all properties of this type. Should be
441
+ overridden for every type with properties.
442
+ </td>
443
+ </tr>
444
+ <tr>
445
+ <td><p><span class="term"><em class="structfield"><code><a name="GObjectClass.dispose"></a>dispose</code></em> ()</span></p></td>
446
+ <td>the <em class="parameter"><code>dispose</code></em> function is supposed to drop all references to other
447
+ objects, but keep the instance otherwise intact, so that client method
448
+ invocations still work. It may be run multiple times (due to reference
449
+ loops). Before returning, <em class="parameter"><code>dispose</code></em> should chain up to the <em class="parameter"><code>dispose</code></em> method
450
+ of the parent class.
451
+ </td>
452
+ </tr>
453
+ <tr>
454
+ <td><p><span class="term"><em class="structfield"><code><a name="GObjectClass.finalize"></a>finalize</code></em> ()</span></p></td>
455
+ <td>instance finalization function, should finish the finalization of
456
+ the instance begun in <em class="parameter"><code>dispose</code></em> and chain up to the <em class="parameter"><code>finalize</code></em> method of the
457
+ parent class.
458
+ </td>
459
+ </tr>
460
+ <tr>
461
+ <td><p><span class="term"><em class="structfield"><code><a name="GObjectClass.dispatch-properties-changed"></a>dispatch_properties_changed</code></em> ()</span></p></td>
462
+ <td>emits property change notification for a bunch
463
+ of properties. Overriding <em class="parameter"><code>dispatch_properties_changed</code></em> should be rarely
464
+ needed.
465
+ </td>
466
+ </tr>
467
+ <tr>
468
+ <td><p><span class="term"><em class="structfield"><code><a name="GObjectClass.notify"></a>notify</code></em> ()</span></p></td>
469
+ <td>the class closure for the notify signal
470
+ </td>
471
+ </tr>
472
+ <tr>
473
+ <td><p><span class="term"><em class="structfield"><code><a name="GObjectClass.constructed"></a>constructed</code></em> ()</span></p></td>
474
+ <td>the <em class="parameter"><code>constructed</code></em> function is called by <a class="link" href="gobject-The-Base-Object-Type.html#g-object-new" title="g_object_new ()"><code class="function">g_object_new()</code></a> as the
475
+ final step of the object creation process. At the point of the call, all
476
+ construction properties have been set on the object. The purpose of this
477
+ call is to allow for object initialisation steps that can only be performed
478
+ after construction properties have been set. <em class="parameter"><code>constructed</code></em> implementors
479
+ should chain up to the <em class="parameter"><code>constructed</code></em> call of their parent class to allow it
480
+ to complete its initialisation.
481
+ </td>
482
+ </tr>
483
+ </tbody>
484
+ </table></div>
485
+ </div>
486
+ <hr>
487
+ <div class="refsect2">
488
+ <a name="GObjectConstructParam"></a><h3>GObjectConstructParam</h3>
489
+ <pre class="programlisting">typedef struct {
490
+ GParamSpec *pspec;
491
+ GValue *value;
492
+ } GObjectConstructParam;
493
+ </pre>
494
+ <p>
495
+ The <span class="structname">GObjectConstructParam</span> struct is an auxiliary
496
+ structure used to hand <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a>/<a class="link" href="gobject-Generic-values.html#GValue" title="GValue"><span class="type">GValue</span></a> pairs to the <em class="parameter"><code>constructor</code></em> of
497
+ a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>.
498
+ </p>
499
+ <div class="variablelist"><table border="0">
500
+ <col align="left" valign="top">
501
+ <tbody>
502
+ <tr>
503
+ <td><p><span class="term"><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> *<em class="structfield"><code><a name="GObjectConstructParam.pspec"></a>pspec</code></em>;</span></p></td>
504
+ <td>the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> of the construct parameter
505
+ </td>
506
+ </tr>
507
+ <tr>
508
+ <td><p><span class="term"><a class="link" href="gobject-Generic-values.html#GValue" title="GValue"><span class="type">GValue</span></a> *<em class="structfield"><code><a name="GObjectConstructParam.value"></a>value</code></em>;</span></p></td>
509
+ <td>the value to set the parameter to
510
+ </td>
511
+ </tr>
512
+ </tbody>
513
+ </table></div>
514
+ </div>
515
+ <hr>
516
+ <div class="refsect2">
517
+ <a name="GObjectGetPropertyFunc"></a><h3>GObjectGetPropertyFunc ()</h3>
518
+ <pre class="programlisting"><span class="returnvalue">void</span> (*GObjectGetPropertyFunc) (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
519
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> property_id</code></em>,
520
+ <em class="parameter"><code><a class="link" href="gobject-Generic-values.html#GValue" title="GValue"><span class="type">GValue</span></a> *value</code></em>,
521
+ <em class="parameter"><code><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> *pspec</code></em>);</pre>
522
+ <p>
523
+ The type of the <em class="parameter"><code>get_property</code></em> function of <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>.
524
+ </p>
525
+ <div class="variablelist"><table border="0">
526
+ <col align="left" valign="top">
527
+ <tbody>
528
+ <tr>
529
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
530
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
531
+ </td>
532
+ </tr>
533
+ <tr>
534
+ <td><p><span class="term"><em class="parameter"><code>property_id</code></em> :</span></p></td>
535
+ <td>the numeric id under which the property was registered with
536
+ <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-install-property" title="g_object_class_install_property ()"><code class="function">g_object_class_install_property()</code></a>.
537
+ </td>
538
+ </tr>
539
+ <tr>
540
+ <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
541
+ <td>a <a class="link" href="gobject-Generic-values.html#GValue" title="GValue"><span class="type">GValue</span></a> to return the property value in
542
+ </td>
543
+ </tr>
544
+ <tr>
545
+ <td><p><span class="term"><em class="parameter"><code>pspec</code></em> :</span></p></td>
546
+ <td>the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> describing the property
547
+ </td>
548
+ </tr>
549
+ </tbody>
550
+ </table></div>
551
+ </div>
552
+ <hr>
553
+ <div class="refsect2">
554
+ <a name="GObjectSetPropertyFunc"></a><h3>GObjectSetPropertyFunc ()</h3>
555
+ <pre class="programlisting"><span class="returnvalue">void</span> (*GObjectSetPropertyFunc) (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
556
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> property_id</code></em>,
557
+ <em class="parameter"><code>const <a class="link" href="gobject-Generic-values.html#GValue" title="GValue"><span class="type">GValue</span></a> *value</code></em>,
558
+ <em class="parameter"><code><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> *pspec</code></em>);</pre>
559
+ <p>
560
+ The type of the <em class="parameter"><code>set_property</code></em> function of <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>.
561
+ </p>
562
+ <div class="variablelist"><table border="0">
563
+ <col align="left" valign="top">
564
+ <tbody>
565
+ <tr>
566
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
567
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
568
+ </td>
569
+ </tr>
570
+ <tr>
571
+ <td><p><span class="term"><em class="parameter"><code>property_id</code></em> :</span></p></td>
572
+ <td>the numeric id under which the property was registered with
573
+ <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-install-property" title="g_object_class_install_property ()"><code class="function">g_object_class_install_property()</code></a>.
574
+ </td>
575
+ </tr>
576
+ <tr>
577
+ <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
578
+ <td>the new value for the property
579
+ </td>
580
+ </tr>
581
+ <tr>
582
+ <td><p><span class="term"><em class="parameter"><code>pspec</code></em> :</span></p></td>
583
+ <td>the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> describing the property
584
+ </td>
585
+ </tr>
586
+ </tbody>
587
+ </table></div>
588
+ </div>
589
+ <hr>
590
+ <div class="refsect2">
591
+ <a name="GObjectFinalizeFunc"></a><h3>GObjectFinalizeFunc ()</h3>
592
+ <pre class="programlisting"><span class="returnvalue">void</span> (*GObjectFinalizeFunc) (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>);</pre>
593
+ <p>
594
+ The type of the <em class="parameter"><code>finalize</code></em> function of <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>.
595
+ </p>
596
+ <div class="variablelist"><table border="0">
597
+ <col align="left" valign="top">
598
+ <tbody><tr>
599
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
600
+ <td>the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> being finalized
601
+ </td>
602
+ </tr></tbody>
603
+ </table></div>
604
+ </div>
605
+ <hr>
606
+ <div class="refsect2">
607
+ <a name="G-TYPE-IS-OBJECT:CAPS"></a><h3>G_TYPE_IS_OBJECT()</h3>
608
+ <pre class="programlisting">#define G_TYPE_IS_OBJECT(type) (G_TYPE_FUNDAMENTAL (type) == G_TYPE_OBJECT)
609
+ </pre>
610
+ <p>
611
+ Check if the passed in type id is a <a class="link" href="gobject-Type-Information.html#G-TYPE-OBJECT:CAPS" title="G_TYPE_OBJECT"><code class="literal">G_TYPE_OBJECT</code></a> or derived from it.
612
+ </p>
613
+ <div class="variablelist"><table border="0">
614
+ <col align="left" valign="top">
615
+ <tbody>
616
+ <tr>
617
+ <td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
618
+ <td>Type id to check
619
+ </td>
620
+ </tr>
621
+ <tr>
622
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
623
+ <td> <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> or <a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, indicating whether <em class="parameter"><code>type</code></em> is a <a class="link" href="gobject-Type-Information.html#G-TYPE-OBJECT:CAPS" title="G_TYPE_OBJECT"><code class="literal">G_TYPE_OBJECT</code></a>.
624
+ </td>
625
+ </tr>
626
+ </tbody>
627
+ </table></div>
628
+ </div>
629
+ <hr>
630
+ <div class="refsect2">
631
+ <a name="G-OBJECT:CAPS"></a><h3>G_OBJECT()</h3>
632
+ <pre class="programlisting">#define G_OBJECT(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), G_TYPE_OBJECT, GObject))
633
+ </pre>
634
+ <p>
635
+ Casts a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> or derived pointer into a (GObject*) pointer.
636
+ Depending on the current debugging level, this function may invoke
637
+ certain runtime checks to identify invalid casts.
638
+ </p>
639
+ <div class="variablelist"><table border="0">
640
+ <col align="left" valign="top">
641
+ <tbody><tr>
642
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
643
+ <td>Object which is subject to casting.
644
+ </td>
645
+ </tr></tbody>
646
+ </table></div>
647
+ </div>
648
+ <hr>
649
+ <div class="refsect2">
650
+ <a name="G-IS-OBJECT:CAPS"></a><h3>G_IS_OBJECT()</h3>
651
+ <pre class="programlisting">#define G_IS_OBJECT(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), G_TYPE_OBJECT))
652
+ </pre>
653
+ <p>
654
+ Checks whether a valid <a class="link" href="gobject-Type-Information.html#GTypeInstance" title="GTypeInstance"><span class="type">GTypeInstance</span></a> pointer is of type <a class="link" href="gobject-Type-Information.html#G-TYPE-OBJECT:CAPS" title="G_TYPE_OBJECT"><code class="literal">G_TYPE_OBJECT</code></a>.
655
+ </p>
656
+ <div class="variablelist"><table border="0">
657
+ <col align="left" valign="top">
658
+ <tbody><tr>
659
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
660
+ <td>Instance to check for being a <a class="link" href="gobject-Type-Information.html#G-TYPE-OBJECT:CAPS" title="G_TYPE_OBJECT"><code class="literal">G_TYPE_OBJECT</code></a>.
661
+ </td>
662
+ </tr></tbody>
663
+ </table></div>
664
+ </div>
665
+ <hr>
666
+ <div class="refsect2">
667
+ <a name="G-OBJECT-CLASS:CAPS"></a><h3>G_OBJECT_CLASS()</h3>
668
+ <pre class="programlisting">#define G_OBJECT_CLASS(class) (G_TYPE_CHECK_CLASS_CAST ((class), G_TYPE_OBJECT, GObjectClass))
669
+ </pre>
670
+ <p>
671
+ Casts a derived <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a> structure into a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a> structure.
672
+ </p>
673
+ <div class="variablelist"><table border="0">
674
+ <col align="left" valign="top">
675
+ <tbody><tr>
676
+ <td><p><span class="term"><em class="parameter"><code>class</code></em> :</span></p></td>
677
+ <td>a valid <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>
678
+ </td>
679
+ </tr></tbody>
680
+ </table></div>
681
+ </div>
682
+ <hr>
683
+ <div class="refsect2">
684
+ <a name="G-IS-OBJECT-CLASS:CAPS"></a><h3>G_IS_OBJECT_CLASS()</h3>
685
+ <pre class="programlisting">#define G_IS_OBJECT_CLASS(class) (G_TYPE_CHECK_CLASS_TYPE ((class), G_TYPE_OBJECT))
686
+ </pre>
687
+ <p>
688
+ Checks whether <em class="parameter"><code>class</code></em> "is a" valid <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a> structure of type
689
+ <a class="link" href="gobject-Type-Information.html#G-TYPE-OBJECT:CAPS" title="G_TYPE_OBJECT"><code class="literal">G_TYPE_OBJECT</code></a> or derived.
690
+ </p>
691
+ <div class="variablelist"><table border="0">
692
+ <col align="left" valign="top">
693
+ <tbody><tr>
694
+ <td><p><span class="term"><em class="parameter"><code>class</code></em> :</span></p></td>
695
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>
696
+ </td>
697
+ </tr></tbody>
698
+ </table></div>
699
+ </div>
700
+ <hr>
701
+ <div class="refsect2">
702
+ <a name="G-OBJECT-GET-CLASS:CAPS"></a><h3>G_OBJECT_GET_CLASS()</h3>
703
+ <pre class="programlisting">#define G_OBJECT_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS ((object), G_TYPE_OBJECT, GObjectClass))
704
+ </pre>
705
+ <p>
706
+ Get the class structure associated to a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> instance.
707
+ </p>
708
+ <div class="variablelist"><table border="0">
709
+ <col align="left" valign="top">
710
+ <tbody>
711
+ <tr>
712
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
713
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> instance.
714
+ </td>
715
+ </tr>
716
+ <tr>
717
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
718
+ <td> pointer to object class structure.
719
+ </td>
720
+ </tr>
721
+ </tbody>
722
+ </table></div>
723
+ </div>
724
+ <hr>
725
+ <div class="refsect2">
726
+ <a name="G-OBJECT-TYPE:CAPS"></a><h3>G_OBJECT_TYPE()</h3>
727
+ <pre class="programlisting">#define G_OBJECT_TYPE(object) (G_TYPE_FROM_INSTANCE (object))
728
+ </pre>
729
+ <p>
730
+ Get the type id of an object.
731
+ </p>
732
+ <div class="variablelist"><table border="0">
733
+ <col align="left" valign="top">
734
+ <tbody>
735
+ <tr>
736
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
737
+ <td>Object to return the type id for.
738
+ </td>
739
+ </tr>
740
+ <tr>
741
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
742
+ <td> Type id of <em class="parameter"><code>object</code></em>.
743
+ </td>
744
+ </tr>
745
+ </tbody>
746
+ </table></div>
747
+ </div>
748
+ <hr>
749
+ <div class="refsect2">
750
+ <a name="G-OBJECT-TYPE-NAME:CAPS"></a><h3>G_OBJECT_TYPE_NAME()</h3>
751
+ <pre class="programlisting">#define G_OBJECT_TYPE_NAME(object) (g_type_name (G_OBJECT_TYPE (object)))
752
+ </pre>
753
+ <p>
754
+ Get the name of an object's type.
755
+ </p>
756
+ <div class="variablelist"><table border="0">
757
+ <col align="left" valign="top">
758
+ <tbody>
759
+ <tr>
760
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
761
+ <td>Object to return the type name for.
762
+ </td>
763
+ </tr>
764
+ <tr>
765
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
766
+ <td> Type name of <em class="parameter"><code>object</code></em>. The string is owned by the type system and
767
+ should not be freed.
768
+ </td>
769
+ </tr>
770
+ </tbody>
771
+ </table></div>
772
+ </div>
773
+ <hr>
774
+ <div class="refsect2">
775
+ <a name="G-OBJECT-CLASS-TYPE:CAPS"></a><h3>G_OBJECT_CLASS_TYPE()</h3>
776
+ <pre class="programlisting">#define G_OBJECT_CLASS_TYPE(class) (G_TYPE_FROM_CLASS (class))
777
+ </pre>
778
+ <p>
779
+ Get the type id of a class structure.
780
+ </p>
781
+ <div class="variablelist"><table border="0">
782
+ <col align="left" valign="top">
783
+ <tbody>
784
+ <tr>
785
+ <td><p><span class="term"><em class="parameter"><code>class</code></em> :</span></p></td>
786
+ <td>a valid <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>
787
+ </td>
788
+ </tr>
789
+ <tr>
790
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
791
+ <td> Type id of <em class="parameter"><code>class</code></em>.
792
+ </td>
793
+ </tr>
794
+ </tbody>
795
+ </table></div>
796
+ </div>
797
+ <hr>
798
+ <div class="refsect2">
799
+ <a name="G-OBJECT-CLASS-NAME:CAPS"></a><h3>G_OBJECT_CLASS_NAME()</h3>
800
+ <pre class="programlisting">#define G_OBJECT_CLASS_NAME(class) (g_type_name (G_OBJECT_CLASS_TYPE (class)))
801
+ </pre>
802
+ <p>
803
+ Return the name of a class structure's type.
804
+ </p>
805
+ <div class="variablelist"><table border="0">
806
+ <col align="left" valign="top">
807
+ <tbody>
808
+ <tr>
809
+ <td><p><span class="term"><em class="parameter"><code>class</code></em> :</span></p></td>
810
+ <td>a valid <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>
811
+ </td>
812
+ </tr>
813
+ <tr>
814
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
815
+ <td> Type name of <em class="parameter"><code>class</code></em>. The string is owned by the type system and
816
+ should not be freed.
817
+ </td>
818
+ </tr>
819
+ </tbody>
820
+ </table></div>
821
+ </div>
822
+ <hr>
823
+ <div class="refsect2">
824
+ <a name="g-object-class-install-property"></a><h3>g_object_class_install_property ()</h3>
825
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_class_install_property (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a> *oclass</code></em>,
826
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> property_id</code></em>,
827
+ <em class="parameter"><code><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> *pspec</code></em>);</pre>
828
+ <p>
829
+ Installs a new property. This is usually done in the class initializer.
830
+ </p>
831
+ <p>
832
+ Note that it is possible to redefine a property in a derived class,
833
+ by installing a property with the same name. This can be useful at times,
834
+ e.g. to change the range of allowed values or the default value.
835
+ </p>
836
+ <div class="variablelist"><table border="0">
837
+ <col align="left" valign="top">
838
+ <tbody>
839
+ <tr>
840
+ <td><p><span class="term"><em class="parameter"><code>oclass</code></em> :</span></p></td>
841
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>
842
+ </td>
843
+ </tr>
844
+ <tr>
845
+ <td><p><span class="term"><em class="parameter"><code>property_id</code></em> :</span></p></td>
846
+ <td>the id for the new property
847
+ </td>
848
+ </tr>
849
+ <tr>
850
+ <td><p><span class="term"><em class="parameter"><code>pspec</code></em> :</span></p></td>
851
+ <td>the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> for the new property
852
+ </td>
853
+ </tr>
854
+ </tbody>
855
+ </table></div>
856
+ </div>
857
+ <hr>
858
+ <div class="refsect2">
859
+ <a name="g-object-class-install-properties"></a><h3>g_object_class_install_properties ()</h3>
860
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_class_install_properties (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a> *oclass</code></em>,
861
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_pspecs</code></em>,
862
+ <em class="parameter"><code><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> **pspecs</code></em>);</pre>
863
+ <p>
864
+ Installs new properties from an array of <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a>s. This is
865
+ usually done in the class initializer.
866
+ </p>
867
+ <p>
868
+ The property id of each property is the index of each <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> in
869
+ the <em class="parameter"><code>pspecs</code></em> array.
870
+ </p>
871
+ <p>
872
+ The property id of 0 is treated specially by <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> and it should not
873
+ be used to store a <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a>.
874
+ </p>
875
+ <p>
876
+ This function should be used if you plan to use a static array of
877
+ <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a>s and <code class="function">g_object_notify_pspec()</code>. For instance, this
878
+ class initialization:
879
+ </p>
880
+ <p>
881
+ </p>
882
+ <div class="informalexample">
883
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
884
+ <tbody>
885
+ <tr>
886
+ <td class="listing_lines" align="right"><pre>1
887
+ 2
888
+ 3
889
+ 4
890
+ 5
891
+ 6
892
+ 7
893
+ 8
894
+ 9
895
+ 10
896
+ 11
897
+ 12
898
+ 13
899
+ 14
900
+ 15
901
+ 16
902
+ 17
903
+ 18
904
+ 19
905
+ 20
906
+ 21
907
+ 22
908
+ 23
909
+ 24
910
+ 25
911
+ 26
912
+ 27
913
+ 28</pre></td>
914
+ <td class="listing_code"><pre class="programlisting"><span class="keyword">enum</span><span class="normal"> </span><span class="cbracket">{</span>
915
+ <span class="normal"> PROP_0</span><span class="symbol">,</span><span class="normal"> PROP_FOO</span><span class="symbol">,</span><span class="normal"> PROP_BAR</span><span class="symbol">,</span><span class="normal"> N_PROPERTIES</span>
916
+ <span class="cbracket">}</span><span class="symbol">;</span>
917
+
918
+ <span class="keyword">static</span><span class="normal"> </span><span class="usertype">GParamSpec</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">obj_properties</span><span class="symbol">[</span><span class="normal">N_PROPERTIES</span><span class="symbol">]</span><span class="normal"> </span><span class="symbol">=</span><span class="normal"> </span><span class="cbracket">{</span><span class="normal"> <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">,</span><span class="normal"> </span><span class="cbracket">}</span><span class="symbol">;</span>
919
+
920
+ <span class="keyword">static</span><span class="normal"> </span><span class="type">void</span>
921
+ <span class="function">my_object_class_init</span><span class="normal"> </span><span class="symbol">(</span><span class="usertype">MyObjectClass</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">klass</span><span class="symbol">)</span>
922
+ <span class="cbracket">{</span>
923
+ <span class="normal"> </span><span class="usertype">GObjectClass</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">gobject_class </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="gobject-The-Base-Object-Type.html#G-OBJECT-CLASS:CAPS">G_OBJECT_CLASS</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">klass</span><span class="symbol">);</span>
924
+
925
+ <span class="normal"> obj_properties</span><span class="symbol">[</span><span class="normal">PROP_FOO</span><span class="symbol">]</span><span class="normal"> </span><span class="symbol">=</span>
926
+ <span class="normal"> </span><span class="function"><a href="gobject-Standard-Parameter-and-Value-Types.html#g-param-spec-int">g_param_spec_int</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"foo"</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"Foo"</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"Foo"</span><span class="symbol">,</span>
927
+ <span class="normal"> </span><span class="symbol">-</span><span class="number">1</span><span class="symbol">,</span><span class="normal"> <a href="./../glib/glib/glib-Limits-of-Basic-Types.html#G-MAXINT:CAPS">G_MAXINT</a></span><span class="symbol">,</span>
928
+ <span class="normal"> </span><span class="number">0</span><span class="symbol">,</span>
929
+ <span class="normal"> <a href="gobject-GParamSpec.html#G-PARAM-READWRITE:CAPS">G_PARAM_READWRITE</a></span><span class="symbol">);</span>
930
+
931
+ <span class="normal"> obj_properties</span><span class="symbol">[</span><span class="normal">PROP_BAR</span><span class="symbol">]</span><span class="normal"> </span><span class="symbol">=</span>
932
+ <span class="normal"> </span><span class="function"><a href="gobject-Standard-Parameter-and-Value-Types.html#g-param-spec-string">g_param_spec_string</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"bar"</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"Bar"</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"Bar"</span><span class="symbol">,</span>
933
+ <span class="normal"> <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">,</span>
934
+ <span class="normal"> <a href="gobject-GParamSpec.html#G-PARAM-READWRITE:CAPS">G_PARAM_READWRITE</a></span><span class="symbol">);</span>
935
+
936
+ <span class="normal"> gobject_class</span><span class="symbol">-&gt;</span><span class="normal">set_property </span><span class="symbol">=</span><span class="normal"> my_object_set_property</span><span class="symbol">;</span>
937
+ <span class="normal"> gobject_class</span><span class="symbol">-&gt;</span><span class="normal">get_property </span><span class="symbol">=</span><span class="normal"> my_object_get_property</span><span class="symbol">;</span>
938
+ <span class="normal"> </span><span class="function"><a href="gobject-The-Base-Object-Type.html#g-object-class-install-properties">g_object_class_install_properties</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">gobject_class</span><span class="symbol">,</span>
939
+ <span class="normal"> N_PROPERTIES</span><span class="symbol">,</span>
940
+ <span class="normal"> obj_properties</span><span class="symbol">);</span>
941
+ <span class="cbracket">}</span></pre></td>
942
+ </tr>
943
+ </tbody>
944
+ </table>
945
+ </div>
946
+
947
+ <p>
948
+ </p>
949
+ <p>
950
+ allows calling <a class="link" href="gobject-The-Base-Object-Type.html#g-object-notify-by-pspec" title="g_object_notify_by_pspec ()"><code class="function">g_object_notify_by_pspec()</code></a> to notify of property changes:
951
+ </p>
952
+ <p>
953
+ </p>
954
+ <div class="informalexample">
955
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
956
+ <tbody>
957
+ <tr>
958
+ <td class="listing_lines" align="right"><pre>1
959
+ 2
960
+ 3
961
+ 4
962
+ 5
963
+ 6
964
+ 7
965
+ 8
966
+ 9</pre></td>
967
+ <td class="listing_code"><pre class="programlisting"><span class="type">void</span>
968
+ <span class="function">my_object_set_foo</span><span class="normal"> </span><span class="symbol">(</span><span class="usertype">MyObject</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">self</span><span class="symbol">,</span><span class="normal"> </span><span class="usertype">gint</span><span class="normal"> foo</span><span class="symbol">)</span>
969
+ <span class="cbracket">{</span>
970
+ <span class="normal"> </span><span class="keyword">if</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">self</span><span class="symbol">-&gt;</span><span class="normal">foo </span><span class="symbol">!=</span><span class="normal"> foo</span><span class="symbol">)</span>
971
+ <span class="normal"> </span><span class="cbracket">{</span>
972
+ <span class="normal"> self</span><span class="symbol">-&gt;</span><span class="normal">foo </span><span class="symbol">=</span><span class="normal"> foo</span><span class="symbol">;</span>
973
+ <span class="normal"> </span><span class="function"><a href="gobject-The-Base-Object-Type.html#g-object-notify-by-pspec">g_object_notify_by_pspec</a></span><span class="normal"> </span><span class="symbol">(</span><span class="function"><a href="gobject-The-Base-Object-Type.html#G-OBJECT:CAPS">G_OBJECT</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">self</span><span class="symbol">),</span><span class="normal"> obj_properties</span><span class="symbol">[</span><span class="normal">PROP_FOO</span><span class="symbol">]);</span>
974
+ <span class="normal"> </span><span class="cbracket">}</span>
975
+ <span class="normal"> </span><span class="cbracket">}</span></pre></td>
976
+ </tr>
977
+ </tbody>
978
+ </table>
979
+ </div>
980
+
981
+ <p>
982
+ </p>
983
+ <div class="variablelist"><table border="0">
984
+ <col align="left" valign="top">
985
+ <tbody>
986
+ <tr>
987
+ <td><p><span class="term"><em class="parameter"><code>oclass</code></em> :</span></p></td>
988
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>
989
+ </td>
990
+ </tr>
991
+ <tr>
992
+ <td><p><span class="term"><em class="parameter"><code>n_pspecs</code></em> :</span></p></td>
993
+ <td>the length of the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a>s array
994
+ </td>
995
+ </tr>
996
+ <tr>
997
+ <td><p><span class="term"><em class="parameter"><code>pspecs</code></em> :</span></p></td>
998
+ <td> the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a>s array
999
+ defining the new properties. <span class="annotation">[<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=n_pspecs]</span>
1000
+ </td>
1001
+ </tr>
1002
+ </tbody>
1003
+ </table></div>
1004
+ <p class="since">Since 2.26</p>
1005
+ </div>
1006
+ <hr>
1007
+ <div class="refsect2">
1008
+ <a name="g-object-class-find-property"></a><h3>g_object_class_find_property ()</h3>
1009
+ <pre class="programlisting"><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="returnvalue">GParamSpec</span></a> * g_object_class_find_property (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a> *oclass</code></em>,
1010
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>);</pre>
1011
+ <p>
1012
+ Looks up the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> for a property of a class.
1013
+ </p>
1014
+ <div class="variablelist"><table border="0">
1015
+ <col align="left" valign="top">
1016
+ <tbody>
1017
+ <tr>
1018
+ <td><p><span class="term"><em class="parameter"><code>oclass</code></em> :</span></p></td>
1019
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>
1020
+ </td>
1021
+ </tr>
1022
+ <tr>
1023
+ <td><p><span class="term"><em class="parameter"><code>property_name</code></em> :</span></p></td>
1024
+ <td>the name of the property to look up
1025
+ </td>
1026
+ </tr>
1027
+ <tr>
1028
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1029
+ <td> the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> for the property, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the class
1030
+ doesn't have a property of that name
1031
+ </td>
1032
+ </tr>
1033
+ </tbody>
1034
+ </table></div>
1035
+ </div>
1036
+ <hr>
1037
+ <div class="refsect2">
1038
+ <a name="g-object-class-list-properties"></a><h3>g_object_class_list_properties ()</h3>
1039
+ <pre class="programlisting"><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="returnvalue">GParamSpec</span></a> ** g_object_class_list_properties (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a> *oclass</code></em>,
1040
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *n_properties</code></em>);</pre>
1041
+ <p>
1042
+ Get an array of <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a>* for all properties of a class.
1043
+ </p>
1044
+ <div class="variablelist"><table border="0">
1045
+ <col align="left" valign="top">
1046
+ <tbody>
1047
+ <tr>
1048
+ <td><p><span class="term"><em class="parameter"><code>oclass</code></em> :</span></p></td>
1049
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>
1050
+ </td>
1051
+ </tr>
1052
+ <tr>
1053
+ <td><p><span class="term"><em class="parameter"><code>n_properties</code></em> :</span></p></td>
1054
+ <td>return location for the length of the returned array
1055
+ </td>
1056
+ </tr>
1057
+ <tr>
1058
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1059
+ <td> an array of <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a>* which should be freed after use
1060
+ </td>
1061
+ </tr>
1062
+ </tbody>
1063
+ </table></div>
1064
+ </div>
1065
+ <hr>
1066
+ <div class="refsect2">
1067
+ <a name="g-object-class-override-property"></a><h3>g_object_class_override_property ()</h3>
1068
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_class_override_property (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a> *oclass</code></em>,
1069
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> property_id</code></em>,
1070
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *name</code></em>);</pre>
1071
+ <p>
1072
+ Registers <em class="parameter"><code>property_id</code></em> as referring to a property with the
1073
+ name <em class="parameter"><code>name</code></em> in a parent class or in an interface implemented
1074
+ by <em class="parameter"><code>oclass</code></em>. This allows this class to <em class="firstterm">override</em>
1075
+ a property implementation in a parent class or to provide
1076
+ the implementation of a property from an interface.
1077
+ </p>
1078
+ <p>
1079
+ </p>
1080
+ <div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
1081
+ <h3 class="title">Note</h3>
1082
+ Internally, overriding is implemented by creating a property of type
1083
+ <a class="link" href="gobject-Standard-Parameter-and-Value-Types.html#GParamSpecOverride" title="GParamSpecOverride"><span class="type">GParamSpecOverride</span></a>; generally operations that query the properties of
1084
+ the object class, such as <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-find-property" title="g_object_class_find_property ()"><code class="function">g_object_class_find_property()</code></a> or
1085
+ <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-list-properties" title="g_object_class_list_properties ()"><code class="function">g_object_class_list_properties()</code></a> will return the overridden
1086
+ property. However, in one case, the <em class="parameter"><code>construct_properties</code></em> argument of
1087
+ the <em class="parameter"><code>constructor</code></em> virtual function, the <a class="link" href="gobject-Standard-Parameter-and-Value-Types.html#GParamSpecOverride" title="GParamSpecOverride"><span class="type">GParamSpecOverride</span></a> is passed
1088
+ instead, so that the <em class="parameter"><code>param_id</code></em> field of the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> will be
1089
+ correct. For virtually all uses, this makes no difference. If you
1090
+ need to get the overridden property, you can call
1091
+ <a class="link" href="gobject-GParamSpec.html#g-param-spec-get-redirect-target" title="g_param_spec_get_redirect_target ()"><code class="function">g_param_spec_get_redirect_target()</code></a>.
1092
+ </div>
1093
+ <p>
1094
+ </p>
1095
+ <div class="variablelist"><table border="0">
1096
+ <col align="left" valign="top">
1097
+ <tbody>
1098
+ <tr>
1099
+ <td><p><span class="term"><em class="parameter"><code>oclass</code></em> :</span></p></td>
1100
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObjectClass" title="GObjectClass"><span class="type">GObjectClass</span></a>
1101
+ </td>
1102
+ </tr>
1103
+ <tr>
1104
+ <td><p><span class="term"><em class="parameter"><code>property_id</code></em> :</span></p></td>
1105
+ <td>the new property ID
1106
+ </td>
1107
+ </tr>
1108
+ <tr>
1109
+ <td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
1110
+ <td>the name of a property registered in a parent class or
1111
+ in an interface of this class.
1112
+ </td>
1113
+ </tr>
1114
+ </tbody>
1115
+ </table></div>
1116
+ <p class="since">Since 2.4</p>
1117
+ </div>
1118
+ <hr>
1119
+ <div class="refsect2">
1120
+ <a name="g-object-interface-install-property"></a><h3>g_object_interface_install_property ()</h3>
1121
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_interface_install_property (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> g_iface</code></em>,
1122
+ <em class="parameter"><code><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> *pspec</code></em>);</pre>
1123
+ <p>
1124
+ Add a property to an interface; this is only useful for interfaces
1125
+ that are added to GObject-derived types. Adding a property to an
1126
+ interface forces all objects classes with that interface to have a
1127
+ compatible property. The compatible property could be a newly
1128
+ created <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a>, but normally
1129
+ <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-override-property" title="g_object_class_override_property ()"><code class="function">g_object_class_override_property()</code></a> will be used so that the object
1130
+ class only needs to provide an implementation and inherits the
1131
+ property description, default value, bounds, and so forth from the
1132
+ interface property.
1133
+ </p>
1134
+ <p>
1135
+ This function is meant to be called from the interface's default
1136
+ vtable initialization function (the <em class="parameter"><code>class_init</code></em> member of
1137
+ <a class="link" href="gobject-Type-Information.html#GTypeInfo" title="GTypeInfo"><span class="type">GTypeInfo</span></a>.) It must not be called after after <em class="parameter"><code>class_init</code></em> has
1138
+ been called for any object types implementing this interface.
1139
+ </p>
1140
+ <div class="variablelist"><table border="0">
1141
+ <col align="left" valign="top">
1142
+ <tbody>
1143
+ <tr>
1144
+ <td><p><span class="term"><em class="parameter"><code>g_iface</code></em> :</span></p></td>
1145
+ <td>any interface vtable for the interface, or the default
1146
+ vtable for the interface.
1147
+ </td>
1148
+ </tr>
1149
+ <tr>
1150
+ <td><p><span class="term"><em class="parameter"><code>pspec</code></em> :</span></p></td>
1151
+ <td>the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> for the new property
1152
+ </td>
1153
+ </tr>
1154
+ </tbody>
1155
+ </table></div>
1156
+ <p class="since">Since 2.4</p>
1157
+ </div>
1158
+ <hr>
1159
+ <div class="refsect2">
1160
+ <a name="g-object-interface-find-property"></a><h3>g_object_interface_find_property ()</h3>
1161
+ <pre class="programlisting"><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="returnvalue">GParamSpec</span></a> * g_object_interface_find_property (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> g_iface</code></em>,
1162
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>);</pre>
1163
+ <p>
1164
+ Find the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> with the given name for an
1165
+ interface. Generally, the interface vtable passed in as <em class="parameter"><code>g_iface</code></em>
1166
+ will be the default vtable from <a class="link" href="gobject-Type-Information.html#g-type-default-interface-ref" title="g_type_default_interface_ref ()"><code class="function">g_type_default_interface_ref()</code></a>, or,
1167
+ if you know the interface has already been loaded,
1168
+ <a class="link" href="gobject-Type-Information.html#g-type-default-interface-peek" title="g_type_default_interface_peek ()"><code class="function">g_type_default_interface_peek()</code></a>.
1169
+ </p>
1170
+ <div class="variablelist"><table border="0">
1171
+ <col align="left" valign="top">
1172
+ <tbody>
1173
+ <tr>
1174
+ <td><p><span class="term"><em class="parameter"><code>g_iface</code></em> :</span></p></td>
1175
+ <td>any interface vtable for the interface, or the default
1176
+ vtable for the interface
1177
+ </td>
1178
+ </tr>
1179
+ <tr>
1180
+ <td><p><span class="term"><em class="parameter"><code>property_name</code></em> :</span></p></td>
1181
+ <td>name of a property to lookup.
1182
+ </td>
1183
+ </tr>
1184
+ <tr>
1185
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1186
+ <td> the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> for the property of the interface with the
1187
+ name <em class="parameter"><code>property_name</code></em>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no such property exists.
1188
+ </td>
1189
+ </tr>
1190
+ </tbody>
1191
+ </table></div>
1192
+ <p class="since">Since 2.4</p>
1193
+ </div>
1194
+ <hr>
1195
+ <div class="refsect2">
1196
+ <a name="g-object-interface-list-properties"></a><h3>g_object_interface_list_properties ()</h3>
1197
+ <pre class="programlisting"><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="returnvalue">GParamSpec</span></a> ** g_object_interface_list_properties (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> g_iface</code></em>,
1198
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> *n_properties_p</code></em>);</pre>
1199
+ <p>
1200
+ Lists the properties of an interface.Generally, the interface
1201
+ vtable passed in as <em class="parameter"><code>g_iface</code></em> will be the default vtable from
1202
+ <a class="link" href="gobject-Type-Information.html#g-type-default-interface-ref" title="g_type_default_interface_ref ()"><code class="function">g_type_default_interface_ref()</code></a>, or, if you know the interface has
1203
+ already been loaded, <a class="link" href="gobject-Type-Information.html#g-type-default-interface-peek" title="g_type_default_interface_peek ()"><code class="function">g_type_default_interface_peek()</code></a>.
1204
+ </p>
1205
+ <div class="variablelist"><table border="0">
1206
+ <col align="left" valign="top">
1207
+ <tbody>
1208
+ <tr>
1209
+ <td><p><span class="term"><em class="parameter"><code>g_iface</code></em> :</span></p></td>
1210
+ <td>any interface vtable for the interface, or the default
1211
+ vtable for the interface
1212
+ </td>
1213
+ </tr>
1214
+ <tr>
1215
+ <td><p><span class="term"><em class="parameter"><code>n_properties_p</code></em> :</span></p></td>
1216
+ <td>location to store number of properties returned.
1217
+ </td>
1218
+ </tr>
1219
+ <tr>
1220
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1221
+ <td> a pointer to an array of pointers to <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a>
1222
+ structures. The paramspecs are owned by GLib, but the
1223
+ array should be freed with <a href="./../glib/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when you are done with
1224
+ it.
1225
+ </td>
1226
+ </tr>
1227
+ </tbody>
1228
+ </table></div>
1229
+ <p class="since">Since 2.4</p>
1230
+ </div>
1231
+ <hr>
1232
+ <div class="refsect2">
1233
+ <a name="g-object-new"></a><h3>g_object_new ()</h3>
1234
+ <pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> g_object_new (<em class="parameter"><code><a class="link" href="gobject-Type-Information.html#GType" title="GType"><span class="type">GType</span></a> object_type</code></em>,
1235
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
1236
+ <em class="parameter"><code>...</code></em>);</pre>
1237
+ <p>
1238
+ Creates a new instance of a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> subtype and sets its properties.
1239
+ </p>
1240
+ <p>
1241
+ Construction parameters (see <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT:CAPS"><span class="type">G_PARAM_CONSTRUCT</span></a>, <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT-ONLY:CAPS"><span class="type">G_PARAM_CONSTRUCT_ONLY</span></a>)
1242
+ which are not explicitly specified are set to their default values.
1243
+ </p>
1244
+ <div class="variablelist"><table border="0">
1245
+ <col align="left" valign="top">
1246
+ <tbody>
1247
+ <tr>
1248
+ <td><p><span class="term"><em class="parameter"><code>object_type</code></em> :</span></p></td>
1249
+ <td>the type id of the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> subtype to instantiate
1250
+ </td>
1251
+ </tr>
1252
+ <tr>
1253
+ <td><p><span class="term"><em class="parameter"><code>first_property_name</code></em> :</span></p></td>
1254
+ <td>the name of the first property
1255
+ </td>
1256
+ </tr>
1257
+ <tr>
1258
+ <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
1259
+ <td>the value of the first property, followed optionally by more
1260
+ name/value pairs, followed by <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1261
+ </td>
1262
+ </tr>
1263
+ <tr>
1264
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1265
+ <td> a new instance of <em class="parameter"><code>object_type</code></em>
1266
+ </td>
1267
+ </tr>
1268
+ </tbody>
1269
+ </table></div>
1270
+ </div>
1271
+ <hr>
1272
+ <div class="refsect2">
1273
+ <a name="g-object-newv"></a><h3>g_object_newv ()</h3>
1274
+ <pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> g_object_newv (<em class="parameter"><code><a class="link" href="gobject-Type-Information.html#GType" title="GType"><span class="type">GType</span></a> object_type</code></em>,
1275
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="type">guint</span></a> n_parameters</code></em>,
1276
+ <em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GParameter" title="GParameter"><span class="type">GParameter</span></a> *parameters</code></em>);</pre>
1277
+ <p>
1278
+ Creates a new instance of a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> subtype and sets its properties.
1279
+ </p>
1280
+ <p>
1281
+ Construction parameters (see <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT:CAPS"><span class="type">G_PARAM_CONSTRUCT</span></a>, <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT-ONLY:CAPS"><span class="type">G_PARAM_CONSTRUCT_ONLY</span></a>)
1282
+ which are not explicitly specified are set to their default values.
1283
+ </p>
1284
+ <div class="variablelist"><table border="0">
1285
+ <col align="left" valign="top">
1286
+ <tbody>
1287
+ <tr>
1288
+ <td><p><span class="term"><em class="parameter"><code>object_type</code></em> :</span></p></td>
1289
+ <td>the type id of the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> subtype to instantiate
1290
+ </td>
1291
+ </tr>
1292
+ <tr>
1293
+ <td><p><span class="term"><em class="parameter"><code>n_parameters</code></em> :</span></p></td>
1294
+ <td>the length of the <em class="parameter"><code>parameters</code></em> array
1295
+ </td>
1296
+ </tr>
1297
+ <tr>
1298
+ <td><p><span class="term"><em class="parameter"><code>parameters</code></em> :</span></p></td>
1299
+ <td>an array of <a class="link" href="gobject-The-Base-Object-Type.html#GParameter" title="GParameter"><span class="type">GParameter</span></a>
1300
+ </td>
1301
+ </tr>
1302
+ <tr>
1303
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1304
+ <td> a new instance of <em class="parameter"><code>object_type</code></em>
1305
+ </td>
1306
+ </tr>
1307
+ </tbody>
1308
+ </table></div>
1309
+ </div>
1310
+ <hr>
1311
+ <div class="refsect2">
1312
+ <a name="GParameter"></a><h3>GParameter</h3>
1313
+ <pre class="programlisting">typedef struct {
1314
+ const gchar *name;
1315
+ GValue value;
1316
+ } GParameter;
1317
+ </pre>
1318
+ <p>
1319
+ The <span class="structname">GParameter</span> struct is an auxiliary structure used
1320
+ to hand parameter name/value pairs to <a class="link" href="gobject-The-Base-Object-Type.html#g-object-newv" title="g_object_newv ()"><code class="function">g_object_newv()</code></a>.
1321
+ </p>
1322
+ <div class="variablelist"><table border="0">
1323
+ <col align="left" valign="top">
1324
+ <tbody>
1325
+ <tr>
1326
+ <td><p><span class="term">const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="GParameter.name"></a>name</code></em>;</span></p></td>
1327
+ <td>the parameter name
1328
+ </td>
1329
+ </tr>
1330
+ <tr>
1331
+ <td><p><span class="term"><a class="link" href="gobject-Generic-values.html#GValue" title="GValue"><span class="type">GValue</span></a> <em class="structfield"><code><a name="GParameter.value"></a>value</code></em>;</span></p></td>
1332
+ <td>the parameter value
1333
+ </td>
1334
+ </tr>
1335
+ </tbody>
1336
+ </table></div>
1337
+ </div>
1338
+ <hr>
1339
+ <div class="refsect2">
1340
+ <a name="g-object-ref"></a><h3>g_object_ref ()</h3>
1341
+ <pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> g_object_ref (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>);</pre>
1342
+ <p>
1343
+ Increases the reference count of <em class="parameter"><code>object</code></em>.
1344
+ </p>
1345
+ <div class="variablelist"><table border="0">
1346
+ <col align="left" valign="top">
1347
+ <tbody>
1348
+ <tr>
1349
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
1350
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1351
+ </td>
1352
+ </tr>
1353
+ <tr>
1354
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1355
+ <td> the same <em class="parameter"><code>object</code></em>
1356
+ </td>
1357
+ </tr>
1358
+ </tbody>
1359
+ </table></div>
1360
+ </div>
1361
+ <hr>
1362
+ <div class="refsect2">
1363
+ <a name="g-object-unref"></a><h3>g_object_unref ()</h3>
1364
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_unref (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>);</pre>
1365
+ <p>
1366
+ Decreases the reference count of <em class="parameter"><code>object</code></em>. When its reference count
1367
+ drops to 0, the object is finalized (i.e. its memory is freed).
1368
+ </p>
1369
+ <div class="variablelist"><table border="0">
1370
+ <col align="left" valign="top">
1371
+ <tbody><tr>
1372
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
1373
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1374
+ </td>
1375
+ </tr></tbody>
1376
+ </table></div>
1377
+ </div>
1378
+ <hr>
1379
+ <div class="refsect2">
1380
+ <a name="g-object-ref-sink"></a><h3>g_object_ref_sink ()</h3>
1381
+ <pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> g_object_ref_sink (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>);</pre>
1382
+ <p>
1383
+ Increase the reference count of <em class="parameter"><code>object</code></em>, and possibly remove the
1384
+ <a class="link" href="gobject-The-Base-Object-Type.html#floating-ref">floating</a> reference, if <em class="parameter"><code>object</code></em>
1385
+ has a floating reference.
1386
+ </p>
1387
+ <p>
1388
+ In other words, if the object is floating, then this call "assumes
1389
+ ownership" of the floating reference, converting it to a normal
1390
+ reference by clearing the floating flag while leaving the reference
1391
+ count unchanged. If the object is not floating, then this call
1392
+ adds a new normal reference increasing the reference count by one.
1393
+ </p>
1394
+ <div class="variablelist"><table border="0">
1395
+ <col align="left" valign="top">
1396
+ <tbody>
1397
+ <tr>
1398
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
1399
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1400
+ </td>
1401
+ </tr>
1402
+ <tr>
1403
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1404
+ <td> <em class="parameter"><code>object</code></em>
1405
+ </td>
1406
+ </tr>
1407
+ </tbody>
1408
+ </table></div>
1409
+ <p class="since">Since 2.10</p>
1410
+ </div>
1411
+ <hr>
1412
+ <div class="refsect2">
1413
+ <a name="GInitiallyUnowned"></a><h3>GInitiallyUnowned</h3>
1414
+ <pre class="programlisting">typedef struct _GObject GInitiallyUnowned;
1415
+ </pre>
1416
+ <p>
1417
+ All the fields in the <span class="structname">GInitiallyUnowned</span> structure
1418
+ are private to the <a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned" title="GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a> implementation and should never be
1419
+ accessed directly.
1420
+ </p>
1421
+ </div>
1422
+ <hr>
1423
+ <div class="refsect2">
1424
+ <a name="GInitiallyUnownedClass"></a><h3>GInitiallyUnownedClass</h3>
1425
+ <pre class="programlisting">typedef struct _GObjectClass GInitiallyUnownedClass;
1426
+ </pre>
1427
+ <p>
1428
+ The class structure for the <span class="structname">GInitiallyUnowned</span> type.
1429
+ </p>
1430
+ </div>
1431
+ <hr>
1432
+ <div class="refsect2">
1433
+ <a name="G-TYPE-INITIALLY-UNOWNED:CAPS"></a><h3>G_TYPE_INITIALLY_UNOWNED</h3>
1434
+ <pre class="programlisting">#define G_TYPE_INITIALLY_UNOWNED (g_initially_unowned_get_type())
1435
+ </pre>
1436
+ <p>
1437
+ The type for <a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned" title="GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a>.
1438
+ </p>
1439
+ </div>
1440
+ <hr>
1441
+ <div class="refsect2">
1442
+ <a name="g-object-is-floating"></a><h3>g_object_is_floating ()</h3>
1443
+ <pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> g_object_is_floating (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>);</pre>
1444
+ <p>
1445
+ Checks wether <em class="parameter"><code>object</code></em> has a <a class="link" href="gobject-The-Base-Object-Type.html#floating-ref">floating</a>
1446
+ reference.
1447
+ </p>
1448
+ <div class="variablelist"><table border="0">
1449
+ <col align="left" valign="top">
1450
+ <tbody>
1451
+ <tr>
1452
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
1453
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1454
+ </td>
1455
+ </tr>
1456
+ <tr>
1457
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1458
+ <td> <a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>object</code></em> has a floating reference
1459
+ </td>
1460
+ </tr>
1461
+ </tbody>
1462
+ </table></div>
1463
+ <p class="since">Since 2.10</p>
1464
+ </div>
1465
+ <hr>
1466
+ <div class="refsect2">
1467
+ <a name="g-object-force-floating"></a><h3>g_object_force_floating ()</h3>
1468
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_force_floating (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>);</pre>
1469
+ <p>
1470
+ This function is intended for <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> implementations to re-enforce a
1471
+ <a class="link" href="gobject-The-Base-Object-Type.html#floating-ref">floating</a> object reference.
1472
+ Doing this is seldomly required, all
1473
+ <a class="link" href="gobject-The-Base-Object-Type.html#GInitiallyUnowned" title="GInitiallyUnowned"><span class="type">GInitiallyUnowned</span></a>s are created with a floating reference which
1474
+ usually just needs to be sunken by calling <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref-sink" title="g_object_ref_sink ()"><code class="function">g_object_ref_sink()</code></a>.
1475
+ </p>
1476
+ <div class="variablelist"><table border="0">
1477
+ <col align="left" valign="top">
1478
+ <tbody><tr>
1479
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
1480
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1481
+ </td>
1482
+ </tr></tbody>
1483
+ </table></div>
1484
+ <p class="since">Since 2.10</p>
1485
+ </div>
1486
+ <hr>
1487
+ <div class="refsect2">
1488
+ <a name="GWeakNotify"></a><h3>GWeakNotify ()</h3>
1489
+ <pre class="programlisting"><span class="returnvalue">void</span> (*GWeakNotify) (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
1490
+ <em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *where_the_object_was</code></em>);</pre>
1491
+ <p>
1492
+ A <a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify" title="GWeakNotify ()"><span class="type">GWeakNotify</span></a> function can be added to an object as a callback that gets
1493
+ triggered when the object is finalized. Since the object is already being
1494
+ finalized when the <a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify" title="GWeakNotify ()"><span class="type">GWeakNotify</span></a> is called, there's not much you could do
1495
+ with the object, apart from e.g. using its adress as hash-index or the like.
1496
+ </p>
1497
+ <div class="variablelist"><table border="0">
1498
+ <col align="left" valign="top">
1499
+ <tbody>
1500
+ <tr>
1501
+ <td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
1502
+ <td>data that was provided when the weak reference was established
1503
+ </td>
1504
+ </tr>
1505
+ <tr>
1506
+ <td><p><span class="term"><em class="parameter"><code>where_the_object_was</code></em> :</span></p></td>
1507
+ <td>the object being finalized
1508
+ </td>
1509
+ </tr>
1510
+ </tbody>
1511
+ </table></div>
1512
+ </div>
1513
+ <hr>
1514
+ <div class="refsect2">
1515
+ <a name="g-object-weak-ref"></a><h3>g_object_weak_ref ()</h3>
1516
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_weak_ref (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
1517
+ <em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify" title="GWeakNotify ()"><span class="type">GWeakNotify</span></a> notify</code></em>,
1518
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
1519
+ <p>
1520
+ Adds a weak reference callback to an object. Weak references are
1521
+ used for notification when an object is finalized. They are called
1522
+ "weak references" because they allow you to safely hold a pointer
1523
+ to an object without calling <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref" title="g_object_ref ()"><code class="function">g_object_ref()</code></a> (<a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref" title="g_object_ref ()"><code class="function">g_object_ref()</code></a> adds a
1524
+ strong reference, that is, forces the object to stay alive).
1525
+ </p>
1526
+ <div class="variablelist"><table border="0">
1527
+ <col align="left" valign="top">
1528
+ <tbody>
1529
+ <tr>
1530
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
1531
+ <td>
1532
+ <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> to reference weakly
1533
+ </td>
1534
+ </tr>
1535
+ <tr>
1536
+ <td><p><span class="term"><em class="parameter"><code>notify</code></em> :</span></p></td>
1537
+ <td>callback to invoke before the object is freed
1538
+ </td>
1539
+ </tr>
1540
+ <tr>
1541
+ <td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
1542
+ <td>extra data to pass to notify
1543
+ </td>
1544
+ </tr>
1545
+ </tbody>
1546
+ </table></div>
1547
+ </div>
1548
+ <hr>
1549
+ <div class="refsect2">
1550
+ <a name="g-object-weak-unref"></a><h3>g_object_weak_unref ()</h3>
1551
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_weak_unref (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
1552
+ <em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GWeakNotify" title="GWeakNotify ()"><span class="type">GWeakNotify</span></a> notify</code></em>,
1553
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
1554
+ <p>
1555
+ Removes a weak reference callback to an object.
1556
+ </p>
1557
+ <div class="variablelist"><table border="0">
1558
+ <col align="left" valign="top">
1559
+ <tbody>
1560
+ <tr>
1561
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
1562
+ <td>
1563
+ <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> to remove a weak reference from
1564
+ </td>
1565
+ </tr>
1566
+ <tr>
1567
+ <td><p><span class="term"><em class="parameter"><code>notify</code></em> :</span></p></td>
1568
+ <td>callback to search for
1569
+ </td>
1570
+ </tr>
1571
+ <tr>
1572
+ <td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
1573
+ <td>data to search for
1574
+ </td>
1575
+ </tr>
1576
+ </tbody>
1577
+ </table></div>
1578
+ </div>
1579
+ <hr>
1580
+ <div class="refsect2">
1581
+ <a name="g-object-add-weak-pointer"></a><h3>g_object_add_weak_pointer ()</h3>
1582
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_add_weak_pointer (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
1583
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> *weak_pointer_location</code></em>);</pre>
1584
+ <p>
1585
+ Adds a weak reference from weak_pointer to <em class="parameter"><code>object</code></em> to indicate that
1586
+ the pointer located at <em class="parameter"><code>weak_pointer_location</code></em> is only valid during
1587
+ the lifetime of <em class="parameter"><code>object</code></em>. When the <em class="parameter"><code>object</code></em> is finalized,
1588
+ <em class="parameter"><code>weak_pointer</code></em> will be set to <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
1589
+ </p>
1590
+ <div class="variablelist"><table border="0">
1591
+ <col align="left" valign="top">
1592
+ <tbody>
1593
+ <tr>
1594
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
1595
+ <td>The object that should be weak referenced.
1596
+ </td>
1597
+ </tr>
1598
+ <tr>
1599
+ <td><p><span class="term"><em class="parameter"><code>weak_pointer_location</code></em> :</span></p></td>
1600
+ <td>The memory address of a pointer.
1601
+ </td>
1602
+ </tr>
1603
+ </tbody>
1604
+ </table></div>
1605
+ </div>
1606
+ <hr>
1607
+ <div class="refsect2">
1608
+ <a name="g-object-remove-weak-pointer"></a><h3>g_object_remove_weak_pointer ()</h3>
1609
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_remove_weak_pointer (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
1610
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> *weak_pointer_location</code></em>);</pre>
1611
+ <p>
1612
+ Removes a weak reference from <em class="parameter"><code>object</code></em> that was previously added
1613
+ using <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-weak-pointer" title="g_object_add_weak_pointer ()"><code class="function">g_object_add_weak_pointer()</code></a>. The <em class="parameter"><code>weak_pointer_location</code></em> has
1614
+ to match the one used with <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-weak-pointer" title="g_object_add_weak_pointer ()"><code class="function">g_object_add_weak_pointer()</code></a>.
1615
+ </p>
1616
+ <div class="variablelist"><table border="0">
1617
+ <col align="left" valign="top">
1618
+ <tbody>
1619
+ <tr>
1620
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
1621
+ <td>The object that is weak referenced.
1622
+ </td>
1623
+ </tr>
1624
+ <tr>
1625
+ <td><p><span class="term"><em class="parameter"><code>weak_pointer_location</code></em> :</span></p></td>
1626
+ <td>The memory address of a pointer.
1627
+ </td>
1628
+ </tr>
1629
+ </tbody>
1630
+ </table></div>
1631
+ </div>
1632
+ <hr>
1633
+ <div class="refsect2">
1634
+ <a name="GToggleNotify"></a><h3>GToggleNotify ()</h3>
1635
+ <pre class="programlisting"><span class="returnvalue">void</span> (*GToggleNotify) (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
1636
+ <em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
1637
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> is_last_ref</code></em>);</pre>
1638
+ <p>
1639
+ A callback function used for notification when the state
1640
+ of a toggle reference changes. See <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref" title="g_object_add_toggle_ref ()"><code class="function">g_object_add_toggle_ref()</code></a>.
1641
+ </p>
1642
+ <div class="variablelist"><table border="0">
1643
+ <col align="left" valign="top">
1644
+ <tbody>
1645
+ <tr>
1646
+ <td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
1647
+ <td>Callback data passed to <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref" title="g_object_add_toggle_ref ()"><code class="function">g_object_add_toggle_ref()</code></a>
1648
+ </td>
1649
+ </tr>
1650
+ <tr>
1651
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
1652
+ <td>The object on which <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref" title="g_object_add_toggle_ref ()"><code class="function">g_object_add_toggle_ref()</code></a> was called.
1653
+ </td>
1654
+ </tr>
1655
+ <tr>
1656
+ <td><p><span class="term"><em class="parameter"><code>is_last_ref</code></em> :</span></p></td>
1657
+ <td>
1658
+ <a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the toggle reference is now the
1659
+ last reference to the object. <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if the toggle
1660
+ reference was the last reference and there are now other
1661
+ references.
1662
+ </td>
1663
+ </tr>
1664
+ </tbody>
1665
+ </table></div>
1666
+ </div>
1667
+ <hr>
1668
+ <div class="refsect2">
1669
+ <a name="g-object-add-toggle-ref"></a><h3>g_object_add_toggle_ref ()</h3>
1670
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_add_toggle_ref (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
1671
+ <em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GToggleNotify" title="GToggleNotify ()"><span class="type">GToggleNotify</span></a> notify</code></em>,
1672
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
1673
+ <p>
1674
+ Increases the reference count of the object by one and sets a
1675
+ callback to be called when all other references to the object are
1676
+ dropped, or when this is already the last reference to the object
1677
+ and another reference is established.
1678
+ </p>
1679
+ <p>
1680
+ This functionality is intended for binding <em class="parameter"><code>object</code></em> to a proxy
1681
+ object managed by another memory manager. This is done with two
1682
+ paired references: the strong reference added by
1683
+ <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref" title="g_object_add_toggle_ref ()"><code class="function">g_object_add_toggle_ref()</code></a> and a reverse reference to the proxy
1684
+ object which is either a strong reference or weak reference.
1685
+ </p>
1686
+ <p>
1687
+ The setup is that when there are no other references to <em class="parameter"><code>object</code></em>,
1688
+ only a weak reference is held in the reverse direction from <em class="parameter"><code>object</code></em>
1689
+ to the proxy object, but when there are other references held to
1690
+ <em class="parameter"><code>object</code></em>, a strong reference is held. The <em class="parameter"><code>notify</code></em> callback is called
1691
+ when the reference from <em class="parameter"><code>object</code></em> to the proxy object should be
1692
+ <em class="firstterm">toggled</em> from strong to weak (<em class="parameter"><code>is_last_ref</code></em>
1693
+ true) or weak to strong (<em class="parameter"><code>is_last_ref</code></em> false).
1694
+ </p>
1695
+ <p>
1696
+ Since a (normal) reference must be held to the object before
1697
+ calling <code class="function">g_object_toggle_ref()</code>, the initial state of the reverse
1698
+ link is always strong.
1699
+ </p>
1700
+ <p>
1701
+ Multiple toggle references may be added to the same gobject,
1702
+ however if there are multiple toggle references to an object, none
1703
+ of them will ever be notified until all but one are removed. For
1704
+ this reason, you should only ever use a toggle reference if there
1705
+ is important state in the proxy object.
1706
+ </p>
1707
+ <div class="variablelist"><table border="0">
1708
+ <col align="left" valign="top">
1709
+ <tbody>
1710
+ <tr>
1711
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
1712
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1713
+ </td>
1714
+ </tr>
1715
+ <tr>
1716
+ <td><p><span class="term"><em class="parameter"><code>notify</code></em> :</span></p></td>
1717
+ <td>a function to call when this reference is the
1718
+ last reference to the object, or is no longer
1719
+ the last reference.
1720
+ </td>
1721
+ </tr>
1722
+ <tr>
1723
+ <td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
1724
+ <td>data to pass to <em class="parameter"><code>notify</code></em>
1725
+ </td>
1726
+ </tr>
1727
+ </tbody>
1728
+ </table></div>
1729
+ <p class="since">Since 2.8</p>
1730
+ </div>
1731
+ <hr>
1732
+ <div class="refsect2">
1733
+ <a name="g-object-remove-toggle-ref"></a><h3>g_object_remove_toggle_ref ()</h3>
1734
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_remove_toggle_ref (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
1735
+ <em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GToggleNotify" title="GToggleNotify ()"><span class="type">GToggleNotify</span></a> notify</code></em>,
1736
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
1737
+ <p>
1738
+ Removes a reference added with <a class="link" href="gobject-The-Base-Object-Type.html#g-object-add-toggle-ref" title="g_object_add_toggle_ref ()"><code class="function">g_object_add_toggle_ref()</code></a>. The
1739
+ reference count of the object is decreased by one.
1740
+ </p>
1741
+ <div class="variablelist"><table border="0">
1742
+ <col align="left" valign="top">
1743
+ <tbody>
1744
+ <tr>
1745
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
1746
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1747
+ </td>
1748
+ </tr>
1749
+ <tr>
1750
+ <td><p><span class="term"><em class="parameter"><code>notify</code></em> :</span></p></td>
1751
+ <td>a function to call when this reference is the
1752
+ last reference to the object, or is no longer
1753
+ the last reference.
1754
+ </td>
1755
+ </tr>
1756
+ <tr>
1757
+ <td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
1758
+ <td>data to pass to <em class="parameter"><code>notify</code></em>
1759
+ </td>
1760
+ </tr>
1761
+ </tbody>
1762
+ </table></div>
1763
+ <p class="since">Since 2.8</p>
1764
+ </div>
1765
+ <hr>
1766
+ <div class="refsect2">
1767
+ <a name="g-object-connect"></a><h3>g_object_connect ()</h3>
1768
+ <pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> g_object_connect (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>,
1769
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *signal_spec</code></em>,
1770
+ <em class="parameter"><code>...</code></em>);</pre>
1771
+ <p>
1772
+ A convenience function to connect multiple signals at once.
1773
+ </p>
1774
+ <p>
1775
+ The signal specs expected by this function have the form
1776
+ "modifier::signal_name", where modifier can be one of the following:
1777
+ </p>
1778
+ <div class="variablelist"><table border="0">
1779
+ <col align="left" valign="top">
1780
+ <tbody>
1781
+ <tr>
1782
+ <td><p><span class="term">signal</span></p></td>
1783
+ <td><p>
1784
+ equivalent to <code class="literal">g_signal_connect_data (..., NULL, 0)</code>
1785
+ </p></td>
1786
+ </tr>
1787
+ <tr>
1788
+ <td><p><span class="term">object_signal, </span><span class="term">object-signal</span></p></td>
1789
+ <td><p>
1790
+ equivalent to <code class="literal">g_signal_connect_object (..., 0)</code>
1791
+ </p></td>
1792
+ </tr>
1793
+ <tr>
1794
+ <td><p><span class="term">swapped_signal, </span><span class="term">swapped-signal</span></p></td>
1795
+ <td><p>
1796
+ equivalent to <code class="literal">g_signal_connect_data (..., NULL, G_CONNECT_SWAPPED)</code>
1797
+ </p></td>
1798
+ </tr>
1799
+ <tr>
1800
+ <td><p><span class="term">swapped_object_signal, </span><span class="term">swapped-object-signal</span></p></td>
1801
+ <td><p>
1802
+ equivalent to <code class="literal">g_signal_connect_object (..., G_CONNECT_SWAPPED)</code>
1803
+ </p></td>
1804
+ </tr>
1805
+ <tr>
1806
+ <td><p><span class="term">signal_after, </span><span class="term">signal-after</span></p></td>
1807
+ <td><p>
1808
+ equivalent to <code class="literal">g_signal_connect_data (..., NULL, G_CONNECT_AFTER)</code>
1809
+ </p></td>
1810
+ </tr>
1811
+ <tr>
1812
+ <td><p><span class="term">object_signal_after, </span><span class="term">object-signal-after</span></p></td>
1813
+ <td><p>
1814
+ equivalent to <code class="literal">g_signal_connect_object (..., G_CONNECT_AFTER)</code>
1815
+ </p></td>
1816
+ </tr>
1817
+ <tr>
1818
+ <td><p><span class="term">swapped_signal_after, </span><span class="term">swapped-signal-after</span></p></td>
1819
+ <td><p>
1820
+ equivalent to <code class="literal">g_signal_connect_data (..., NULL, G_CONNECT_SWAPPED | G_CONNECT_AFTER)</code>
1821
+ </p></td>
1822
+ </tr>
1823
+ <tr>
1824
+ <td><p><span class="term">swapped_object_signal_after, </span><span class="term">swapped-object-signal-after</span></p></td>
1825
+ <td><p>
1826
+ equivalent to <code class="literal">g_signal_connect_object (..., G_CONNECT_SWAPPED | G_CONNECT_AFTER)</code>
1827
+ </p></td>
1828
+ </tr>
1829
+ </tbody>
1830
+ </table></div>
1831
+ <p>
1832
+ </p>
1833
+ <p>
1834
+ </p>
1835
+ <div class="informalexample">
1836
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
1837
+ <tbody>
1838
+ <tr>
1839
+ <td class="listing_lines" align="right"><pre>1
1840
+ 2
1841
+ 3
1842
+ 4
1843
+ 5
1844
+ 6
1845
+ 7
1846
+ 8</pre></td>
1847
+ <td class="listing_code"><pre class="programlisting"><span class="normal">menu</span><span class="symbol">-&gt;</span><span class="normal">toplevel </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="gobject-The-Base-Object-Type.html#g-object-connect">g_object_connect</a></span><span class="normal"> </span><span class="symbol">(</span><span class="function"><a href="gobject-The-Base-Object-Type.html#g-object-new">g_object_new</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">GTK_TYPE_WINDOW</span><span class="symbol">,</span>
1848
+ <span class="normal"> </span><span class="string">"type"</span><span class="symbol">,</span><span class="normal"> <a href="http://library.gnome.org/devel/gtk/unstable/gtk3-Standard-Enumerations.html#GTK-WINDOW-POPUP:CAPS">GTK_WINDOW_POPUP</a></span><span class="symbol">,</span>
1849
+ <span class="normal"> </span><span class="string">"child"</span><span class="symbol">,</span><span class="normal"> menu</span><span class="symbol">,</span>
1850
+ <span class="normal"> <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">),</span>
1851
+ <span class="normal"> </span><span class="string">"signal::event"</span><span class="symbol">,</span><span class="normal"> gtk_menu_window_event</span><span class="symbol">,</span><span class="normal"> menu</span><span class="symbol">,</span>
1852
+ <span class="normal"> </span><span class="string">"signal::size_request"</span><span class="symbol">,</span><span class="normal"> gtk_menu_window_size_request</span><span class="symbol">,</span><span class="normal"> menu</span><span class="symbol">,</span>
1853
+ <span class="normal"> </span><span class="string">"signal::destroy"</span><span class="symbol">,</span><span class="normal"> <a href="http://library.gnome.org/devel/gtk/unstable/GtkWidget.html#gtk-widget-destroyed">gtk_widget_destroyed</a></span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">&amp;</span><span class="normal">menu</span><span class="symbol">-&gt;</span><span class="normal">toplevel</span><span class="symbol">,</span>
1854
+ <span class="normal"> <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">);</span></pre></td>
1855
+ </tr>
1856
+ </tbody>
1857
+ </table>
1858
+ </div>
1859
+
1860
+ <p>
1861
+ </p>
1862
+ <div class="variablelist"><table border="0">
1863
+ <col align="left" valign="top">
1864
+ <tbody>
1865
+ <tr>
1866
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
1867
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1868
+ </td>
1869
+ </tr>
1870
+ <tr>
1871
+ <td><p><span class="term"><em class="parameter"><code>signal_spec</code></em> :</span></p></td>
1872
+ <td>the spec for the first signal
1873
+ </td>
1874
+ </tr>
1875
+ <tr>
1876
+ <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
1877
+ <td>
1878
+ <a class="link" href="gobject-Closures.html#GCallback" title="GCallback ()"><span class="type">GCallback</span></a> for the first signal, followed by data for the
1879
+ first signal, followed optionally by more signal
1880
+ spec/callback/data triples, followed by <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1881
+ </td>
1882
+ </tr>
1883
+ <tr>
1884
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1885
+ <td> <em class="parameter"><code>object</code></em>
1886
+ </td>
1887
+ </tr>
1888
+ </tbody>
1889
+ </table></div>
1890
+ </div>
1891
+ <hr>
1892
+ <div class="refsect2">
1893
+ <a name="g-object-disconnect"></a><h3>g_object_disconnect ()</h3>
1894
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_disconnect (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>,
1895
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *signal_spec</code></em>,
1896
+ <em class="parameter"><code>...</code></em>);</pre>
1897
+ <p>
1898
+ A convenience function to disconnect multiple signals at once.
1899
+ </p>
1900
+ <p>
1901
+ The signal specs expected by this function have the form
1902
+ "any_signal", which means to disconnect any signal with matching
1903
+ callback and data, or "any_signal::signal_name", which only
1904
+ disconnects the signal named "signal_name".
1905
+ </p>
1906
+ <div class="variablelist"><table border="0">
1907
+ <col align="left" valign="top">
1908
+ <tbody>
1909
+ <tr>
1910
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
1911
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1912
+ </td>
1913
+ </tr>
1914
+ <tr>
1915
+ <td><p><span class="term"><em class="parameter"><code>signal_spec</code></em> :</span></p></td>
1916
+ <td>the spec for the first signal
1917
+ </td>
1918
+ </tr>
1919
+ <tr>
1920
+ <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
1921
+ <td>
1922
+ <a class="link" href="gobject-Closures.html#GCallback" title="GCallback ()"><span class="type">GCallback</span></a> for the first signal, followed by data for the first signal,
1923
+ followed optionally by more signal spec/callback/data triples,
1924
+ followed by <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1925
+ </td>
1926
+ </tr>
1927
+ </tbody>
1928
+ </table></div>
1929
+ </div>
1930
+ <hr>
1931
+ <div class="refsect2">
1932
+ <a name="g-object-set"></a><h3>g_object_set ()</h3>
1933
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_set (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>,
1934
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
1935
+ <em class="parameter"><code>...</code></em>);</pre>
1936
+ <p>
1937
+ Sets properties on an object.
1938
+ </p>
1939
+ <div class="variablelist"><table border="0">
1940
+ <col align="left" valign="top">
1941
+ <tbody>
1942
+ <tr>
1943
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
1944
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
1945
+ </td>
1946
+ </tr>
1947
+ <tr>
1948
+ <td><p><span class="term"><em class="parameter"><code>first_property_name</code></em> :</span></p></td>
1949
+ <td>name of the first property to set
1950
+ </td>
1951
+ </tr>
1952
+ <tr>
1953
+ <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
1954
+ <td>value for the first property, followed optionally by more
1955
+ name/value pairs, followed by <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1956
+ </td>
1957
+ </tr>
1958
+ </tbody>
1959
+ </table></div>
1960
+ </div>
1961
+ <hr>
1962
+ <div class="refsect2">
1963
+ <a name="g-object-get"></a><h3>g_object_get ()</h3>
1964
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_get (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> object</code></em>,
1965
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
1966
+ <em class="parameter"><code>...</code></em>);</pre>
1967
+ <p>
1968
+ Gets properties of an object.
1969
+ </p>
1970
+ <p>
1971
+ In general, a copy is made of the property contents and the caller
1972
+ is responsible for freeing the memory in the appropriate manner for
1973
+ the type, for instance by calling <a href="./../glib/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> or <a class="link" href="gobject-The-Base-Object-Type.html#g-object-unref" title="g_object_unref ()"><code class="function">g_object_unref()</code></a>.
1974
+ </p>
1975
+ <p>
1976
+ </p>
1977
+ <div class="example">
1978
+ <a name="id439430"></a><p class="title"><b>Example 2. Using g_object_get()</b></p>
1979
+ <div class="example-contents">
1980
+ An example of using <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get" title="g_object_get ()"><code class="function">g_object_get()</code></a> to get the contents
1981
+ of three properties - one of type <a class="link" href="gobject-Type-Information.html#G-TYPE-INT:CAPS" title="G_TYPE_INT"><span class="type">G_TYPE_INT</span></a>,
1982
+ one of type <a class="link" href="gobject-Type-Information.html#G-TYPE-STRING:CAPS" title="G_TYPE_STRING"><span class="type">G_TYPE_STRING</span></a>, and one of type <a class="link" href="gobject-Type-Information.html#G-TYPE-OBJECT:CAPS" title="G_TYPE_OBJECT"><span class="type">G_TYPE_OBJECT</span></a>:
1983
+ <pre class="programlisting">
1984
+ gint intval;
1985
+ gchar *strval;
1986
+ GObject *objval;
1987
+
1988
+ g_object_get (my_object,
1989
+ "int-property", &amp;intval,
1990
+ "str-property", &amp;strval,
1991
+ "obj-property", &amp;objval,
1992
+ NULL);
1993
+
1994
+ // Do something with intval, strval, objval
1995
+
1996
+ g_free (strval);
1997
+ g_object_unref (objval);
1998
+ </pre>
1999
+ </div>
2000
+ </div>
2001
+ <p><br class="example-break">
2002
+ </p>
2003
+ <div class="variablelist"><table border="0">
2004
+ <col align="left" valign="top">
2005
+ <tbody>
2006
+ <tr>
2007
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2008
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2009
+ </td>
2010
+ </tr>
2011
+ <tr>
2012
+ <td><p><span class="term"><em class="parameter"><code>first_property_name</code></em> :</span></p></td>
2013
+ <td>name of the first property to get
2014
+ </td>
2015
+ </tr>
2016
+ <tr>
2017
+ <td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
2018
+ <td>return location for the first property, followed optionally by more
2019
+ name/return location pairs, followed by <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
2020
+ </td>
2021
+ </tr>
2022
+ </tbody>
2023
+ </table></div>
2024
+ </div>
2025
+ <hr>
2026
+ <div class="refsect2">
2027
+ <a name="g-object-notify"></a><h3>g_object_notify ()</h3>
2028
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_notify (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
2029
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>);</pre>
2030
+ <p>
2031
+ Emits a "notify" signal for the property <em class="parameter"><code>property_name</code></em> on <em class="parameter"><code>object</code></em>.
2032
+ </p>
2033
+ <p>
2034
+ When possible, eg. when signaling a property change from within the class
2035
+ that registered the property, you should use <a class="link" href="gobject-The-Base-Object-Type.html#g-object-notify-by-pspec" title="g_object_notify_by_pspec ()"><code class="function">g_object_notify_by_pspec()</code></a>
2036
+ instead.
2037
+ </p>
2038
+ <div class="variablelist"><table border="0">
2039
+ <col align="left" valign="top">
2040
+ <tbody>
2041
+ <tr>
2042
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2043
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2044
+ </td>
2045
+ </tr>
2046
+ <tr>
2047
+ <td><p><span class="term"><em class="parameter"><code>property_name</code></em> :</span></p></td>
2048
+ <td>the name of a property installed on the class of <em class="parameter"><code>object</code></em>.
2049
+ </td>
2050
+ </tr>
2051
+ </tbody>
2052
+ </table></div>
2053
+ </div>
2054
+ <hr>
2055
+ <div class="refsect2">
2056
+ <a name="g-object-notify-by-pspec"></a><h3>g_object_notify_by_pspec ()</h3>
2057
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_notify_by_pspec (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
2058
+ <em class="parameter"><code><a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> *pspec</code></em>);</pre>
2059
+ <p>
2060
+ Emits a "notify" signal for the property specified by <em class="parameter"><code>pspec</code></em> on <em class="parameter"><code>object</code></em>.
2061
+ </p>
2062
+ <p>
2063
+ This function omits the property name lookup, hence it is faster than
2064
+ <a class="link" href="gobject-The-Base-Object-Type.html#g-object-notify" title="g_object_notify ()"><code class="function">g_object_notify()</code></a>.
2065
+ </p>
2066
+ <p>
2067
+ One way to avoid using <a class="link" href="gobject-The-Base-Object-Type.html#g-object-notify" title="g_object_notify ()"><code class="function">g_object_notify()</code></a> from within the
2068
+ class that registered the properties, and using <a class="link" href="gobject-The-Base-Object-Type.html#g-object-notify-by-pspec" title="g_object_notify_by_pspec ()"><code class="function">g_object_notify_by_pspec()</code></a>
2069
+ instead, is to store the GParamSpec used with
2070
+ <a class="link" href="gobject-The-Base-Object-Type.html#g-object-class-install-property" title="g_object_class_install_property ()"><code class="function">g_object_class_install_property()</code></a> inside a static array, e.g.:
2071
+ </p>
2072
+ <p>
2073
+ </p>
2074
+ <div class="informalexample">
2075
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
2076
+ <tbody>
2077
+ <tr>
2078
+ <td class="listing_lines" align="right"><pre>1
2079
+ 2
2080
+ 3
2081
+ 4
2082
+ 5
2083
+ 6
2084
+ 7
2085
+ 8
2086
+ 9
2087
+ 10
2088
+ 11
2089
+ 12
2090
+ 13
2091
+ 14
2092
+ 15
2093
+ 16
2094
+ 17
2095
+ 18
2096
+ 19
2097
+ 20</pre></td>
2098
+ <td class="listing_code"><pre class="programlisting"><span class="keyword">enum</span>
2099
+ <span class="cbracket">{</span>
2100
+ <span class="normal"> PROP_0</span><span class="symbol">,</span>
2101
+ <span class="normal"> PROP_FOO</span><span class="symbol">,</span>
2102
+ <span class="normal"> PROP_LAST</span>
2103
+ <span class="cbracket">}</span><span class="symbol">;</span>
2104
+
2105
+ <span class="keyword">static</span><span class="normal"> </span><span class="usertype">GParamSpec</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">properties</span><span class="symbol">[</span><span class="normal">PROP_LAST</span><span class="symbol">];</span>
2106
+
2107
+ <span class="keyword">static</span><span class="normal"> </span><span class="type">void</span>
2108
+ <span class="function">my_object_class_init</span><span class="normal"> </span><span class="symbol">(</span><span class="usertype">MyObjectClass</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">klass</span><span class="symbol">)</span>
2109
+ <span class="cbracket">{</span>
2110
+ <span class="normal"> properties</span><span class="symbol">[</span><span class="normal">PROP_FOO</span><span class="symbol">]</span><span class="normal"> </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="gobject-Standard-Parameter-and-Value-Types.html#g-param-spec-int">g_param_spec_int</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"foo"</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"Foo"</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"The foo"</span><span class="symbol">,</span>
2111
+ <span class="normal"> </span><span class="number">0</span><span class="symbol">,</span><span class="normal"> </span><span class="number">100</span><span class="symbol">,</span>
2112
+ <span class="normal"> </span><span class="number">50</span><span class="symbol">,</span>
2113
+ <span class="normal"> <a href="gobject-GParamSpec.html#G-PARAM-READWRITE:CAPS">G_PARAM_READWRITE</a></span><span class="symbol">);</span>
2114
+ <span class="normal"> </span><span class="function"><a href="gobject-The-Base-Object-Type.html#g-object-class-install-property">g_object_class_install_property</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">gobject_class</span><span class="symbol">,</span>
2115
+ <span class="normal"> PROP_FOO</span><span class="symbol">,</span>
2116
+ <span class="normal"> properties</span><span class="symbol">[</span><span class="normal">PROP_FOO</span><span class="symbol">]);</span>
2117
+ <span class="cbracket">}</span></pre></td>
2118
+ </tr>
2119
+ </tbody>
2120
+ </table>
2121
+ </div>
2122
+
2123
+ <p>
2124
+ </p>
2125
+ <p>
2126
+ and then notify a change on the "foo" property with:
2127
+ </p>
2128
+ <p>
2129
+ </p>
2130
+ <div class="informalexample">
2131
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
2132
+ <tbody>
2133
+ <tr>
2134
+ <td class="listing_lines" align="right"><pre>1</pre></td>
2135
+ <td class="listing_code"><pre class="programlisting"><span class="function"><a href="gobject-The-Base-Object-Type.html#g-object-notify-by-pspec">g_object_notify_by_pspec</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">self</span><span class="symbol">,</span><span class="normal"> properties</span><span class="symbol">[</span><span class="normal">PROP_FOO</span><span class="symbol">]);</span></pre></td>
2136
+ </tr>
2137
+ </tbody>
2138
+ </table>
2139
+ </div>
2140
+
2141
+ <p>
2142
+ </p>
2143
+ <div class="variablelist"><table border="0">
2144
+ <col align="left" valign="top">
2145
+ <tbody>
2146
+ <tr>
2147
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2148
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2149
+ </td>
2150
+ </tr>
2151
+ <tr>
2152
+ <td><p><span class="term"><em class="parameter"><code>pspec</code></em> :</span></p></td>
2153
+ <td>the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> of a property installed on the class of <em class="parameter"><code>object</code></em>.
2154
+ </td>
2155
+ </tr>
2156
+ </tbody>
2157
+ </table></div>
2158
+ <p class="since">Since 2.26</p>
2159
+ </div>
2160
+ <hr>
2161
+ <div class="refsect2">
2162
+ <a name="g-object-freeze-notify"></a><h3>g_object_freeze_notify ()</h3>
2163
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_freeze_notify (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>);</pre>
2164
+ <p>
2165
+ Increases the freeze count on <em class="parameter"><code>object</code></em>. If the freeze count is
2166
+ non-zero, the emission of "notify" signals on <em class="parameter"><code>object</code></em> is
2167
+ stopped. The signals are queued until the freeze count is decreased
2168
+ to zero.
2169
+ </p>
2170
+ <p>
2171
+ This is necessary for accessors that modify multiple properties to prevent
2172
+ premature notification while the object is still being modified.
2173
+ </p>
2174
+ <div class="variablelist"><table border="0">
2175
+ <col align="left" valign="top">
2176
+ <tbody><tr>
2177
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2178
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2179
+ </td>
2180
+ </tr></tbody>
2181
+ </table></div>
2182
+ </div>
2183
+ <hr>
2184
+ <div class="refsect2">
2185
+ <a name="g-object-thaw-notify"></a><h3>g_object_thaw_notify ()</h3>
2186
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_thaw_notify (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>);</pre>
2187
+ <p>
2188
+ Reverts the effect of a previous call to
2189
+ <a class="link" href="gobject-The-Base-Object-Type.html#g-object-freeze-notify" title="g_object_freeze_notify ()"><code class="function">g_object_freeze_notify()</code></a>. The freeze count is decreased on <em class="parameter"><code>object</code></em>
2190
+ and when it reaches zero, all queued "notify" signals are emitted.
2191
+ </p>
2192
+ <p>
2193
+ It is an error to call this function when the freeze count is zero.
2194
+ </p>
2195
+ <div class="variablelist"><table border="0">
2196
+ <col align="left" valign="top">
2197
+ <tbody><tr>
2198
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2199
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2200
+ </td>
2201
+ </tr></tbody>
2202
+ </table></div>
2203
+ </div>
2204
+ <hr>
2205
+ <div class="refsect2">
2206
+ <a name="g-object-get-data"></a><h3>g_object_get_data ()</h3>
2207
+ <pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> g_object_get_data (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
2208
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>);</pre>
2209
+ <p>
2210
+ Gets a named field from the objects table of associations (see <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-data" title="g_object_set_data ()"><code class="function">g_object_set_data()</code></a>).
2211
+ </p>
2212
+ <div class="variablelist"><table border="0">
2213
+ <col align="left" valign="top">
2214
+ <tbody>
2215
+ <tr>
2216
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2217
+ <td>
2218
+ <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> containing the associations
2219
+ </td>
2220
+ </tr>
2221
+ <tr>
2222
+ <td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td>
2223
+ <td>name of the key for that association
2224
+ </td>
2225
+ </tr>
2226
+ <tr>
2227
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2228
+ <td> the data if found, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no such data exists.
2229
+ </td>
2230
+ </tr>
2231
+ </tbody>
2232
+ </table></div>
2233
+ </div>
2234
+ <hr>
2235
+ <div class="refsect2">
2236
+ <a name="g-object-set-data"></a><h3>g_object_set_data ()</h3>
2237
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_set_data (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
2238
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>,
2239
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
2240
+ <p>
2241
+ Each object carries around a table of associations from
2242
+ strings to pointers. This function lets you set an association.
2243
+ </p>
2244
+ <p>
2245
+ If the object already had an association with that name,
2246
+ the old association will be destroyed.
2247
+ </p>
2248
+ <div class="variablelist"><table border="0">
2249
+ <col align="left" valign="top">
2250
+ <tbody>
2251
+ <tr>
2252
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2253
+ <td>
2254
+ <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> containing the associations.
2255
+ </td>
2256
+ </tr>
2257
+ <tr>
2258
+ <td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td>
2259
+ <td>name of the key
2260
+ </td>
2261
+ </tr>
2262
+ <tr>
2263
+ <td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
2264
+ <td>data to associate with that key
2265
+ </td>
2266
+ </tr>
2267
+ </tbody>
2268
+ </table></div>
2269
+ </div>
2270
+ <hr>
2271
+ <div class="refsect2">
2272
+ <a name="g-object-set-data-full"></a><h3>g_object_set_data_full ()</h3>
2273
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_set_data_full (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
2274
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>,
2275
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
2276
+ <em class="parameter"><code><a href="./../glib/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>);</pre>
2277
+ <p>
2278
+ Like <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-data" title="g_object_set_data ()"><code class="function">g_object_set_data()</code></a> except it adds notification
2279
+ for when the association is destroyed, either by setting it
2280
+ to a different value or when the object is destroyed.
2281
+ </p>
2282
+ <p>
2283
+ Note that the <em class="parameter"><code>destroy</code></em> callback is not called if <em class="parameter"><code>data</code></em> is <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
2284
+ </p>
2285
+ <div class="variablelist"><table border="0">
2286
+ <col align="left" valign="top">
2287
+ <tbody>
2288
+ <tr>
2289
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2290
+ <td>
2291
+ <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> containing the associations
2292
+ </td>
2293
+ </tr>
2294
+ <tr>
2295
+ <td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td>
2296
+ <td>name of the key
2297
+ </td>
2298
+ </tr>
2299
+ <tr>
2300
+ <td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
2301
+ <td>data to associate with that key
2302
+ </td>
2303
+ </tr>
2304
+ <tr>
2305
+ <td><p><span class="term"><em class="parameter"><code>destroy</code></em> :</span></p></td>
2306
+ <td>function to call when the association is destroyed
2307
+ </td>
2308
+ </tr>
2309
+ </tbody>
2310
+ </table></div>
2311
+ </div>
2312
+ <hr>
2313
+ <div class="refsect2">
2314
+ <a name="g-object-steal-data"></a><h3>g_object_steal_data ()</h3>
2315
+ <pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> g_object_steal_data (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
2316
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *key</code></em>);</pre>
2317
+ <p>
2318
+ Remove a specified datum from the object's data associations,
2319
+ without invoking the association's destroy handler.
2320
+ </p>
2321
+ <div class="variablelist"><table border="0">
2322
+ <col align="left" valign="top">
2323
+ <tbody>
2324
+ <tr>
2325
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2326
+ <td>
2327
+ <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> containing the associations
2328
+ </td>
2329
+ </tr>
2330
+ <tr>
2331
+ <td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td>
2332
+ <td>name of the key
2333
+ </td>
2334
+ </tr>
2335
+ <tr>
2336
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2337
+ <td> the data if found, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if no such data exists.
2338
+ </td>
2339
+ </tr>
2340
+ </tbody>
2341
+ </table></div>
2342
+ </div>
2343
+ <hr>
2344
+ <div class="refsect2">
2345
+ <a name="g-object-get-qdata"></a><h3>g_object_get_qdata ()</h3>
2346
+ <pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> g_object_get_qdata (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
2347
+ <em class="parameter"><code><a href="./../glib/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> quark</code></em>);</pre>
2348
+ <p>
2349
+ This function gets back user data pointers stored via
2350
+ <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata" title="g_object_set_qdata ()"><code class="function">g_object_set_qdata()</code></a>.
2351
+ </p>
2352
+ <div class="variablelist"><table border="0">
2353
+ <col align="left" valign="top">
2354
+ <tbody>
2355
+ <tr>
2356
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2357
+ <td>The GObject to get a stored user data pointer from
2358
+ </td>
2359
+ </tr>
2360
+ <tr>
2361
+ <td><p><span class="term"><em class="parameter"><code>quark</code></em> :</span></p></td>
2362
+ <td>A <a href="./../glib/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a>, naming the user data pointer
2363
+ </td>
2364
+ </tr>
2365
+ <tr>
2366
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2367
+ <td> The user data pointer set, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
2368
+ </td>
2369
+ </tr>
2370
+ </tbody>
2371
+ </table></div>
2372
+ </div>
2373
+ <hr>
2374
+ <div class="refsect2">
2375
+ <a name="g-object-set-qdata"></a><h3>g_object_set_qdata ()</h3>
2376
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_set_qdata (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
2377
+ <em class="parameter"><code><a href="./../glib/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> quark</code></em>,
2378
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>);</pre>
2379
+ <p>
2380
+ This sets an opaque, named pointer on an object.
2381
+ The name is specified through a <a href="./../glib/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> (retrived e.g. via
2382
+ <a href="./../glib/glib/glib-Quarks.html#g-quark-from-static-string"><code class="function">g_quark_from_static_string()</code></a>), and the pointer
2383
+ can be gotten back from the <em class="parameter"><code>object</code></em> with <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-qdata" title="g_object_get_qdata ()"><code class="function">g_object_get_qdata()</code></a>
2384
+ until the <em class="parameter"><code>object</code></em> is finalized.
2385
+ Setting a previously set user data pointer, overrides (frees)
2386
+ the old pointer set, using <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> as pointer essentially
2387
+ removes the data stored.
2388
+ </p>
2389
+ <div class="variablelist"><table border="0">
2390
+ <col align="left" valign="top">
2391
+ <tbody>
2392
+ <tr>
2393
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2394
+ <td>The GObject to set store a user data pointer
2395
+ </td>
2396
+ </tr>
2397
+ <tr>
2398
+ <td><p><span class="term"><em class="parameter"><code>quark</code></em> :</span></p></td>
2399
+ <td>A <a href="./../glib/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a>, naming the user data pointer
2400
+ </td>
2401
+ </tr>
2402
+ <tr>
2403
+ <td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
2404
+ <td>An opaque user data pointer
2405
+ </td>
2406
+ </tr>
2407
+ </tbody>
2408
+ </table></div>
2409
+ </div>
2410
+ <hr>
2411
+ <div class="refsect2">
2412
+ <a name="g-object-set-qdata-full"></a><h3>g_object_set_qdata_full ()</h3>
2413
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_set_qdata_full (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
2414
+ <em class="parameter"><code><a href="./../glib/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> quark</code></em>,
2415
+ <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> data</code></em>,
2416
+ <em class="parameter"><code><a href="./../glib/glib/glib-Datasets.html#GDestroyNotify"><span class="type">GDestroyNotify</span></a> destroy</code></em>);</pre>
2417
+ <p>
2418
+ This function works like <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata" title="g_object_set_qdata ()"><code class="function">g_object_set_qdata()</code></a>, but in addition,
2419
+ a void (*destroy) (gpointer) function may be specified which is
2420
+ called with <em class="parameter"><code>data</code></em> as argument when the <em class="parameter"><code>object</code></em> is finalized, or
2421
+ the data is being overwritten by a call to <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata" title="g_object_set_qdata ()"><code class="function">g_object_set_qdata()</code></a>
2422
+ with the same <em class="parameter"><code>quark</code></em>.
2423
+ </p>
2424
+ <div class="variablelist"><table border="0">
2425
+ <col align="left" valign="top">
2426
+ <tbody>
2427
+ <tr>
2428
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2429
+ <td>The GObject to set store a user data pointer
2430
+ </td>
2431
+ </tr>
2432
+ <tr>
2433
+ <td><p><span class="term"><em class="parameter"><code>quark</code></em> :</span></p></td>
2434
+ <td>A <a href="./../glib/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a>, naming the user data pointer
2435
+ </td>
2436
+ </tr>
2437
+ <tr>
2438
+ <td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
2439
+ <td>An opaque user data pointer
2440
+ </td>
2441
+ </tr>
2442
+ <tr>
2443
+ <td><p><span class="term"><em class="parameter"><code>destroy</code></em> :</span></p></td>
2444
+ <td>Function to invoke with <em class="parameter"><code>data</code></em> as argument, when <em class="parameter"><code>data</code></em>
2445
+ needs to be freed
2446
+ </td>
2447
+ </tr>
2448
+ </tbody>
2449
+ </table></div>
2450
+ </div>
2451
+ <hr>
2452
+ <div class="refsect2">
2453
+ <a name="g-object-steal-qdata"></a><h3>g_object_steal_qdata ()</h3>
2454
+ <pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> g_object_steal_qdata (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
2455
+ <em class="parameter"><code><a href="./../glib/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> quark</code></em>);</pre>
2456
+ <p>
2457
+ This function gets back user data pointers stored via
2458
+ <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata" title="g_object_set_qdata ()"><code class="function">g_object_set_qdata()</code></a> and removes the <em class="parameter"><code>data</code></em> from object
2459
+ without invoking its <code class="function">destroy()</code> function (if any was
2460
+ set).
2461
+ Usually, calling this function is only required to update
2462
+ user data pointers with a destroy notifier, for example:
2463
+ </p>
2464
+ <div class="informalexample">
2465
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
2466
+ <tbody>
2467
+ <tr>
2468
+ <td class="listing_lines" align="right"><pre>1
2469
+ 2
2470
+ 3
2471
+ 4
2472
+ 5
2473
+ 6
2474
+ 7
2475
+ 8
2476
+ 9
2477
+ 10
2478
+ 11
2479
+ 12
2480
+ 13
2481
+ 14
2482
+ 15
2483
+ 16
2484
+ 17
2485
+ 18
2486
+ 19
2487
+ 20
2488
+ 21
2489
+ 22
2490
+ 23</pre></td>
2491
+ <td class="listing_code"><pre class="programlisting"><span class="type">void</span>
2492
+ <span class="function">object_add_to_user_list</span><span class="normal"> </span><span class="symbol">(</span><span class="usertype">GObject</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">object</span><span class="symbol">,</span>
2493
+ <span class="normal"> </span><span class="keyword">const</span><span class="normal"> </span><span class="usertype">gchar</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">new_string</span><span class="symbol">)</span>
2494
+ <span class="cbracket">{</span>
2495
+ <span class="normal"> </span><span class="comment">// the quark, naming the object data</span>
2496
+ <span class="normal"> </span><span class="usertype">GQuark</span><span class="normal"> quark_string_list </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="./../glib/glib/glib-Quarks.html#g-quark-from-static-string">g_quark_from_static_string</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"my-string-list"</span><span class="symbol">);</span>
2497
+ <span class="normal"> </span><span class="comment">// retrive the old string list</span>
2498
+ <span class="normal"> </span><span class="usertype">GList</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">list </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="gobject-The-Base-Object-Type.html#g-object-steal-qdata">g_object_steal_qdata</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">object</span><span class="symbol">,</span><span class="normal"> quark_string_list</span><span class="symbol">);</span>
2499
+
2500
+ <span class="normal"> </span><span class="comment">// prepend new string</span>
2501
+ <span class="normal"> list </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="./../glib/glib/glib-Doubly-Linked-Lists.html#g-list-prepend">g_list_prepend</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">list</span><span class="symbol">,</span><span class="normal"> </span><span class="function"><a href="./../glib/glib/glib-String-Utility-Functions.html#g-strdup">g_strdup</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">new_string</span><span class="symbol">));</span>
2502
+ <span class="normal"> </span><span class="comment">// this changed 'list', so we need to set it again</span>
2503
+ <span class="normal"> </span><span class="function"><a href="gobject-The-Base-Object-Type.html#g-object-set-qdata-full">g_object_set_qdata_full</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">object</span><span class="symbol">,</span><span class="normal"> quark_string_list</span><span class="symbol">,</span><span class="normal"> list</span><span class="symbol">,</span><span class="normal"> free_string_list</span><span class="symbol">);</span>
2504
+ <span class="cbracket">}</span>
2505
+ <span class="keyword">static</span><span class="normal"> </span><span class="type">void</span>
2506
+ <span class="function">free_string_list</span><span class="normal"> </span><span class="symbol">(</span><span class="usertype">gpointer</span><span class="normal"> data</span><span class="symbol">)</span>
2507
+ <span class="cbracket">{</span>
2508
+ <span class="normal"> </span><span class="usertype">GList</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">node</span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">list </span><span class="symbol">=</span><span class="normal"> data</span><span class="symbol">;</span>
2509
+
2510
+ <span class="normal"> </span><span class="keyword">for</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">node </span><span class="symbol">=</span><span class="normal"> list</span><span class="symbol">;</span><span class="normal"> node</span><span class="symbol">;</span><span class="normal"> node </span><span class="symbol">=</span><span class="normal"> node</span><span class="symbol">-&gt;</span><span class="normal">next</span><span class="symbol">)</span>
2511
+ <span class="normal"> </span><span class="function"><a href="./../glib/glib/glib-Memory-Allocation.html#g-free">g_free</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">node</span><span class="symbol">-&gt;</span><span class="normal">data</span><span class="symbol">);</span>
2512
+ <span class="normal"> </span><span class="function"><a href="./../glib/glib/glib-Doubly-Linked-Lists.html#g-list-free">g_list_free</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">list</span><span class="symbol">);</span>
2513
+ <span class="cbracket">}</span></pre></td>
2514
+ </tr>
2515
+ </tbody>
2516
+ </table>
2517
+ </div>
2518
+
2519
+ <p>
2520
+ Using <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-qdata" title="g_object_get_qdata ()"><code class="function">g_object_get_qdata()</code></a> in the above example, instead of
2521
+ <a class="link" href="gobject-The-Base-Object-Type.html#g-object-steal-qdata" title="g_object_steal_qdata ()"><code class="function">g_object_steal_qdata()</code></a> would have left the destroy function set,
2522
+ and thus the partial string list would have been freed upon
2523
+ <a class="link" href="gobject-The-Base-Object-Type.html#g-object-set-qdata-full" title="g_object_set_qdata_full ()"><code class="function">g_object_set_qdata_full()</code></a>.
2524
+ </p>
2525
+ <div class="variablelist"><table border="0">
2526
+ <col align="left" valign="top">
2527
+ <tbody>
2528
+ <tr>
2529
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2530
+ <td>The GObject to get a stored user data pointer from
2531
+ </td>
2532
+ </tr>
2533
+ <tr>
2534
+ <td><p><span class="term"><em class="parameter"><code>quark</code></em> :</span></p></td>
2535
+ <td>A <a href="./../glib/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a>, naming the user data pointer
2536
+ </td>
2537
+ </tr>
2538
+ <tr>
2539
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2540
+ <td> The user data pointer set, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
2541
+ </td>
2542
+ </tr>
2543
+ </tbody>
2544
+ </table></div>
2545
+ </div>
2546
+ <hr>
2547
+ <div class="refsect2">
2548
+ <a name="g-object-set-property"></a><h3>g_object_set_property ()</h3>
2549
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_set_property (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
2550
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>,
2551
+ <em class="parameter"><code>const <a class="link" href="gobject-Generic-values.html#GValue" title="GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
2552
+ <p>
2553
+ Sets a property on an object.
2554
+ </p>
2555
+ <div class="variablelist"><table border="0">
2556
+ <col align="left" valign="top">
2557
+ <tbody>
2558
+ <tr>
2559
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2560
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2561
+ </td>
2562
+ </tr>
2563
+ <tr>
2564
+ <td><p><span class="term"><em class="parameter"><code>property_name</code></em> :</span></p></td>
2565
+ <td>the name of the property to set
2566
+ </td>
2567
+ </tr>
2568
+ <tr>
2569
+ <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
2570
+ <td>the value
2571
+ </td>
2572
+ </tr>
2573
+ </tbody>
2574
+ </table></div>
2575
+ </div>
2576
+ <hr>
2577
+ <div class="refsect2">
2578
+ <a name="g-object-get-property"></a><h3>g_object_get_property ()</h3>
2579
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_get_property (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
2580
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>,
2581
+ <em class="parameter"><code><a class="link" href="gobject-Generic-values.html#GValue" title="GValue"><span class="type">GValue</span></a> *value</code></em>);</pre>
2582
+ <p>
2583
+ Gets a property of an object.
2584
+ </p>
2585
+ <p>
2586
+ In general, a copy is made of the property contents and the caller is
2587
+ responsible for freeing the memory by calling <a class="link" href="gobject-Generic-values.html#g-value-unset" title="g_value_unset ()"><code class="function">g_value_unset()</code></a>.
2588
+ </p>
2589
+ <p>
2590
+ Note that <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get-property" title="g_object_get_property ()"><code class="function">g_object_get_property()</code></a> is really intended for language
2591
+ bindings, <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get" title="g_object_get ()"><code class="function">g_object_get()</code></a> is much more convenient for C programming.
2592
+ </p>
2593
+ <div class="variablelist"><table border="0">
2594
+ <col align="left" valign="top">
2595
+ <tbody>
2596
+ <tr>
2597
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2598
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2599
+ </td>
2600
+ </tr>
2601
+ <tr>
2602
+ <td><p><span class="term"><em class="parameter"><code>property_name</code></em> :</span></p></td>
2603
+ <td>the name of the property to get
2604
+ </td>
2605
+ </tr>
2606
+ <tr>
2607
+ <td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
2608
+ <td>return location for the property value
2609
+ </td>
2610
+ </tr>
2611
+ </tbody>
2612
+ </table></div>
2613
+ </div>
2614
+ <hr>
2615
+ <div class="refsect2">
2616
+ <a name="g-object-new-valist"></a><h3>g_object_new_valist ()</h3>
2617
+ <pre class="programlisting"><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> * g_object_new_valist (<em class="parameter"><code><a class="link" href="gobject-Type-Information.html#GType" title="GType"><span class="type">GType</span></a> object_type</code></em>,
2618
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
2619
+ <em class="parameter"><code><span class="type">va_list</span> var_args</code></em>);</pre>
2620
+ <p>
2621
+ Creates a new instance of a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> subtype and sets its properties.
2622
+ </p>
2623
+ <p>
2624
+ Construction parameters (see <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT:CAPS"><span class="type">G_PARAM_CONSTRUCT</span></a>, <a class="link" href="gobject-GParamSpec.html#G-PARAM-CONSTRUCT-ONLY:CAPS"><span class="type">G_PARAM_CONSTRUCT_ONLY</span></a>)
2625
+ which are not explicitly specified are set to their default values.
2626
+ </p>
2627
+ <div class="variablelist"><table border="0">
2628
+ <col align="left" valign="top">
2629
+ <tbody>
2630
+ <tr>
2631
+ <td><p><span class="term"><em class="parameter"><code>object_type</code></em> :</span></p></td>
2632
+ <td>the type id of the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> subtype to instantiate
2633
+ </td>
2634
+ </tr>
2635
+ <tr>
2636
+ <td><p><span class="term"><em class="parameter"><code>first_property_name</code></em> :</span></p></td>
2637
+ <td>the name of the first property
2638
+ </td>
2639
+ </tr>
2640
+ <tr>
2641
+ <td><p><span class="term"><em class="parameter"><code>var_args</code></em> :</span></p></td>
2642
+ <td>the value of the first property, followed optionally by more
2643
+ name/value pairs, followed by <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
2644
+ </td>
2645
+ </tr>
2646
+ <tr>
2647
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2648
+ <td> a new instance of <em class="parameter"><code>object_type</code></em>
2649
+ </td>
2650
+ </tr>
2651
+ </tbody>
2652
+ </table></div>
2653
+ </div>
2654
+ <hr>
2655
+ <div class="refsect2">
2656
+ <a name="g-object-set-valist"></a><h3>g_object_set_valist ()</h3>
2657
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_set_valist (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
2658
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
2659
+ <em class="parameter"><code><span class="type">va_list</span> var_args</code></em>);</pre>
2660
+ <p>
2661
+ Sets properties on an object.
2662
+ </p>
2663
+ <div class="variablelist"><table border="0">
2664
+ <col align="left" valign="top">
2665
+ <tbody>
2666
+ <tr>
2667
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2668
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2669
+ </td>
2670
+ </tr>
2671
+ <tr>
2672
+ <td><p><span class="term"><em class="parameter"><code>first_property_name</code></em> :</span></p></td>
2673
+ <td>name of the first property to set
2674
+ </td>
2675
+ </tr>
2676
+ <tr>
2677
+ <td><p><span class="term"><em class="parameter"><code>var_args</code></em> :</span></p></td>
2678
+ <td>value for the first property, followed optionally by more
2679
+ name/value pairs, followed by <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
2680
+ </td>
2681
+ </tr>
2682
+ </tbody>
2683
+ </table></div>
2684
+ </div>
2685
+ <hr>
2686
+ <div class="refsect2">
2687
+ <a name="g-object-get-valist"></a><h3>g_object_get_valist ()</h3>
2688
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_get_valist (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
2689
+ <em class="parameter"><code>const <a href="./../glib/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property_name</code></em>,
2690
+ <em class="parameter"><code><span class="type">va_list</span> var_args</code></em>);</pre>
2691
+ <p>
2692
+ Gets properties of an object.
2693
+ </p>
2694
+ <p>
2695
+ In general, a copy is made of the property contents and the caller
2696
+ is responsible for freeing the memory in the appropriate manner for
2697
+ the type, for instance by calling <a href="./../glib/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> or <a class="link" href="gobject-The-Base-Object-Type.html#g-object-unref" title="g_object_unref ()"><code class="function">g_object_unref()</code></a>.
2698
+ </p>
2699
+ <p>
2700
+ See <a class="link" href="gobject-The-Base-Object-Type.html#g-object-get" title="g_object_get ()"><code class="function">g_object_get()</code></a>.
2701
+ </p>
2702
+ <div class="variablelist"><table border="0">
2703
+ <col align="left" valign="top">
2704
+ <tbody>
2705
+ <tr>
2706
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2707
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2708
+ </td>
2709
+ </tr>
2710
+ <tr>
2711
+ <td><p><span class="term"><em class="parameter"><code>first_property_name</code></em> :</span></p></td>
2712
+ <td>name of the first property to get
2713
+ </td>
2714
+ </tr>
2715
+ <tr>
2716
+ <td><p><span class="term"><em class="parameter"><code>var_args</code></em> :</span></p></td>
2717
+ <td>return location for the first property, followed optionally by more
2718
+ name/return location pairs, followed by <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
2719
+ </td>
2720
+ </tr>
2721
+ </tbody>
2722
+ </table></div>
2723
+ </div>
2724
+ <hr>
2725
+ <div class="refsect2">
2726
+ <a name="g-object-watch-closure"></a><h3>g_object_watch_closure ()</h3>
2727
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_watch_closure (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
2728
+ <em class="parameter"><code><a class="link" href="gobject-Closures.html#GClosure" title="GClosure"><span class="type">GClosure</span></a> *closure</code></em>);</pre>
2729
+ <p>
2730
+ This function essentially limits the life time of the <em class="parameter"><code>closure</code></em> to
2731
+ the life time of the object. That is, when the object is finalized,
2732
+ the <em class="parameter"><code>closure</code></em> is invalidated by calling <a class="link" href="gobject-Closures.html#g-closure-invalidate" title="g_closure_invalidate ()"><code class="function">g_closure_invalidate()</code></a> on
2733
+ it, in order to prevent invocations of the closure with a finalized
2734
+ (nonexisting) object. Also, <a class="link" href="gobject-The-Base-Object-Type.html#g-object-ref" title="g_object_ref ()"><code class="function">g_object_ref()</code></a> and <a class="link" href="gobject-The-Base-Object-Type.html#g-object-unref" title="g_object_unref ()"><code class="function">g_object_unref()</code></a> are
2735
+ added as marshal guards to the <em class="parameter"><code>closure</code></em>, to ensure that an extra
2736
+ reference count is held on <em class="parameter"><code>object</code></em> during invocation of the
2737
+ <em class="parameter"><code>closure</code></em>. Usually, this function will be called on closures that
2738
+ use this <em class="parameter"><code>object</code></em> as closure data.
2739
+ </p>
2740
+ <div class="variablelist"><table border="0">
2741
+ <col align="left" valign="top">
2742
+ <tbody>
2743
+ <tr>
2744
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2745
+ <td>GObject restricting lifetime of <em class="parameter"><code>closure</code></em>
2746
+ </td>
2747
+ </tr>
2748
+ <tr>
2749
+ <td><p><span class="term"><em class="parameter"><code>closure</code></em> :</span></p></td>
2750
+ <td>GClosure to watch
2751
+ </td>
2752
+ </tr>
2753
+ </tbody>
2754
+ </table></div>
2755
+ </div>
2756
+ <hr>
2757
+ <div class="refsect2">
2758
+ <a name="g-object-run-dispose"></a><h3>g_object_run_dispose ()</h3>
2759
+ <pre class="programlisting"><span class="returnvalue">void</span> g_object_run_dispose (<em class="parameter"><code><a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>);</pre>
2760
+ <p>
2761
+ Releases all references to other objects. This can be used to break
2762
+ reference cycles.
2763
+ </p>
2764
+ <p>
2765
+ This functions should only be called from object system implementations.
2766
+ </p>
2767
+ <div class="variablelist"><table border="0">
2768
+ <col align="left" valign="top">
2769
+ <tbody><tr>
2770
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2771
+ <td>a <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a>
2772
+ </td>
2773
+ </tr></tbody>
2774
+ </table></div>
2775
+ </div>
2776
+ <hr>
2777
+ <div class="refsect2">
2778
+ <a name="G-OBJECT-WARN-INVALID-PROPERTY-ID:CAPS"></a><h3>G_OBJECT_WARN_INVALID_PROPERTY_ID()</h3>
2779
+ <pre class="programlisting">#define G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec)</pre>
2780
+ <p>
2781
+ This macro should be used to emit a standard warning about unexpected
2782
+ properties in <code class="function">set_property()</code> and <code class="function">get_property()</code> implementations.
2783
+ </p>
2784
+ <div class="variablelist"><table border="0">
2785
+ <col align="left" valign="top">
2786
+ <tbody>
2787
+ <tr>
2788
+ <td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
2789
+ <td>the <a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> on which <code class="function">set_property()</code> or <code class="function">get_property()</code> was called
2790
+ </td>
2791
+ </tr>
2792
+ <tr>
2793
+ <td><p><span class="term"><em class="parameter"><code>property_id</code></em> :</span></p></td>
2794
+ <td>the numeric id of the property
2795
+ </td>
2796
+ </tr>
2797
+ <tr>
2798
+ <td><p><span class="term"><em class="parameter"><code>pspec</code></em> :</span></p></td>
2799
+ <td>the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> of the property
2800
+ </td>
2801
+ </tr>
2802
+ </tbody>
2803
+ </table></div>
2804
+ </div>
2805
+ </div>
2806
+ <div class="refsect1">
2807
+ <a name="gobject-The-Base-Object-Type.signal-details"></a><h2>Signal Details</h2>
2808
+ <div class="refsect2">
2809
+ <a name="GObject-notify"></a><h3>The <code class="literal">"notify"</code> signal</h3>
2810
+ <pre class="programlisting"><span class="returnvalue">void</span> user_function (<a class="link" href="gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *gobject,
2811
+ <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> *pspec,
2812
+ <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data) : Run First / No Recursion / Has Details / Action / No Hooks</pre>
2813
+ <p>
2814
+ The notify signal is emitted on an object when one of its
2815
+ properties has been changed. Note that getting this signal
2816
+ doesn't guarantee that the value of the property has actually
2817
+ changed, it may also be emitted when the setter for the property
2818
+ is called to reinstate the previous value.
2819
+ </p>
2820
+ <p>
2821
+ This signal is typically used to obtain change notification for a
2822
+ single property, by specifying the property name as a detail in the
2823
+ <a class="link" href="gobject-Signals.html#g-signal-connect" title="g_signal_connect()"><code class="function">g_signal_connect()</code></a> call, like this:
2824
+ </p>
2825
+ <div class="informalexample">
2826
+ <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
2827
+ <tbody>
2828
+ <tr>
2829
+ <td class="listing_lines" align="right"><pre>1
2830
+ 2
2831
+ 3</pre></td>
2832
+ <td class="listing_code"><pre class="programlisting"><span class="function"><a href="gobject-Signals.html#g-signal-connect">g_signal_connect</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">text_view</span><span class="symbol">-&gt;</span><span class="normal">buffer</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"notify::paste-target-list"</span><span class="symbol">,</span>
2833
+ <span class="normal"> </span><span class="function"><a href="gobject-Closures.html#G-CALLBACK:CAPS">G_CALLBACK</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">gtk_text_view_target_list_notify</span><span class="symbol">),</span>
2834
+ <span class="normal"> text_view</span><span class="symbol">)</span></pre></td>
2835
+ </tr>
2836
+ </tbody>
2837
+ </table>
2838
+ </div>
2839
+
2840
+ <p>
2841
+ It is important to note that you must use
2842
+ <a class="link" href="gobject-GParamSpec.html#canonical-parameter-name">canonical</a> parameter names as
2843
+ detail strings for the notify signal.
2844
+ </p>
2845
+ <div class="variablelist"><table border="0">
2846
+ <col align="left" valign="top">
2847
+ <tbody>
2848
+ <tr>
2849
+ <td><p><span class="term"><em class="parameter"><code>gobject</code></em> :</span></p></td>
2850
+ <td>the object which received the signal.
2851
+ </td>
2852
+ </tr>
2853
+ <tr>
2854
+ <td><p><span class="term"><em class="parameter"><code>pspec</code></em> :</span></p></td>
2855
+ <td>the <a class="link" href="gobject-GParamSpec.html#GParamSpec" title="GParamSpec"><span class="type">GParamSpec</span></a> of the property which changed.
2856
+ </td>
2857
+ </tr>
2858
+ <tr>
2859
+ <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
2860
+ <td>user data set when the signal handler was connected.</td>
2861
+ </tr>
2862
+ </tbody>
2863
+ </table></div>
2864
+ </div>
2865
+ </div>
2866
+ <div class="refsect1">
2867
+ <a name="gobject-The-Base-Object-Type.see-also"></a><h2>See Also</h2>
2868
+ <a class="link" href="gobject-Standard-Parameter-and-Value-Types.html#GParamSpecObject" title="GParamSpecObject"><span class="type">GParamSpecObject</span></a>, <a class="link" href="gobject-Standard-Parameter-and-Value-Types.html#g-param-spec-object" title="g_param_spec_object ()"><code class="function">g_param_spec_object()</code></a>
2869
+ </div>
2870
+ </div>
2871
+ <div class="footer">
2872
+ <hr>
2873
+ Generated by GTK-Doc V1.15.1</div>
2874
+ </body>
2875
+ </html>