gtk2 1.0.3-x86-mingw32 → 1.1.0-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (756) hide show
  1. data/Rakefile +66 -1
  2. data/ext/gtk2/extconf.rb +0 -96
  3. data/ext/gtk2/global.h +274 -13
  4. data/ext/gtk2/gtk2.def +5 -3
  5. data/ext/gtk2/init.c +263 -19
  6. data/ext/gtk2/rbgdk.c +245 -89
  7. data/ext/gtk2/rbgdk.h +32 -6
  8. data/ext/gtk2/rbgdkatom.c +38 -28
  9. data/ext/gtk2/rbgdkcairo.c +32 -42
  10. data/ext/gtk2/rbgdkcolor.c +52 -42
  11. data/ext/gtk2/rbgdkcolormap.c +42 -37
  12. data/ext/gtk2/rbgdkconst.c +23 -13
  13. data/ext/gtk2/rbgdkconversions.h +19 -6
  14. data/ext/gtk2/rbgdkcursor.c +37 -25
  15. data/ext/gtk2/rbgdkdevice.c +77 -67
  16. data/ext/gtk2/rbgdkdisplay.c +158 -150
  17. data/ext/gtk2/rbgdkdisplaymanager.c +27 -15
  18. data/ext/gtk2/rbgdkdragcontext.c +121 -70
  19. data/ext/gtk2/rbgdkdraw.c +252 -160
  20. data/ext/gtk2/rbgdkevent.c +30 -20
  21. data/ext/gtk2/rbgdkgc.c +123 -116
  22. data/ext/gtk2/rbgdkgeometry.c +77 -68
  23. data/ext/gtk2/rbgdkimage.c +58 -47
  24. data/ext/gtk2/rbgdkinput.c +33 -26
  25. data/ext/gtk2/rbgdkkeymap.c +38 -27
  26. data/ext/gtk2/rbgdkkeyval.c +44 -32
  27. data/ext/gtk2/rbgdkpango.c +66 -39
  28. data/ext/gtk2/rbgdkpangorenderer.c +63 -35
  29. data/ext/gtk2/rbgdkpixbuf.c +36 -25
  30. data/ext/gtk2/rbgdkpixmap.c +65 -49
  31. data/ext/gtk2/rbgdkproperty.c +66 -60
  32. data/ext/gtk2/rbgdkrectangle.c +54 -46
  33. data/ext/gtk2/rbgdkregion.c +144 -79
  34. data/ext/gtk2/rbgdkrgb.c +74 -58
  35. data/ext/gtk2/rbgdkscreen.c +103 -97
  36. data/ext/gtk2/rbgdkselection.c +49 -39
  37. data/ext/gtk2/rbgdkthreads.c +32 -19
  38. data/ext/gtk2/rbgdktimecoord.c +60 -38
  39. data/ext/gtk2/rbgdkvisual.c +79 -71
  40. data/ext/gtk2/rbgdkwindow.c +284 -305
  41. data/ext/gtk2/rbgdkwindowattr.c +69 -58
  42. data/ext/gtk2/rbgdkx11.c +41 -28
  43. data/ext/gtk2/rbgtk.c +498 -19
  44. data/ext/gtk2/rbgtk.h +35 -20
  45. data/ext/gtk2/rbgtkaboutdialog.c +33 -80
  46. data/ext/gtk2/rbgtkaccelerator.c +36 -23
  47. data/ext/gtk2/rbgtkaccelgroup.c +50 -40
  48. data/ext/gtk2/rbgtkaccelgroupentry.c +32 -20
  49. data/ext/gtk2/rbgtkaccelkey.c +40 -28
  50. data/ext/gtk2/rbgtkaccellabel.c +30 -18
  51. data/ext/gtk2/rbgtkaccelmap.c +55 -42
  52. data/ext/gtk2/rbgtkaccessible.c +25 -14
  53. data/ext/gtk2/rbgtkaction.c +68 -68
  54. data/ext/gtk2/rbgtkactiongroup.c +317 -195
  55. data/ext/gtk2/rbgtkadjustment.c +33 -46
  56. data/ext/gtk2/rbgtkalignment.c +36 -24
  57. data/ext/gtk2/rbgtkallocation.c +53 -42
  58. data/ext/gtk2/rbgtkarrow.c +34 -22
  59. data/ext/gtk2/rbgtkaspectframe.c +32 -20
  60. data/ext/gtk2/rbgtkassistant.c +81 -61
  61. data/ext/gtk2/rbgtkbbox.c +32 -20
  62. data/ext/gtk2/rbgtkbin.c +28 -16
  63. data/ext/gtk2/rbgtkbindingset.c +42 -35
  64. data/ext/gtk2/rbgtkborder.c +34 -23
  65. data/ext/gtk2/rbgtkbox.c +40 -29
  66. data/ext/gtk2/rbgtkbuildable.c +57 -45
  67. data/ext/gtk2/rbgtkbuilder.c +53 -38
  68. data/ext/gtk2/rbgtkbutton.c +41 -55
  69. data/ext/gtk2/rbgtkcalendar.c +51 -40
  70. data/ext/gtk2/rbgtkcelleditable.c +28 -17
  71. data/ext/gtk2/rbgtkcelllayout.c +41 -30
  72. data/ext/gtk2/rbgtkcellrenderer.c +43 -32
  73. data/ext/gtk2/rbgtkcellrendereraccel.c +26 -18
  74. data/ext/gtk2/rbgtkcellrenderercombo.c +25 -17
  75. data/ext/gtk2/rbgtkcellrendererpixbuf.c +24 -17
  76. data/ext/gtk2/rbgtkcellrendererprogress.c +25 -17
  77. data/ext/gtk2/rbgtkcellrendererspin.c +24 -16
  78. data/ext/gtk2/rbgtkcellrendererspinner.c +23 -11
  79. data/ext/gtk2/rbgtkcellrenderertext.c +28 -21
  80. data/ext/gtk2/rbgtkcellrenderertoggle.c +24 -16
  81. data/ext/gtk2/rbgtkcellview.c +34 -33
  82. data/ext/gtk2/rbgtkcheckbutton.c +28 -16
  83. data/ext/gtk2/rbgtkcheckmenuitem.c +31 -19
  84. data/ext/gtk2/rbgtkclipboard.c +123 -77
  85. data/ext/gtk2/rbgtkcolorbutton.c +26 -31
  86. data/ext/gtk2/rbgtkcolorsel.c +109 -55
  87. data/ext/gtk2/rbgtkcolorselectiondialog.c +28 -19
  88. data/ext/gtk2/rbgtkcombo.c +43 -32
  89. data/ext/gtk2/rbgtkcombobox.c +44 -83
  90. data/ext/gtk2/rbgtkcomboboxentry.c +26 -21
  91. data/ext/gtk2/rbgtkconst.c +23 -13
  92. data/ext/gtk2/rbgtkcontainer.c +153 -100
  93. data/ext/gtk2/rbgtkconversions.h +19 -6
  94. data/ext/gtk2/rbgtkcurve.c +46 -36
  95. data/ext/gtk2/rbgtkdialog.c +104 -70
  96. data/ext/gtk2/rbgtkdrag.c +173 -121
  97. data/ext/gtk2/rbgtkdrawingarea.c +28 -16
  98. data/ext/gtk2/rbgtkeditable.c +63 -51
  99. data/ext/gtk2/rbgtkentry.c +48 -85
  100. data/ext/gtk2/rbgtkentrycompletion.c +42 -55
  101. data/ext/gtk2/rbgtkeventbox.c +28 -16
  102. data/ext/gtk2/rbgtkexpander.c +26 -35
  103. data/ext/gtk2/rbgtkfilechooser.c +87 -143
  104. data/ext/gtk2/rbgtkfilechooserbutton.c +26 -32
  105. data/ext/gtk2/rbgtkfilechooserdialog.c +25 -15
  106. data/ext/gtk2/rbgtkfilechooserwidget.c +26 -15
  107. data/ext/gtk2/rbgtkfilefilter.c +45 -35
  108. data/ext/gtk2/rbgtkfilesel.c +54 -43
  109. data/ext/gtk2/rbgtkfilesystemerror.c +51 -0
  110. data/ext/gtk2/rbgtkfixed.c +36 -25
  111. data/ext/gtk2/rbgtkfontbutton.c +26 -37
  112. data/ext/gtk2/rbgtkfontselection.c +27 -15
  113. data/ext/gtk2/rbgtkfontselectiondialog.c +43 -32
  114. data/ext/gtk2/rbgtkframe.c +39 -28
  115. data/ext/gtk2/rbgtkgamma.c +32 -20
  116. data/ext/gtk2/rbgtkhandlebox.c +31 -19
  117. data/ext/gtk2/rbgtkhbbox.c +28 -16
  118. data/ext/gtk2/rbgtkhbox.c +29 -17
  119. data/ext/gtk2/rbgtkhpaned.c +28 -16
  120. data/ext/gtk2/rbgtkhruler.c +28 -16
  121. data/ext/gtk2/rbgtkhscale.c +28 -16
  122. data/ext/gtk2/rbgtkhscrollbar.c +28 -16
  123. data/ext/gtk2/rbgtkhseparator.c +28 -16
  124. data/ext/gtk2/rbgtkiconfactory.c +35 -23
  125. data/ext/gtk2/rbgtkiconinfo.c +42 -30
  126. data/ext/gtk2/rbgtkiconset.c +31 -19
  127. data/ext/gtk2/rbgtkiconsize.c +38 -25
  128. data/ext/gtk2/rbgtkiconsource.c +62 -50
  129. data/ext/gtk2/rbgtkicontheme.c +95 -95
  130. data/ext/gtk2/rbgtkiconview.c +87 -121
  131. data/ext/gtk2/rbgtkimage.c +31 -40
  132. data/ext/gtk2/rbgtkimagemenuitem.c +26 -14
  133. data/ext/gtk2/rbgtkimcontext.c +46 -34
  134. data/ext/gtk2/rbgtkimcontextsimple.c +47 -24
  135. data/ext/gtk2/rbgtkimmulticontext.c +26 -14
  136. data/ext/gtk2/rbgtkinputdialog.c +28 -16
  137. data/ext/gtk2/rbgtkinvisible.c +24 -18
  138. data/ext/gtk2/rbgtkitem.c +32 -20
  139. data/ext/gtk2/rbgtkitemfactory.c +65 -57
  140. data/ext/gtk2/rbgtklabel.c +46 -57
  141. data/ext/gtk2/rbgtklayout.c +40 -29
  142. data/ext/gtk2/rbgtklinkbutton.c +26 -15
  143. data/ext/gtk2/rbgtkliststore.c +145 -102
  144. data/ext/gtk2/rbgtkmacros.h +19 -6
  145. data/ext/gtk2/rbgtkmenu.c +47 -59
  146. data/ext/gtk2/rbgtkmenubar.c +30 -30
  147. data/ext/gtk2/rbgtkmenuitem.c +34 -41
  148. data/ext/gtk2/rbgtkmenushell.c +43 -42
  149. data/ext/gtk2/rbgtkmenutoolbutton.c +27 -16
  150. data/ext/gtk2/rbgtkmessagedialog.c +31 -25
  151. data/ext/gtk2/rbgtkmisc.c +33 -22
  152. data/ext/gtk2/rbgtknotebook.c +98 -134
  153. data/ext/gtk2/rbgtkobject.c +46 -81
  154. data/ext/gtk2/rbgtkoptionmenu.c +35 -23
  155. data/ext/gtk2/rbgtkpagesetup.c +64 -54
  156. data/ext/gtk2/rbgtkpagesetupunixdialog.c +34 -27
  157. data/ext/gtk2/rbgtkpaned.c +46 -36
  158. data/ext/gtk2/rbgtkpapersize.c +60 -54
  159. data/ext/gtk2/rbgtkplug.c +32 -20
  160. data/ext/gtk2/rbgtkprintcontext.c +43 -35
  161. data/ext/gtk2/rbgtkprinter.c +36 -37
  162. data/ext/gtk2/rbgtkprintjob.c +36 -37
  163. data/ext/gtk2/rbgtkprintoperation.c +44 -33
  164. data/ext/gtk2/rbgtkprintoperationpreview.c +30 -18
  165. data/ext/gtk2/rbgtkprintsettings.c +248 -192
  166. data/ext/gtk2/rbgtkprintunixdialog.c +33 -45
  167. data/ext/gtk2/rbgtkprogress.c +23 -13
  168. data/ext/gtk2/rbgtkprogressbar.c +47 -46
  169. data/ext/gtk2/rbgtkradioaction.c +84 -39
  170. data/ext/gtk2/rbgtkradiobutton.c +33 -21
  171. data/ext/gtk2/rbgtkradiomenuitem.c +86 -45
  172. data/ext/gtk2/rbgtkradiotoolbutton.c +99 -53
  173. data/ext/gtk2/rbgtkrange.c +36 -56
  174. data/ext/gtk2/rbgtkrc.c +61 -49
  175. data/ext/gtk2/rbgtkrcstyle.c +59 -48
  176. data/ext/gtk2/rbgtkrecentaction.c +28 -16
  177. data/ext/gtk2/rbgtkrecentchooser.c +58 -92
  178. data/ext/gtk2/rbgtkrecentchooserdialog.c +29 -18
  179. data/ext/gtk2/rbgtkrecentchoosermenu.c +25 -21
  180. data/ext/gtk2/rbgtkrecentchooserwidget.c +24 -13
  181. data/ext/gtk2/rbgtkrecentdata.c +47 -36
  182. data/ext/gtk2/rbgtkrecentfilter.c +55 -46
  183. data/ext/gtk2/rbgtkrecentfilterinfo.c +51 -40
  184. data/ext/gtk2/rbgtkrecentinfo.c +66 -56
  185. data/ext/gtk2/rbgtkrecentmanager.c +47 -43
  186. data/ext/gtk2/rbgtkruler.c +35 -30
  187. data/ext/gtk2/rbgtkscale.c +29 -18
  188. data/ext/gtk2/rbgtkscalebutton.c +27 -27
  189. data/ext/gtk2/rbgtkscrollbar.c +23 -13
  190. data/ext/gtk2/rbgtkscrolledwindow.c +44 -60
  191. data/ext/gtk2/rbgtkselection.c +87 -67
  192. data/ext/gtk2/rbgtkselectiondata.c +74 -65
  193. data/ext/gtk2/rbgtkseparator.c +23 -13
  194. data/ext/gtk2/rbgtkseparatormenuitem.c +25 -13
  195. data/ext/gtk2/rbgtkseparatortoolitem.c +26 -21
  196. data/ext/gtk2/rbgtksettings.c +123 -103
  197. data/ext/gtk2/rbgtksizegroup.c +33 -30
  198. data/ext/gtk2/rbgtksocket.c +32 -20
  199. data/ext/gtk2/rbgtkspinbutton.c +48 -38
  200. data/ext/gtk2/rbgtkspinner.c +27 -14
  201. data/ext/gtk2/rbgtkstatusbar.c +36 -31
  202. data/ext/gtk2/rbgtkstatusicon.c +31 -44
  203. data/ext/gtk2/rbgtkstock.c +137 -125
  204. data/ext/gtk2/rbgtkstyle.c +177 -161
  205. data/ext/gtk2/rbgtktable.c +58 -47
  206. data/ext/gtk2/rbgtktargetlist.c +56 -36
  207. data/ext/gtk2/rbgtktearoffmenuitem.c +28 -16
  208. data/ext/gtk2/rbgtktextappearance.c +44 -34
  209. data/ext/gtk2/rbgtktextattributes.c +54 -42
  210. data/ext/gtk2/rbgtktextbuffer.c +188 -191
  211. data/ext/gtk2/rbgtktextchild.c +29 -18
  212. data/ext/gtk2/rbgtktextiter.c +153 -145
  213. data/ext/gtk2/rbgtktextmark.c +33 -30
  214. data/ext/gtk2/rbgtktexttag.c +34 -22
  215. data/ext/gtk2/rbgtktexttagtable.c +36 -25
  216. data/ext/gtk2/rbgtktextview.c +85 -73
  217. data/ext/gtk2/rbgtktoggleaction.c +27 -22
  218. data/ext/gtk2/rbgtktogglebutton.c +37 -26
  219. data/ext/gtk2/rbgtktoggletoolbutton.c +26 -20
  220. data/ext/gtk2/rbgtktoolbar.c +66 -69
  221. data/ext/gtk2/rbgtktoolbutton.c +27 -40
  222. data/ext/gtk2/rbgtktoolitem.c +60 -62
  223. data/ext/gtk2/rbgtktooltip.c +36 -25
  224. data/ext/gtk2/rbgtktooltips.c +42 -34
  225. data/ext/gtk2/rbgtktreedragdest.c +20 -11
  226. data/ext/gtk2/rbgtktreedragsource.c +20 -11
  227. data/ext/gtk2/rbgtktreeiter.c +58 -47
  228. data/ext/gtk2/rbgtktreemodel.c +83 -65
  229. data/ext/gtk2/rbgtktreemodelfilter.c +47 -35
  230. data/ext/gtk2/rbgtktreemodelsort.c +38 -27
  231. data/ext/gtk2/rbgtktreepath.c +55 -44
  232. data/ext/gtk2/rbgtktreerowreference.c +60 -42
  233. data/ext/gtk2/rbgtktreeselection.c +61 -52
  234. data/ext/gtk2/rbgtktreesortable.c +52 -42
  235. data/ext/gtk2/rbgtktreestore.c +88 -67
  236. data/ext/gtk2/rbgtktreeview.c +157 -185
  237. data/ext/gtk2/rbgtktreeviewcolumn.c +57 -62
  238. data/ext/gtk2/rbgtkuimanager.c +61 -61
  239. data/ext/gtk2/rbgtkvbbox.c +28 -16
  240. data/ext/gtk2/rbgtkvbox.c +29 -17
  241. data/ext/gtk2/rbgtkviewport.c +28 -16
  242. data/ext/gtk2/rbgtkvolumebutton.c +28 -16
  243. data/ext/gtk2/rbgtkvpaned.c +28 -16
  244. data/ext/gtk2/rbgtkvruler.c +28 -16
  245. data/ext/gtk2/rbgtkvscale.c +28 -16
  246. data/ext/gtk2/rbgtkvscrollbar.c +28 -16
  247. data/ext/gtk2/rbgtkvseparator.c +28 -16
  248. data/ext/gtk2/rbgtkwidget.c +284 -296
  249. data/ext/gtk2/rbgtkwindow.c +156 -214
  250. data/ext/gtk2/rbgtkwindowgroup.c +35 -24
  251. data/lib/1.8/gtk2.so +0 -0
  252. data/lib/1.9/gtk2.so +0 -0
  253. data/sample/testgtk/labels.rb +1 -0
  254. data/sample/testgtk/testgtk.rb +2 -0
  255. data/vendor/local/bin/gtk-builder-convert +29 -2
  256. data/vendor/local/bin/gtk-demo.exe +0 -0
  257. data/vendor/local/bin/gtk-query-immodules-2.0.exe +0 -0
  258. data/vendor/local/bin/gtk-update-icon-cache.exe +0 -0
  259. data/vendor/local/bin/libgailutil-18.dll +0 -0
  260. data/vendor/local/bin/libgdk-win32-2.0-0.dll +0 -0
  261. data/vendor/local/bin/libgtk-win32-2.0-0.dll +0 -0
  262. data/vendor/local/etc/gtk-2.0/gtk.immodules +1 -1
  263. data/vendor/local/include/gtk-2.0/gdk/gdk.h +4 -7
  264. data/vendor/local/include/gtk-2.0/gdk/gdkcairo.h +4 -0
  265. data/vendor/local/include/gtk-2.0/gdk/gdkdisplay.h +4 -2
  266. data/vendor/local/include/gtk-2.0/gdk/gdkdnd.h +7 -0
  267. data/vendor/local/include/gtk-2.0/gdk/gdkdrawable.h +7 -4
  268. data/vendor/local/include/gtk-2.0/gdk/gdkfont.h +1 -1
  269. data/vendor/local/include/gtk-2.0/gdk/gdkinput.h +2 -1
  270. data/vendor/local/include/gtk-2.0/gdk/gdkpixmap.h +4 -0
  271. data/vendor/local/include/gtk-2.0/gdk/gdkproperty.h +13 -9
  272. data/vendor/local/include/gtk-2.0/gdk/gdkspawn.h +2 -0
  273. data/vendor/local/include/gtk-2.0/gdk/gdkwin32.h +6 -0
  274. data/vendor/local/include/gtk-2.0/gdk/gdkwindow.h +16 -6
  275. data/vendor/local/include/gtk-2.0/gtk/gtk.h +1 -0
  276. data/vendor/local/include/gtk-2.0/gtk/gtkaboutdialog.h +18 -14
  277. data/vendor/local/include/gtk-2.0/gtk/gtkaction.h +7 -7
  278. data/vendor/local/include/gtk-2.0/gtk/gtkactiongroup.h +2 -2
  279. data/vendor/local/include/gtk-2.0/gtk/gtkassistant.h +1 -1
  280. data/vendor/local/include/gtk-2.0/gtk/gtkbutton.h +1 -1
  281. data/vendor/local/include/gtk-2.0/gtk/gtkcolorbutton.h +1 -1
  282. data/vendor/local/include/gtk-2.0/gtk/gtkcombobox.h +15 -4
  283. data/vendor/local/include/gtk-2.0/gtk/gtkcomboboxentry.h +3 -0
  284. data/vendor/local/include/gtk-2.0/gtk/gtkcomboboxtext.h +77 -0
  285. data/vendor/local/include/gtk-2.0/gtk/gtkentry.h +2 -2
  286. data/vendor/local/include/gtk-2.0/gtk/gtkentrybuffer.h +1 -1
  287. data/vendor/local/include/gtk-2.0/gtk/gtkexpander.h +1 -1
  288. data/vendor/local/include/gtk-2.0/gtk/gtkfilechooser.h +1 -1
  289. data/vendor/local/include/gtk-2.0/gtk/gtkfilechooserbutton.h +1 -1
  290. data/vendor/local/include/gtk-2.0/gtk/gtkfilefilter.h +1 -1
  291. data/vendor/local/include/gtk-2.0/gtk/gtkfilesel.h +1 -1
  292. data/vendor/local/include/gtk-2.0/gtk/gtkfontbutton.h +2 -2
  293. data/vendor/local/include/gtk-2.0/gtk/gtkfontsel.h +1 -1
  294. data/vendor/local/include/gtk-2.0/gtk/gtkframe.h +1 -1
  295. data/vendor/local/include/gtk-2.0/gtk/gtkhruler.h +4 -0
  296. data/vendor/local/include/gtk-2.0/gtk/gtkiconfactory.h +3 -3
  297. data/vendor/local/include/gtk-2.0/gtk/gtkicontheme.h +2 -2
  298. data/vendor/local/include/gtk-2.0/gtk/gtkimage.h +1 -1
  299. data/vendor/local/include/gtk-2.0/gtk/gtkitemfactory.h +1 -1
  300. data/vendor/local/include/gtk-2.0/gtk/gtklabel.h +3 -3
  301. data/vendor/local/include/gtk-2.0/gtk/gtklinkbutton.h +3 -1
  302. data/vendor/local/include/gtk-2.0/gtk/gtkmain.h +5 -2
  303. data/vendor/local/include/gtk-2.0/gtk/gtkmenu.h +1 -1
  304. data/vendor/local/include/gtk-2.0/gtk/gtkmenuitem.h +3 -3
  305. data/vendor/local/include/gtk-2.0/gtk/gtknotebook.h +9 -7
  306. data/vendor/local/include/gtk-2.0/gtk/gtkpapersize.h +4 -4
  307. data/vendor/local/include/gtk-2.0/gtk/gtkprintoperation.h +1 -1
  308. data/vendor/local/include/gtk-2.0/gtk/gtkprintsettings.h +7 -7
  309. data/vendor/local/include/gtk-2.0/gtk/gtkprivate.h +25 -2
  310. data/vendor/local/include/gtk-2.0/gtk/gtkprogressbar.h +1 -1
  311. data/vendor/local/include/gtk-2.0/gtk/gtkrange.h +6 -0
  312. data/vendor/local/include/gtk-2.0/gtk/gtkrecentfilter.h +1 -1
  313. data/vendor/local/include/gtk-2.0/gtk/gtkrecentmanager.h +4 -4
  314. data/vendor/local/include/gtk-2.0/gtk/gtkruler.h +4 -0
  315. data/vendor/local/include/gtk-2.0/gtk/gtkstatusicon.h +3 -3
  316. data/vendor/local/include/gtk-2.0/gtk/gtktextmark.h +1 -1
  317. data/vendor/local/include/gtk-2.0/gtk/gtktoolbutton.h +3 -3
  318. data/vendor/local/include/gtk-2.0/gtk/gtktoolitemgroup.h +1 -1
  319. data/vendor/local/include/gtk-2.0/gtk/gtktoolpalette.h +2 -2
  320. data/vendor/local/include/gtk-2.0/gtk/gtktreeviewcolumn.h +1 -1
  321. data/vendor/local/include/gtk-2.0/gtk/gtktypeutils.h +2 -0
  322. data/vendor/local/include/gtk-2.0/gtk/gtkversion.h +4 -4
  323. data/vendor/local/include/gtk-2.0/gtk/gtkvruler.h +4 -0
  324. data/vendor/local/include/gtk-2.0/gtk/gtkwidget.h +6 -2
  325. data/vendor/local/include/gtk-2.0/gtk/gtkwindow.h +8 -7
  326. data/vendor/local/lib/gailutil.lib +0 -0
  327. data/vendor/local/lib/gdk-win32-2.0.lib +0 -0
  328. data/vendor/local/lib/gtk-2.0/2.10.0/engines/libpixmap.dll +0 -0
  329. data/vendor/local/lib/gtk-2.0/2.10.0/engines/libwimp.dll +0 -0
  330. data/vendor/local/lib/gtk-2.0/modules/libgail.dll +0 -0
  331. data/vendor/local/lib/gtk-win32-2.0.lib +0 -0
  332. data/vendor/local/lib/libgailutil.dll.a +0 -0
  333. data/vendor/local/lib/libgdk-win32-2.0.dll.a +0 -0
  334. data/vendor/local/lib/libgtk-win32-2.0.dll.a +0 -0
  335. data/vendor/local/lib/pkgconfig/gail.pc +1 -1
  336. data/vendor/local/lib/pkgconfig/gdk-2.0.pc +1 -1
  337. data/vendor/local/lib/pkgconfig/gdk-win32-2.0.pc +1 -1
  338. data/vendor/local/lib/pkgconfig/gtk+-2.0.pc +1 -1
  339. data/vendor/local/lib/pkgconfig/gtk+-win32-2.0.pc +1 -1
  340. data/vendor/local/manifest/{gtk+-dev_2.22.1-1_win32.mft → gtk+-dev_2.24.8-1_win32.mft} +10 -8
  341. data/vendor/local/manifest/{gtk+_2.22.1-1_win32.mft → gtk+_2.24.8-1_win32.mft} +2 -6
  342. data/vendor/local/share/doc/{gtk+-2.22.1 → gtk+-2.24.8}/COPYING +0 -0
  343. data/vendor/local/share/doc/{gtk+-dev-2.22.1 → gtk+-dev-2.24.8}/COPYING +0 -0
  344. data/vendor/local/share/gtk-2.0/demo/appwindow.c +0 -21
  345. data/vendor/local/share/gtk-2.0/demo/combobox.c +6 -6
  346. data/vendor/local/share/gtk-2.0/demo/editable_cells.c +5 -5
  347. data/vendor/local/share/gtk-2.0/demo/iconview.c +1 -0
  348. data/vendor/local/share/gtk-2.0/demo/offscreen_window.c +1 -1
  349. data/vendor/local/share/gtk-2.0/demo/offscreen_window2.c +1 -1
  350. data/vendor/local/share/gtk-2.0/demo/sizegroup.c +2 -2
  351. data/vendor/local/share/gtk-2.0/demo/textview.c +4 -4
  352. data/vendor/local/share/gtk-doc/html/gail-libgail-util/gail-libgail-util-GailMisc.html +74 -108
  353. data/vendor/local/share/gtk-doc/html/gail-libgail-util/gail-libgail-util-GailTextUtil.html +48 -62
  354. data/vendor/local/share/gtk-doc/html/gail-libgail-util/gail-libgail-util.devhelp +1 -1
  355. data/vendor/local/share/gtk-doc/html/gail-libgail-util/gail-libgail-util.devhelp2 +1 -1
  356. data/vendor/local/share/gtk-doc/html/gail-libgail-util/index.html +3 -3
  357. data/vendor/local/share/gtk-doc/html/gail-libgail-util/libgail-util-main.html +3 -3
  358. data/vendor/local/share/gtk-doc/html/gail-libgail-util/style.css +2 -1
  359. data/vendor/local/share/gtk-doc/html/gdk/GdkDisplay.html +154 -211
  360. data/vendor/local/share/gtk-doc/html/gdk/GdkDisplayManager.html +35 -39
  361. data/vendor/local/share/gtk-doc/html/gdk/GdkScreen.html +182 -241
  362. data/vendor/local/share/gtk-doc/html/gdk/annotation-glossary.html +9 -6
  363. data/vendor/local/share/gtk-doc/html/gdk/api-index-2-10.html +7 -7
  364. data/vendor/local/share/gtk-doc/html/gdk/api-index-2-12.html +8 -8
  365. data/vendor/local/share/gtk-doc/html/gdk/api-index-2-14.html +7 -7
  366. data/vendor/local/share/gtk-doc/html/gdk/api-index-2-16.html +6 -6
  367. data/vendor/local/share/gtk-doc/html/gdk/api-index-2-18.html +6 -6
  368. data/vendor/local/share/gtk-doc/html/gdk/api-index-2-2.html +26 -26
  369. data/vendor/local/share/gtk-doc/html/gdk/api-index-2-20.html +6 -6
  370. data/vendor/local/share/gtk-doc/html/gdk/api-index-2-22.html +6 -6
  371. data/vendor/local/share/gtk-doc/html/gdk/api-index-2-4.html +7 -7
  372. data/vendor/local/share/gtk-doc/html/gdk/api-index-2-6.html +10 -10
  373. data/vendor/local/share/gtk-doc/html/gdk/api-index-2-8.html +10 -10
  374. data/vendor/local/share/gtk-doc/html/gdk/api-index-deprecated.html +150 -20
  375. data/vendor/local/share/gtk-doc/html/gdk/api-index-full.html +174 -138
  376. data/vendor/local/share/gtk-doc/html/gdk/gdk-Application-launching.html +24 -27
  377. data/vendor/local/share/gtk-doc/html/gdk/gdk-Bitmaps-and-Pixmaps.html +136 -136
  378. data/vendor/local/share/gtk-doc/html/gdk/gdk-Cairo-Interaction.html +88 -46
  379. data/vendor/local/share/gtk-doc/html/gdk/gdk-Colormaps-and-Colors.html +139 -203
  380. data/vendor/local/share/gtk-doc/html/gdk/gdk-Cursors.html +76 -95
  381. data/vendor/local/share/gtk-doc/html/gdk/gdk-Drag-and-Drop.html +164 -203
  382. data/vendor/local/share/gtk-doc/html/gdk/gdk-Drawing-Primitives.html +303 -419
  383. data/vendor/local/share/gtk-doc/html/gdk/gdk-Event-Structures.html +324 -439
  384. data/vendor/local/share/gtk-doc/html/gdk/gdk-Events.html +114 -147
  385. data/vendor/local/share/gtk-doc/html/gdk/gdk-Fonts.html +157 -236
  386. data/vendor/local/share/gtk-doc/html/gdk/gdk-GdkRGB.html +159 -233
  387. data/vendor/local/share/gtk-doc/html/gdk/gdk-General.html +114 -134
  388. data/vendor/local/share/gtk-doc/html/gdk/gdk-Graphics-Contexts.html +170 -252
  389. data/vendor/local/share/gtk-doc/html/gdk/gdk-Images.html +92 -133
  390. data/vendor/local/share/gtk-doc/html/gdk/gdk-Input-Devices.html +146 -194
  391. data/vendor/local/share/gtk-doc/html/gdk/gdk-Input.html +37 -55
  392. data/vendor/local/share/gtk-doc/html/gdk/gdk-Keyboard-Handling.html +183 -198
  393. data/vendor/local/share/gtk-doc/html/gdk/gdk-Pango-Interaction.html +94 -121
  394. data/vendor/local/share/gtk-doc/html/gdk/gdk-Pixbufs.html +100 -158
  395. data/vendor/local/share/gtk-doc/html/gdk/gdk-Points-Rectangles-and-Regions.html +147 -179
  396. data/vendor/local/share/gtk-doc/html/gdk/gdk-Properties-and-Atoms.html +190 -237
  397. data/vendor/local/share/gtk-doc/html/gdk/gdk-Selections.html +100 -137
  398. data/vendor/local/share/gtk-doc/html/gdk/gdk-Testing.html +26 -39
  399. data/vendor/local/share/gtk-doc/html/gdk/gdk-Threads.html +61 -87
  400. data/vendor/local/share/gtk-doc/html/gdk/gdk-Visuals.html +86 -111
  401. data/vendor/local/share/gtk-doc/html/gdk/gdk-Windows.html +725 -801
  402. data/vendor/local/share/gtk-doc/html/gdk/gdk.devhelp +51 -134
  403. data/vendor/local/share/gtk-doc/html/gdk/gdk.devhelp2 +75 -158
  404. data/vendor/local/share/gtk-doc/html/gdk/index.html +10 -13
  405. data/vendor/local/share/gtk-doc/html/gdk/index.sgml +10 -94
  406. data/vendor/local/share/gtk-doc/html/gdk/multihead.html +15 -15
  407. data/vendor/local/share/gtk-doc/html/gdk/reference.html +8 -10
  408. data/vendor/local/share/gtk-doc/html/gdk/style.css +2 -1
  409. data/vendor/local/share/gtk-doc/html/gtk/AbstractObjects.html +5 -5
  410. data/vendor/local/share/gtk-doc/html/gtk/Actions.html +5 -5
  411. data/vendor/local/share/gtk-doc/html/gtk/Builder.html +5 -5
  412. data/vendor/local/share/gtk-doc/html/gtk/ButtonWidgets.html +5 -5
  413. data/vendor/local/share/gtk-doc/html/gtk/DeprecatedObjects.html +5 -5
  414. data/vendor/local/share/gtk-doc/html/gtk/DisplayWidgets.html +5 -5
  415. data/vendor/local/share/gtk-doc/html/gtk/GtkAboutDialog.html +228 -212
  416. data/vendor/local/share/gtk-doc/html/gtk/GtkAccelLabel.html +41 -49
  417. data/vendor/local/share/gtk-doc/html/gtk/GtkAccessible.html +20 -20
  418. data/vendor/local/share/gtk-doc/html/gtk/GtkAction.html +181 -248
  419. data/vendor/local/share/gtk-doc/html/gtk/GtkActionGroup.html +178 -261
  420. data/vendor/local/share/gtk-doc/html/gtk/GtkActivatable.html +48 -52
  421. data/vendor/local/share/gtk-doc/html/gtk/GtkAdjustment.html +80 -116
  422. data/vendor/local/share/gtk-doc/html/gtk/GtkAlignment.html +58 -68
  423. data/vendor/local/share/gtk-doc/html/gtk/GtkArrow.html +32 -38
  424. data/vendor/local/share/gtk-doc/html/gtk/GtkAspectFrame.html +38 -48
  425. data/vendor/local/share/gtk-doc/html/gtk/GtkAssistant.html +113 -134
  426. data/vendor/local/share/gtk-doc/html/gtk/GtkBin.html +16 -16
  427. data/vendor/local/share/gtk-doc/html/gtk/GtkBox.html +97 -122
  428. data/vendor/local/share/gtk-doc/html/gtk/GtkBuildable.html +88 -116
  429. data/vendor/local/share/gtk-doc/html/gtk/GtkBuilder.html +100 -139
  430. data/vendor/local/share/gtk-doc/html/gtk/GtkButton.html +156 -187
  431. data/vendor/local/share/gtk-doc/html/gtk/GtkButtonBox.html +61 -78
  432. data/vendor/local/share/gtk-doc/html/gtk/GtkCList.html +637 -917
  433. data/vendor/local/share/gtk-doc/html/gtk/GtkCTree.html +570 -1841
  434. data/vendor/local/share/gtk-doc/html/gtk/GtkCalendar.html +130 -165
  435. data/vendor/local/share/gtk-doc/html/gtk/GtkCellEditable.html +38 -40
  436. data/vendor/local/share/gtk-doc/html/gtk/GtkCellLayout.html +62 -89
  437. data/vendor/local/share/gtk-doc/html/gtk/GtkCellRenderer.html +136 -160
  438. data/vendor/local/share/gtk-doc/html/gtk/GtkCellRendererAccel.html +40 -49
  439. data/vendor/local/share/gtk-doc/html/gtk/GtkCellRendererCombo.html +29 -34
  440. data/vendor/local/share/gtk-doc/html/gtk/GtkCellRendererPixbuf.html +33 -34
  441. data/vendor/local/share/gtk-doc/html/gtk/GtkCellRendererProgress.html +25 -27
  442. data/vendor/local/share/gtk-doc/html/gtk/GtkCellRendererSpin.html +21 -22
  443. data/vendor/local/share/gtk-doc/html/gtk/GtkCellRendererSpinner.html +21 -22
  444. data/vendor/local/share/gtk-doc/html/gtk/GtkCellRendererText.html +75 -80
  445. data/vendor/local/share/gtk-doc/html/gtk/GtkCellRendererToggle.html +47 -56
  446. data/vendor/local/share/gtk-doc/html/gtk/GtkCellView.html +65 -83
  447. data/vendor/local/share/gtk-doc/html/gtk/GtkCheckButton.html +32 -36
  448. data/vendor/local/share/gtk-doc/html/gtk/GtkColorButton.html +63 -85
  449. data/vendor/local/share/gtk-doc/html/gtk/GtkColorSelection.html +128 -200
  450. data/vendor/local/share/gtk-doc/html/gtk/GtkColorSelectionDialog.html +31 -34
  451. data/vendor/local/share/gtk-doc/html/gtk/GtkCombo.html +65 -83
  452. data/vendor/local/share/gtk-doc/html/gtk/GtkComboBox.html +346 -188
  453. data/vendor/local/share/gtk-doc/html/gtk/GtkComboBoxEntry.html +59 -48
  454. data/vendor/local/share/gtk-doc/html/gtk/GtkComboBoxText.html +328 -0
  455. data/vendor/local/share/gtk-doc/html/gtk/GtkContainer.html +170 -262
  456. data/vendor/local/share/gtk-doc/html/gtk/GtkCurve.html +63 -81
  457. data/vendor/local/share/gtk-doc/html/gtk/GtkDialog.html +102 -124
  458. data/vendor/local/share/gtk-doc/html/gtk/GtkDrawingArea.html +28 -30
  459. data/vendor/local/share/gtk-doc/html/gtk/GtkEditable.html +71 -90
  460. data/vendor/local/share/gtk-doc/html/gtk/GtkEntry.html +389 -491
  461. data/vendor/local/share/gtk-doc/html/gtk/GtkEntryBuffer.html +73 -106
  462. data/vendor/local/share/gtk-doc/html/gtk/GtkEntryCompletion.html +132 -187
  463. data/vendor/local/share/gtk-doc/html/gtk/GtkEventBox.html +37 -42
  464. data/vendor/local/share/gtk-doc/html/gtk/GtkExpander.html +80 -100
  465. data/vendor/local/share/gtk-doc/html/gtk/GtkFileChooser.html +358 -414
  466. data/vendor/local/share/gtk-doc/html/gtk/GtkFileChooserButton.html +71 -94
  467. data/vendor/local/share/gtk-doc/html/gtk/GtkFileChooserDialog.html +32 -37
  468. data/vendor/local/share/gtk-doc/html/gtk/GtkFileChooserWidget.html +23 -28
  469. data/vendor/local/share/gtk-doc/html/gtk/GtkFileSelection.html +104 -148
  470. data/vendor/local/share/gtk-doc/html/gtk/GtkFixed.html +43 -54
  471. data/vendor/local/share/gtk-doc/html/gtk/GtkFontButton.html +64 -90
  472. data/vendor/local/share/gtk-doc/html/gtk/GtkFontSelection.html +70 -85
  473. data/vendor/local/share/gtk-doc/html/gtk/GtkFontSelectionDialog.html +54 -63
  474. data/vendor/local/share/gtk-doc/html/gtk/GtkFrame.html +55 -60
  475. data/vendor/local/share/gtk-doc/html/gtk/GtkGammaCurve.html +20 -21
  476. data/vendor/local/share/gtk-doc/html/gtk/GtkHBox.html +19 -22
  477. data/vendor/local/share/gtk-doc/html/gtk/GtkHButtonBox.html +31 -36
  478. data/vendor/local/share/gtk-doc/html/gtk/GtkHPaned.html +15 -15
  479. data/vendor/local/share/gtk-doc/html/gtk/GtkHRuler.html +32 -26
  480. data/vendor/local/share/gtk-doc/html/gtk/GtkHSV.html +67 -92
  481. data/vendor/local/share/gtk-doc/html/gtk/GtkHScale.html +27 -32
  482. data/vendor/local/share/gtk-doc/html/gtk/GtkHScrollbar.html +20 -20
  483. data/vendor/local/share/gtk-doc/html/gtk/GtkHSeparator.html +21 -22
  484. data/vendor/local/share/gtk-doc/html/gtk/GtkHandleBox.html +57 -68
  485. data/vendor/local/share/gtk-doc/html/gtk/GtkIMContext.html +153 -191
  486. data/vendor/local/share/gtk-doc/html/gtk/GtkIMContextSimple.html +20 -24
  487. data/vendor/local/share/gtk-doc/html/gtk/GtkIMMulticontext.html +20 -24
  488. data/vendor/local/share/gtk-doc/html/gtk/GtkIconTheme.html +213 -271
  489. data/vendor/local/share/gtk-doc/html/gtk/GtkIconView.html +333 -455
  490. data/vendor/local/share/gtk-doc/html/gtk/GtkImage.html +241 -262
  491. data/vendor/local/share/gtk-doc/html/gtk/GtkImageMenuItem.html +60 -71
  492. data/vendor/local/share/gtk-doc/html/gtk/GtkInfoBar.html +69 -82
  493. data/vendor/local/share/gtk-doc/html/gtk/GtkInputDialog.html +37 -42
  494. data/vendor/local/share/gtk-doc/html/gtk/GtkInvisible.html +42 -50
  495. data/vendor/local/share/gtk-doc/html/gtk/GtkItem.html +38 -44
  496. data/vendor/local/share/gtk-doc/html/gtk/GtkItemFactory.html +185 -276
  497. data/vendor/local/share/gtk-doc/html/gtk/GtkLabel.html +201 -251
  498. data/vendor/local/share/gtk-doc/html/gtk/GtkLayout.html +72 -78
  499. data/vendor/local/share/gtk-doc/html/gtk/GtkLinkButton.html +55 -64
  500. data/vendor/local/share/gtk-doc/html/gtk/GtkList.html +132 -182
  501. data/vendor/local/share/gtk-doc/html/gtk/GtkListItem.html +82 -132
  502. data/vendor/local/share/gtk-doc/html/gtk/GtkListStore.html +142 -172
  503. data/vendor/local/share/gtk-doc/html/gtk/GtkMenu.html +185 -229
  504. data/vendor/local/share/gtk-doc/html/gtk/GtkMenuBar.html +43 -51
  505. data/vendor/local/share/gtk-doc/html/gtk/GtkMenuItem.html +114 -147
  506. data/vendor/local/share/gtk-doc/html/gtk/GtkMenuShell.html +89 -121
  507. data/vendor/local/share/gtk-doc/html/gtk/GtkMenuToolButton.html +75 -51
  508. data/vendor/local/share/gtk-doc/html/gtk/GtkMessageDialog.html +83 -83
  509. data/vendor/local/share/gtk-doc/html/gtk/GtkMisc.html +37 -41
  510. data/vendor/local/share/gtk-doc/html/gtk/GtkNotebook.html +398 -454
  511. data/vendor/local/share/gtk-doc/html/gtk/GtkObject.html +150 -208
  512. data/vendor/local/share/gtk-doc/html/gtk/GtkOffscreenWindow.html +30 -34
  513. data/vendor/local/share/gtk-doc/html/gtk/GtkOldEditable.html +82 -167
  514. data/vendor/local/share/gtk-doc/html/gtk/GtkOptionMenu.html +58 -68
  515. data/vendor/local/share/gtk-doc/html/gtk/GtkPageSetup.html +117 -162
  516. data/vendor/local/share/gtk-doc/html/gtk/GtkPageSetupUnixDialog.html +24 -27
  517. data/vendor/local/share/gtk-doc/html/gtk/GtkPaned.html +99 -139
  518. data/vendor/local/share/gtk-doc/html/gtk/{gtk-GtkPaperSize.html → GtkPaperSize.html} +206 -254
  519. data/vendor/local/share/gtk-doc/html/gtk/GtkPixmap.html +51 -61
  520. data/vendor/local/share/gtk-doc/html/gtk/GtkPlug.html +67 -83
  521. data/vendor/local/share/gtk-doc/html/gtk/GtkPreview.html +122 -149
  522. data/vendor/local/share/gtk-doc/html/gtk/GtkPrintContext.html +40 -51
  523. data/vendor/local/share/gtk-doc/html/gtk/GtkPrintJob.html +57 -72
  524. data/vendor/local/share/gtk-doc/html/gtk/GtkPrintSettings.html +284 -413
  525. data/vendor/local/share/gtk-doc/html/gtk/GtkPrintUnixDialog.html +76 -96
  526. data/vendor/local/share/gtk-doc/html/gtk/GtkPrinter.html +112 -142
  527. data/vendor/local/share/gtk-doc/html/gtk/GtkProgress.html +82 -113
  528. data/vendor/local/share/gtk-doc/html/gtk/GtkProgressBar.html +93 -110
  529. data/vendor/local/share/gtk-doc/html/gtk/GtkRadioAction.html +44 -55
  530. data/vendor/local/share/gtk-doc/html/gtk/GtkRadioButton.html +88 -81
  531. data/vendor/local/share/gtk-doc/html/gtk/GtkRadioMenuItem.html +65 -73
  532. data/vendor/local/share/gtk-doc/html/gtk/GtkRadioToolButton.html +35 -44
  533. data/vendor/local/share/gtk-doc/html/gtk/GtkRange.html +224 -188
  534. data/vendor/local/share/gtk-doc/html/gtk/GtkRecentAction.html +36 -43
  535. data/vendor/local/share/gtk-doc/html/gtk/GtkRecentChooser.html +137 -196
  536. data/vendor/local/share/gtk-doc/html/gtk/GtkRecentChooserDialog.html +29 -31
  537. data/vendor/local/share/gtk-doc/html/gtk/GtkRecentChooserMenu.html +27 -32
  538. data/vendor/local/share/gtk-doc/html/gtk/GtkRecentChooserWidget.html +19 -21
  539. data/vendor/local/share/gtk-doc/html/gtk/GtkRecentFilter.html +67 -89
  540. data/vendor/local/share/gtk-doc/html/gtk/GtkRecentManager.html +219 -286
  541. data/vendor/local/share/gtk-doc/html/gtk/GtkRuler.html +85 -60
  542. data/vendor/local/share/gtk-doc/html/gtk/GtkScale.html +63 -74
  543. data/vendor/local/share/gtk-doc/html/gtk/GtkScaleButton.html +67 -84
  544. data/vendor/local/share/gtk-doc/html/gtk/GtkScrollbar.html +23 -23
  545. data/vendor/local/share/gtk-doc/html/gtk/GtkScrolledWindow.html +98 -146
  546. data/vendor/local/share/gtk-doc/html/gtk/GtkSeparator.html +15 -15
  547. data/vendor/local/share/gtk-doc/html/gtk/GtkSeparatorMenuItem.html +19 -20
  548. data/vendor/local/share/gtk-doc/html/gtk/GtkSeparatorToolItem.html +26 -29
  549. data/vendor/local/share/gtk-doc/html/gtk/GtkSettings.html +134 -264
  550. data/vendor/local/share/gtk-doc/html/gtk/GtkSizeGroup.html +40 -47
  551. data/vendor/local/share/gtk-doc/html/gtk/GtkSocket.html +52 -61
  552. data/vendor/local/share/gtk-doc/html/gtk/GtkSpinButton.html +134 -179
  553. data/vendor/local/share/gtk-doc/html/gtk/GtkSpinner.html +26 -27
  554. data/vendor/local/share/gtk-doc/html/gtk/GtkStatusIcon.html +221 -285
  555. data/vendor/local/share/gtk-doc/html/gtk/GtkStatusbar.html +62 -77
  556. data/vendor/local/share/gtk-doc/html/gtk/GtkStyle.html +754 -1135
  557. data/vendor/local/share/gtk-doc/html/gtk/GtkTable.html +96 -137
  558. data/vendor/local/share/gtk-doc/html/gtk/GtkTearoffMenuItem.html +20 -21
  559. data/vendor/local/share/gtk-doc/html/gtk/GtkText.html +105 -148
  560. data/vendor/local/share/gtk-doc/html/gtk/GtkTextBuffer.html +527 -685
  561. data/vendor/local/share/gtk-doc/html/gtk/{gtk-GtkTextIter.html → GtkTextIter.html} +666 -807
  562. data/vendor/local/share/gtk-doc/html/gtk/GtkTextMark.html +43 -48
  563. data/vendor/local/share/gtk-doc/html/gtk/GtkTextTag.html +180 -210
  564. data/vendor/local/share/gtk-doc/html/gtk/GtkTextTagTable.html +86 -78
  565. data/vendor/local/share/gtk-doc/html/gtk/GtkTextView.html +355 -439
  566. data/vendor/local/share/gtk-doc/html/gtk/GtkTipsQuery.html +76 -96
  567. data/vendor/local/share/gtk-doc/html/gtk/GtkToggleAction.html +45 -59
  568. data/vendor/local/share/gtk-doc/html/gtk/GtkToggleButton.html +61 -73
  569. data/vendor/local/share/gtk-doc/html/gtk/GtkToggleToolButton.html +34 -40
  570. data/vendor/local/share/gtk-doc/html/gtk/GtkToolButton.html +82 -93
  571. data/vendor/local/share/gtk-doc/html/gtk/GtkToolItem.html +135 -168
  572. data/vendor/local/share/gtk-doc/html/gtk/GtkToolItemGroup.html +86 -105
  573. data/vendor/local/share/gtk-doc/html/gtk/GtkToolPalette.html +121 -144
  574. data/vendor/local/share/gtk-doc/html/gtk/GtkToolShell.html +44 -61
  575. data/vendor/local/share/gtk-doc/html/gtk/GtkToolbar.html +251 -362
  576. data/vendor/local/share/gtk-doc/html/gtk/GtkTooltip.html +37 -37
  577. data/vendor/local/share/gtk-doc/html/gtk/GtkTooltips.html +62 -72
  578. data/vendor/local/share/gtk-doc/html/gtk/GtkTree.html +107 -154
  579. data/vendor/local/share/gtk-doc/html/gtk/GtkTreeItem.html +48 -136
  580. data/vendor/local/share/gtk-doc/html/gtk/GtkTreeModel.html +434 -566
  581. data/vendor/local/share/gtk-doc/html/gtk/GtkTreeModelFilter.html +97 -127
  582. data/vendor/local/share/gtk-doc/html/gtk/GtkTreeModelSort.html +65 -72
  583. data/vendor/local/share/gtk-doc/html/gtk/GtkTreeSelection.html +125 -173
  584. data/vendor/local/share/gtk-doc/html/gtk/GtkTreeSortable.html +55 -64
  585. data/vendor/local/share/gtk-doc/html/gtk/GtkTreeStore.html +173 -202
  586. data/vendor/local/share/gtk-doc/html/gtk/GtkTreeView.html +588 -867
  587. data/vendor/local/share/gtk-doc/html/gtk/GtkTreeViewColumn.html +209 -288
  588. data/vendor/local/share/gtk-doc/html/gtk/GtkUIManager.html +127 -191
  589. data/vendor/local/share/gtk-doc/html/gtk/GtkVBox.html +19 -22
  590. data/vendor/local/share/gtk-doc/html/gtk/GtkVButtonBox.html +29 -36
  591. data/vendor/local/share/gtk-doc/html/gtk/GtkVPaned.html +16 -16
  592. data/vendor/local/share/gtk-doc/html/gtk/GtkVRuler.html +33 -26
  593. data/vendor/local/share/gtk-doc/html/gtk/GtkVScale.html +26 -31
  594. data/vendor/local/share/gtk-doc/html/gtk/GtkVScrollbar.html +20 -20
  595. data/vendor/local/share/gtk-doc/html/gtk/GtkVSeparator.html +19 -20
  596. data/vendor/local/share/gtk-doc/html/gtk/GtkViewport.html +60 -71
  597. data/vendor/local/share/gtk-doc/html/gtk/GtkVolumeButton.html +18 -19
  598. data/vendor/local/share/gtk-doc/html/gtk/GtkWidget.html +1499 -1795
  599. data/vendor/local/share/gtk-doc/html/gtk/GtkWindow.html +447 -597
  600. data/vendor/local/share/gtk-doc/html/gtk/GtkWindowGroup.html +23 -41
  601. data/vendor/local/share/gtk-doc/html/gtk/LayoutContainers.html +5 -5
  602. data/vendor/local/share/gtk-doc/html/gtk/MenusAndCombos.html +8 -5
  603. data/vendor/local/share/gtk-doc/html/gtk/MiscObjects.html +5 -5
  604. data/vendor/local/share/gtk-doc/html/gtk/NumericEntry.html +5 -5
  605. data/vendor/local/share/gtk-doc/html/gtk/Ornaments.html +5 -5
  606. data/vendor/local/share/gtk-doc/html/gtk/PlugSocket.html +5 -5
  607. data/vendor/local/share/gtk-doc/html/gtk/Printing.html +6 -6
  608. data/vendor/local/share/gtk-doc/html/gtk/RecentDocuments.html +5 -5
  609. data/vendor/local/share/gtk-doc/html/gtk/ScrollingWidgets.html +5 -5
  610. data/vendor/local/share/gtk-doc/html/gtk/SelectorWidgets.html +5 -5
  611. data/vendor/local/share/gtk-doc/html/gtk/SpecialObjects.html +5 -5
  612. data/vendor/local/share/gtk-doc/html/gtk/TextWidget.html +18 -18
  613. data/vendor/local/share/gtk-doc/html/gtk/TextWidgetObjects.html +6 -6
  614. data/vendor/local/share/gtk-doc/html/gtk/TreeWidget.html +18 -18
  615. data/vendor/local/share/gtk-doc/html/gtk/TreeWidgetObjects.html +5 -5
  616. data/vendor/local/share/gtk-doc/html/gtk/WindowWidgets.html +5 -5
  617. data/vendor/local/share/gtk-doc/html/gtk/annotation-glossary.html +20 -14
  618. data/vendor/local/share/gtk-doc/html/gtk/api-index-2-10.html +23 -23
  619. data/vendor/local/share/gtk-doc/html/gtk/api-index-2-12.html +9 -9
  620. data/vendor/local/share/gtk-doc/html/gtk/api-index-2-14.html +6 -6
  621. data/vendor/local/share/gtk-doc/html/gtk/api-index-2-16.html +7 -7
  622. data/vendor/local/share/gtk-doc/html/gtk/api-index-2-18.html +6 -6
  623. data/vendor/local/share/gtk-doc/html/gtk/api-index-2-2.html +8 -8
  624. data/vendor/local/share/gtk-doc/html/gtk/api-index-2-20.html +6 -6
  625. data/vendor/local/share/gtk-doc/html/gtk/api-index-2-22.html +8 -8
  626. data/vendor/local/share/gtk-doc/html/gtk/api-index-2-24.html +121 -0
  627. data/vendor/local/share/gtk-doc/html/gtk/api-index-2-4.html +31 -31
  628. data/vendor/local/share/gtk-doc/html/gtk/api-index-2-6.html +6 -6
  629. data/vendor/local/share/gtk-doc/html/gtk/api-index-2-8.html +10 -10
  630. data/vendor/local/share/gtk-doc/html/gtk/api-index-deprecated.html +239 -48
  631. data/vendor/local/share/gtk-doc/html/gtk/api-index-full.html +476 -388
  632. data/vendor/local/share/gtk-doc/html/gtk/ch01.html +17 -6
  633. data/vendor/local/share/gtk-doc/html/gtk/ch02.html +6 -6
  634. data/vendor/local/share/gtk-doc/html/gtk/chap-drawing-model.html +19 -19
  635. data/vendor/local/share/gtk-doc/html/gtk/checklist-gdkeventexpose-region.html +7 -7
  636. data/vendor/local/share/gtk-doc/html/gtk/checklist-modifiers.html +6 -6
  637. data/vendor/local/share/gtk-doc/html/gtk/checklist-named-icons.html +6 -6
  638. data/vendor/local/share/gtk-doc/html/gtk/decorating-the-assistant-pages.html +5 -5
  639. data/vendor/local/share/gtk-doc/html/gtk/glossary.html +6 -6
  640. data/vendor/local/share/gtk-doc/html/gtk/gtk-Accelerator-Maps.html +78 -133
  641. data/vendor/local/share/gtk-doc/html/gtk/gtk-Bindings.html +172 -234
  642. data/vendor/local/share/gtk-doc/html/gtk/gtk-Clipboards.html +235 -339
  643. data/vendor/local/share/gtk-doc/html/gtk/gtk-Drag-and-Drop.html +248 -318
  644. data/vendor/local/share/gtk-doc/html/gtk/gtk-Feature-Test-Macros.html +37 -43
  645. data/vendor/local/share/gtk-doc/html/gtk/gtk-Filesystem-utilities.html +54 -60
  646. data/vendor/local/share/gtk-doc/html/gtk/gtk-General.html +295 -339
  647. data/vendor/local/share/gtk-doc/html/gtk/gtk-Graphics-Contexts.html +36 -42
  648. data/vendor/local/share/gtk-doc/html/gtk/gtk-GtkTreeView-drag-and-drop.html +80 -85
  649. data/vendor/local/share/gtk-doc/html/gtk/gtk-High-level-Printing-API.html +225 -293
  650. data/vendor/local/share/gtk-doc/html/gtk/gtk-Keyboard-Accelerators.html +180 -268
  651. data/vendor/local/share/gtk-doc/html/gtk/gtk-Orientable.html +19 -22
  652. data/vendor/local/share/gtk-doc/html/gtk/gtk-Resource-Files.html +159 -195
  653. data/vendor/local/share/gtk-doc/html/gtk/gtk-Selections.html +377 -450
  654. data/vendor/local/share/gtk-doc/html/gtk/gtk-Signals.html +192 -308
  655. data/vendor/local/share/gtk-doc/html/gtk/gtk-Standard-Enumerations.html +55 -55
  656. data/vendor/local/share/gtk-doc/html/gtk/gtk-Stock-Items.html +154 -158
  657. data/vendor/local/share/gtk-doc/html/gtk/gtk-Testing.html +95 -143
  658. data/vendor/local/share/gtk-doc/html/gtk/gtk-Themeable-Stock-Images.html +212 -243
  659. data/vendor/local/share/gtk-doc/html/gtk/gtk-Types.html +273 -345
  660. data/vendor/local/share/gtk-doc/html/gtk/gtk-builder-convert.html +20 -13
  661. data/vendor/local/share/gtk-doc/html/gtk/gtk-building.html +22 -22
  662. data/vendor/local/share/gtk-doc/html/gtk/gtk-changes-1-2.html +7 -7
  663. data/vendor/local/share/gtk-doc/html/gtk/gtk-changes-2-0.html +7 -7
  664. data/vendor/local/share/gtk-doc/html/gtk/gtk-compiling.html +9 -9
  665. data/vendor/local/share/gtk-doc/html/gtk/gtk-directfb.html +9 -9
  666. data/vendor/local/share/gtk-doc/html/gtk/gtk-gtkcheckmenuitem.html +65 -77
  667. data/vendor/local/share/gtk-doc/html/gtk/gtk-gtkfilefilter.html +62 -79
  668. data/vendor/local/share/gtk-doc/html/gtk/gtk-migrating-ClientSideWindows.html +15 -15
  669. data/vendor/local/share/gtk-doc/html/gtk/gtk-migrating-GtkAboutDialog.html +8 -8
  670. data/vendor/local/share/gtk-doc/html/gtk/gtk-migrating-GtkAction.html +6 -6
  671. data/vendor/local/share/gtk-doc/html/gtk/gtk-migrating-GtkAssistant.html +6 -6
  672. data/vendor/local/share/gtk-doc/html/gtk/gtk-migrating-GtkBuilder.html +7 -12
  673. data/vendor/local/share/gtk-doc/html/gtk/gtk-migrating-GtkColorButton.html +5 -5
  674. data/vendor/local/share/gtk-doc/html/gtk/gtk-migrating-GtkComboBox.html +6 -6
  675. data/vendor/local/share/gtk-doc/html/gtk/gtk-migrating-GtkFileChooser.html +7 -7
  676. data/vendor/local/share/gtk-doc/html/gtk/gtk-migrating-GtkIconView.html +7 -7
  677. data/vendor/local/share/gtk-doc/html/gtk/gtk-migrating-GtkLinkButton.html +5 -5
  678. data/vendor/local/share/gtk-doc/html/gtk/gtk-migrating-GtkRecentChooser.html +7 -7
  679. data/vendor/local/share/gtk-doc/html/gtk/gtk-migrating-checklist.html +9 -9
  680. data/vendor/local/share/gtk-doc/html/gtk/gtk-migrating-entry-icons.html +6 -6
  681. data/vendor/local/share/gtk-doc/html/gtk/gtk-migrating-label-links.html +5 -5
  682. data/vendor/local/share/gtk-doc/html/gtk/gtk-migrating-tooltips.html +5 -5
  683. data/vendor/local/share/gtk-doc/html/gtk/gtk-osx.html +8 -8
  684. data/vendor/local/share/gtk-doc/html/gtk/gtk-query-immodules-2.0.html +12 -12
  685. data/vendor/local/share/gtk-doc/html/gtk/gtk-question-index.html +115 -115
  686. data/vendor/local/share/gtk-doc/html/gtk/gtk-resources.html +11 -11
  687. data/vendor/local/share/gtk-doc/html/gtk/gtk-running.html +60 -33
  688. data/vendor/local/share/gtk-doc/html/gtk/gtk-update-icon-cache.html +12 -12
  689. data/vendor/local/share/gtk-doc/html/gtk/gtk-windows.html +16 -16
  690. data/vendor/local/share/gtk-doc/html/gtk/gtk-x11.html +14 -14
  691. data/vendor/local/share/gtk-doc/html/gtk/gtk.devhelp +440 -413
  692. data/vendor/local/share/gtk-doc/html/gtk/gtk.devhelp2 +483 -456
  693. data/vendor/local/share/gtk-doc/html/gtk/gtk.html +8 -8
  694. data/vendor/local/share/gtk-doc/html/gtk/gtkbase.html +6 -6
  695. data/vendor/local/share/gtk-doc/html/gtk/gtkfilechooser-installing-extra-widgets.html +5 -5
  696. data/vendor/local/share/gtk-doc/html/gtk/gtkfilechooser-installing-preview.html +5 -5
  697. data/vendor/local/share/gtk-doc/html/gtk/gtkfilechooser-new-features.html +5 -5
  698. data/vendor/local/share/gtk-doc/html/gtk/gtkfilechooser-selection-modes.html +7 -7
  699. data/vendor/local/share/gtk-doc/html/gtk/gtkobjects.html +11 -8
  700. data/vendor/local/share/gtk-doc/html/gtk/gtkrecent-advanced.html +5 -5
  701. data/vendor/local/share/gtk-doc/html/gtk/gtkrecent-chooser.html +5 -5
  702. data/vendor/local/share/gtk-doc/html/gtk/index.html +16 -12
  703. data/vendor/local/share/gtk-doc/html/gtk/index.sgml +189 -142
  704. data/vendor/local/share/gtk-doc/html/gtk/migrating-GtkCombo.html +5 -5
  705. data/vendor/local/share/gtk-doc/html/gtk/migrating-gnomeuiinfo.html +20 -20
  706. data/vendor/local/share/gtk-doc/html/gtk/migrating.html +7 -7
  707. data/vendor/local/share/gtk-doc/html/gtk/new-features-GtkComboBox.html +5 -5
  708. data/vendor/local/share/gtk-doc/html/gtk/pt05.html +7 -7
  709. data/vendor/local/share/gtk-doc/html/gtk/setting-the-page-flow.html +5 -5
  710. data/vendor/local/share/gtk-doc/html/gtk/style.css +2 -1
  711. data/vendor/local/share/gtk-doc/html/gtk/{document-x-generic.png → text-x-generic.png} +0 -0
  712. data/vendor/local/share/gtk-doc/html/gtk/ui-manager.html +5 -5
  713. data/vendor/local/share/icons/hicolor/index.theme +1662 -0
  714. data/vendor/local/share/locale/be/LC_MESSAGES/gtk20.mo +0 -0
  715. data/vendor/local/share/locale/bg/LC_MESSAGES/gtk20-properties.mo +0 -0
  716. data/vendor/local/share/locale/bg/LC_MESSAGES/gtk20.mo +0 -0
  717. data/vendor/local/share/locale/ca/LC_MESSAGES/gtk20-properties.mo +0 -0
  718. data/vendor/local/share/locale/ca/LC_MESSAGES/gtk20.mo +0 -0
  719. data/vendor/local/share/locale/ca@valencia/LC_MESSAGES/gtk20-properties.mo +0 -0
  720. data/vendor/local/share/locale/ca@valencia/LC_MESSAGES/gtk20.mo +0 -0
  721. data/vendor/local/share/locale/cs/LC_MESSAGES/gtk20.mo +0 -0
  722. data/vendor/local/share/locale/de/LC_MESSAGES/gtk20.mo +0 -0
  723. data/vendor/local/share/locale/el/LC_MESSAGES/gtk20-properties.mo +0 -0
  724. data/vendor/local/share/locale/en_GB/LC_MESSAGES/gtk20-properties.mo +0 -0
  725. data/vendor/local/share/locale/en_GB/LC_MESSAGES/gtk20.mo +0 -0
  726. data/vendor/local/share/locale/es/LC_MESSAGES/gtk20.mo +0 -0
  727. data/vendor/local/share/locale/et/LC_MESSAGES/gtk20-properties.mo +0 -0
  728. data/vendor/local/share/locale/gl/LC_MESSAGES/gtk20.mo +0 -0
  729. data/vendor/local/share/locale/hu/LC_MESSAGES/gtk20-properties.mo +0 -0
  730. data/vendor/local/share/locale/hu/LC_MESSAGES/gtk20.mo +0 -0
  731. data/vendor/local/share/locale/it/LC_MESSAGES/gtk20-properties.mo +0 -0
  732. data/vendor/local/share/locale/it/LC_MESSAGES/gtk20.mo +0 -0
  733. data/vendor/local/share/locale/ja/LC_MESSAGES/gtk20-properties.mo +0 -0
  734. data/vendor/local/share/locale/lt/LC_MESSAGES/gtk20-properties.mo +0 -0
  735. data/vendor/local/share/locale/lt/LC_MESSAGES/gtk20.mo +0 -0
  736. data/vendor/local/share/locale/nb/LC_MESSAGES/gtk20.mo +0 -0
  737. data/vendor/local/share/locale/nl/LC_MESSAGES/gtk20.mo +0 -0
  738. data/vendor/local/share/locale/pl/LC_MESSAGES/gtk20-properties.mo +0 -0
  739. data/vendor/local/share/locale/pl/LC_MESSAGES/gtk20.mo +0 -0
  740. data/vendor/local/share/locale/ru/LC_MESSAGES/gtk20-properties.mo +0 -0
  741. data/vendor/local/share/locale/ru/LC_MESSAGES/gtk20.mo +0 -0
  742. data/vendor/local/share/locale/sl/LC_MESSAGES/gtk20.mo +0 -0
  743. data/vendor/local/share/locale/te/LC_MESSAGES/gtk20.mo +0 -0
  744. data/vendor/local/share/locale/zh_HK/LC_MESSAGES/gtk20.mo +0 -0
  745. data/vendor/local/share/locale/zh_TW/LC_MESSAGES/gtk20.mo +0 -0
  746. data/vendor/local/src/dieterv/packaging/gtk+_2.24.8-1_win32.log +4937 -0
  747. data/vendor/local/src/{tml/packaging/gtk+_2.22.1-1_win32.sh → dieterv/packaging/gtk+_2.24.8-1_win32.sh} +8 -8
  748. metadata +29 -31
  749. data/ChangeLog +0 -6902
  750. data/ext/gtk2/rbgtkmain.c +0 -493
  751. data/vendor/local/share/gtk-doc/html/gdk/gdk-X-Window-System-Interaction.html +0 -2500
  752. data/vendor/local/share/locale/kg/LC_MESSAGES/gtk20-properties.mo +0 -0
  753. data/vendor/local/share/locale/kg/LC_MESSAGES/gtk20.mo +0 -0
  754. data/vendor/local/share/locale/lg/LC_MESSAGES/gtk20-properties.mo +0 -0
  755. data/vendor/local/share/locale/lg/LC_MESSAGES/gtk20.mo +0 -0
  756. data/vendor/local/src/tml/packaging/gtk+_2.22.1-1_win32.log +0 -5048
@@ -1,28 +1,39 @@
1
1
  /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /************************************************
3
-
4
- rbgtkaccessible.c -
5
-
6
- $Author: mutoh $
7
- $Date: 2003/05/24 03:27:02 $
8
-
9
- Copyright (C) 2003 Masao Mutoh
10
- ************************************************/
2
+ /*
3
+ * Copyright (C) 2011 Ruby-GNOME2 Project Team
4
+ * Copyright (C) 2003 Masao Mutoh
5
+ *
6
+ * This library is free software; you can redistribute it and/or
7
+ * modify it under the terms of the GNU Lesser General Public
8
+ * License as published by the Free Software Foundation; either
9
+ * version 2.1 of the License, or (at your option) any later version.
10
+ *
11
+ * This library is distributed in the hope that it will be useful,
12
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
+ * Lesser General Public License for more details.
15
+ *
16
+ * You should have received a copy of the GNU Lesser General Public
17
+ * License along with this library; if not, write to the Free Software
18
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
+ * MA 02110-1301 USA
20
+ */
11
21
 
12
22
  #include "global.h"
13
23
 
24
+ #define RG_TARGET_NAMESPACE cAccessible
25
+
14
26
  static VALUE
15
- access_connect_widget_destroyed(VALUE self)
27
+ rg_connect_widget_destroyed(VALUE self)
16
28
  {
17
29
  gtk_accessible_connect_widget_destroyed(GTK_ACCESSIBLE(RVAL2GOBJ(self)));
18
30
  return self;
19
31
  }
20
32
 
21
33
  void
22
- Init_gtk_accessible()
34
+ Init_gtk_accessible(VALUE mGtk)
23
35
  {
24
- VALUE gAccess = G_DEF_CLASS(GTK_TYPE_ACCESSIBLE, "Accessible", mGtk);
36
+ VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(GTK_TYPE_ACCESSIBLE, "Accessible", mGtk);
25
37
 
26
- rb_define_method(gAccess, "connect_widget_destroyed", access_connect_widget_destroyed, 0);
38
+ RG_DEF_METHOD(connect_widget_destroyed, 0);
27
39
  }
28
-
@@ -1,23 +1,34 @@
1
1
  /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /************************************************
3
-
4
- rbgtkaction.c -
5
-
6
- $Author: ggc $
7
- $Date: 2007/07/13 16:07:31 $
8
-
9
- Copyright (C) 2004-2006 Masao Mutoh
10
- ************************************************/
2
+ /*
3
+ * Copyright (C) 2011 Ruby-GNOME2 Project Team
4
+ * Copyright (C) 2004-2006 Masao Mutoh
5
+ *
6
+ * This library is free software; you can redistribute it and/or
7
+ * modify it under the terms of the GNU Lesser General Public
8
+ * License as published by the Free Software Foundation; either
9
+ * version 2.1 of the License, or (at your option) any later version.
10
+ *
11
+ * This library is distributed in the hope that it will be useful,
12
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
+ * Lesser General Public License for more details.
15
+ *
16
+ * You should have received a copy of the GNU Lesser General Public
17
+ * License along with this library; if not, write to the Free Software
18
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
+ * MA 02110-1301 USA
20
+ */
11
21
 
12
22
  #include "global.h"
13
23
 
14
24
  #if GTK_CHECK_VERSION(2,4,0)
15
25
 
26
+ #define RG_TARGET_NAMESPACE cAction
16
27
  #define _SELF(self) (GTK_ACTION(RVAL2GOBJ(self)))
17
28
  #define RVAL2WIDGET(w) (GTK_WIDGET(RVAL2GOBJ(w)))
18
29
 
19
30
  static VALUE
20
- action_initialize(int argc, VALUE *argv, VALUE self)
31
+ rg_initialize(int argc, VALUE *argv, VALUE self)
21
32
  {
22
33
  VALUE name, label, tooltip, stock_id;
23
34
  const gchar *stock = NULL;
@@ -37,120 +48,109 @@ action_initialize(int argc, VALUE *argv, VALUE self)
37
48
  }
38
49
 
39
50
  static VALUE
40
- action_is_sensitive(VALUE self)
51
+ rg_is_sensitive_p(VALUE self)
41
52
  {
42
53
  return CBOOL2RVAL(gtk_action_is_sensitive(_SELF(self)));
43
54
  }
44
55
 
45
56
  static VALUE
46
- action_is_visible(VALUE self)
57
+ rg_is_visible_p(VALUE self)
47
58
  {
48
59
  return CBOOL2RVAL(gtk_action_is_visible(_SELF(self)));
49
60
  }
50
61
 
51
- /* Defined as property.
52
- const gchar* gtk_action_get_name (GtkAction *action);
53
- gboolean gtk_action_get_sensitive (GtkAction *action);
54
- void gtk_action_set_sensitive (GtkAction *action,
55
- gboolean
56
- sensitive);
57
- gboolean gtk_action_get_visible (GtkAction *action);
58
- void gtk_action_set_visible (GtkAction *action,
59
- gboolean visible);
60
- */
61
-
62
62
  static VALUE
63
- action_activate(VALUE self)
63
+ rg_activate(VALUE self)
64
64
  {
65
65
  gtk_action_activate(_SELF(self));
66
66
  return self;
67
67
  }
68
68
 
69
69
  static VALUE
70
- action_create_icon(VALUE self, VALUE icon_size)
70
+ rg_create_icon(VALUE self, VALUE icon_size)
71
71
  {
72
72
  return GOBJ2RVAL(gtk_action_create_icon(_SELF(self),
73
73
  RVAL2GENUM(icon_size, GTK_TYPE_ICON_SIZE)));
74
74
  }
75
75
 
76
76
  static VALUE
77
- action_create_menu_item(VALUE self)
77
+ rg_create_menu_item(VALUE self)
78
78
  {
79
79
  return GOBJ2RVAL(gtk_action_create_menu_item(_SELF(self)));
80
80
  }
81
81
 
82
82
  #if GTK_CHECK_VERSION(2, 12, 0)
83
83
  static VALUE
84
- action_create_menu(VALUE self)
84
+ rg_create_menu(VALUE self)
85
85
  {
86
86
  return GOBJ2RVAL(gtk_action_create_menu(_SELF(self)));
87
87
  }
88
88
  #endif
89
89
 
90
90
  static VALUE
91
- action_create_tool_item(VALUE self)
91
+ rg_create_tool_item(VALUE self)
92
92
  {
93
93
  return GOBJ2RVAL(gtk_action_create_tool_item(_SELF(self)));
94
94
  }
95
95
 
96
96
  static VALUE
97
- action_connect_proxy(VALUE self, VALUE proxy)
97
+ rg_connect_proxy(VALUE self, VALUE proxy)
98
98
  {
99
99
  gtk_action_connect_proxy(_SELF(self), RVAL2WIDGET(proxy));
100
100
  return self;
101
101
  }
102
102
 
103
103
  static VALUE
104
- action_disconnect_proxy(VALUE self, VALUE proxy)
104
+ rg_disconnect_proxy(VALUE self, VALUE proxy)
105
105
  {
106
106
  gtk_action_disconnect_proxy(_SELF(self), RVAL2WIDGET(proxy));
107
107
  return self;
108
108
  }
109
109
 
110
110
  static VALUE
111
- action_get_proxies(VALUE self)
111
+ rg_proxies(VALUE self)
112
112
  {
113
113
  /* Owned by GTK+ */
114
114
  return GSLIST2ARY(gtk_action_get_proxies(_SELF(self)));
115
115
  }
116
116
 
117
117
  static VALUE
118
- action_connect_accelerator(VALUE self)
118
+ rg_connect_accelerator(VALUE self)
119
119
  {
120
120
  gtk_action_connect_accelerator(_SELF(self));
121
121
  return self;
122
122
  }
123
123
 
124
124
  static VALUE
125
- action_disconnect_accelerator(VALUE self)
125
+ rg_disconnect_accelerator(VALUE self)
126
126
  {
127
127
  gtk_action_disconnect_accelerator(_SELF(self));
128
128
  return self;
129
129
  }
130
130
 
131
131
  static VALUE
132
- action_block_activate_from(VALUE self, VALUE proxy)
132
+ rg_block_activate_from(VALUE self, VALUE proxy)
133
133
  {
134
134
  gtk_action_block_activate_from(_SELF(self), RVAL2WIDGET(proxy));
135
135
  return self;
136
136
  }
137
137
 
138
138
  static VALUE
139
- action_unblock_activate_from(VALUE self, VALUE proxy)
139
+ rg_unblock_activate_from(VALUE self, VALUE proxy)
140
140
  {
141
141
  gtk_action_unblock_activate_from(_SELF(self), RVAL2WIDGET(proxy));
142
142
  return self;
143
143
  }
144
144
 
145
145
  static VALUE
146
- action_set_accel_path(VALUE self, VALUE accel_path)
146
+ rg_set_accel_path(VALUE self, VALUE accel_path)
147
147
  {
148
148
  gtk_action_set_accel_path(_SELF(self), RVAL2CSTR(accel_path));
149
149
  return self;
150
150
  }
151
151
 
152
152
  static VALUE
153
- action_set_accel_group(VALUE self, VALUE accel_group)
153
+ rg_set_accel_group(VALUE self, VALUE accel_group)
154
154
  {
155
155
  gtk_action_set_accel_group(_SELF(self), RVAL2GOBJ(accel_group));
156
156
  return self;
@@ -158,7 +158,7 @@ action_set_accel_group(VALUE self, VALUE accel_group)
158
158
 
159
159
  #if GTK_CHECK_VERSION(2,6,0)
160
160
  static VALUE
161
- action_get_accel_path(VALUE self)
161
+ rg_accel_path(VALUE self)
162
162
  {
163
163
  return CSTR2RVAL(gtk_action_get_accel_path(_SELF(self)));
164
164
  }
@@ -166,7 +166,7 @@ action_get_accel_path(VALUE self)
166
166
 
167
167
  #if GTK_CHECK_VERSION(2,8,0)
168
168
  static VALUE
169
- action_get_accel_closure(VALUE self)
169
+ rg_accel_closure(VALUE self)
170
170
  {
171
171
  return BOXED2RVAL(gtk_action_get_accel_closure(_SELF(self)), G_TYPE_CLOSURE);
172
172
  }
@@ -180,24 +180,24 @@ action_mark(void *p)
180
180
 
181
181
  action = GTK_ACTION(p);
182
182
  for (node = gtk_action_get_proxies(action);
183
- node;
184
- node = g_slist_next(node)) {
185
- GtkWidget *proxy = node->data;
186
- rbgobj_gc_mark_instance(proxy);
183
+ node;
184
+ node = g_slist_next(node)) {
185
+ GtkWidget *proxy = node->data;
186
+ rbgobj_gc_mark_instance(proxy);
187
187
  }
188
188
  }
189
189
  #endif
190
190
 
191
191
  void
192
- Init_gtk_action()
192
+ Init_gtk_action(VALUE mGtk)
193
193
  {
194
194
  #if GTK_CHECK_VERSION(2,4,0)
195
- VALUE gAction;
195
+ VALUE RG_TARGET_NAMESPACE;
196
196
 
197
- gAction = G_DEF_CLASS_WITH_GC_FUNC(GTK_TYPE_ACTION, "Action", mGtk,
198
- action_mark, NULL);
197
+ RG_TARGET_NAMESPACE = G_DEF_CLASS_WITH_GC_FUNC(GTK_TYPE_ACTION, "Action", mGtk,
198
+ action_mark, NULL);
199
199
 
200
- rb_define_method(gAction, "initialize", action_initialize, -1);
200
+ RG_DEF_METHOD(initialize, -1);
201
201
  /* (NOTICE) Gtk::Action#is_sensitive?, #is_visible are special.
202
202
  Because there are also Gtk::Action#sensitive?, #visible? as property
203
203
  accessors.
@@ -205,33 +205,33 @@ Init_gtk_action()
205
205
  action group.
206
206
  Gtk::Action#sensitive?, #visible? returns the value of the properties.
207
207
  */
208
- rb_define_method(gAction, "is_sensitive?", action_is_sensitive, 0);
209
- rb_define_method(gAction, "is_visible?", action_is_visible, 0);
210
- rb_define_method(gAction, "activate", action_activate, 0);
211
- rb_define_method(gAction, "create_icon", action_create_icon, 1);
212
- rb_define_method(gAction, "create_menu_item", action_create_menu_item, 0);
208
+ RG_DEF_METHOD_P(is_sensitive, 0);
209
+ RG_DEF_METHOD_P(is_visible, 0);
210
+ RG_DEF_METHOD(activate, 0);
211
+ RG_DEF_METHOD(create_icon, 1);
212
+ RG_DEF_METHOD(create_menu_item, 0);
213
213
  #if GTK_CHECK_VERSION(2, 12, 0)
214
- rb_define_method(gAction, "create_menu", action_create_menu, 0);
214
+ RG_DEF_METHOD(create_menu, 0);
215
215
  #endif
216
- rb_define_method(gAction, "create_tool_item", action_create_tool_item, 0);
217
- rb_define_method(gAction, "connect_proxy", action_connect_proxy, 1);
218
- rb_define_method(gAction, "disconnect_proxy", action_disconnect_proxy, 1);
219
- rb_define_method(gAction, "proxies", action_get_proxies, 0);
220
- rb_define_method(gAction, "connect_accelerator", action_connect_accelerator, 0);
221
- rb_define_method(gAction, "disconnect_accelerator", action_disconnect_accelerator, 0);
222
- rb_define_method(gAction, "block_activate_from", action_block_activate_from, 1);
223
- rb_define_method(gAction, "unblock_activate_from", action_unblock_activate_from, 1);
224
- rb_define_method(gAction, "set_accel_path", action_set_accel_path, 1);
225
- G_DEF_SETTER(gAction, "accel_path");
226
- rb_define_method(gAction, "set_accel_group", action_set_accel_group, 1);
227
- G_DEF_SETTER(gAction, "accel_group");
216
+ RG_DEF_METHOD(create_tool_item, 0);
217
+ RG_DEF_METHOD(connect_proxy, 1);
218
+ RG_DEF_METHOD(disconnect_proxy, 1);
219
+ RG_DEF_METHOD(proxies, 0);
220
+ RG_DEF_METHOD(connect_accelerator, 0);
221
+ RG_DEF_METHOD(disconnect_accelerator, 0);
222
+ RG_DEF_METHOD(block_activate_from, 1);
223
+ RG_DEF_METHOD(unblock_activate_from, 1);
224
+ RG_DEF_METHOD(set_accel_path, 1);
225
+ G_DEF_SETTER(RG_TARGET_NAMESPACE, "accel_path");
226
+ RG_DEF_METHOD(set_accel_group, 1);
227
+ G_DEF_SETTER(RG_TARGET_NAMESPACE, "accel_group");
228
228
 
229
229
  #if GTK_CHECK_VERSION(2,6,0)
230
- rb_define_method(gAction, "accel_path", action_get_accel_path, 0);
230
+ RG_DEF_METHOD(accel_path, 0);
231
231
  #endif
232
232
 
233
233
  #if GTK_CHECK_VERSION(2,8,0)
234
- rb_define_method(gAction, "accel_closure", action_get_accel_closure, 0);
234
+ RG_DEF_METHOD(accel_closure, 0);
235
235
  #endif
236
236
  #endif
237
237
  }
@@ -1,13 +1,23 @@
1
1
  /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
- /************************************************
3
-
4
- rbgtkactiongroup.c -
5
-
6
- $Author: ggc $
7
- $Date: 2007/07/13 16:07:31 $
8
-
9
- Copyright (C) 2004-2006 Masao Mutoh
10
- ************************************************/
2
+ /*
3
+ * Copyright (C) 2011 Ruby-GNOME2 Project Team
4
+ * Copyright (C) 2004-2006 Masao Mutoh
5
+ *
6
+ * This library is free software; you can redistribute it and/or
7
+ * modify it under the terms of the GNU Lesser General Public
8
+ * License as published by the Free Software Foundation; either
9
+ * version 2.1 of the License, or (at your option) any later version.
10
+ *
11
+ * This library is distributed in the hope that it will be useful,
12
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
+ * Lesser General Public License for more details.
15
+ *
16
+ * You should have received a copy of the GNU Lesser General Public
17
+ * License along with this library; if not, write to the Free Software
18
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
19
+ * MA 02110-1301 USA
20
+ */
11
21
 
12
22
  #include "global.h"
13
23
 
@@ -16,40 +26,31 @@
16
26
  static ID id_action_procs;
17
27
  static ID id_toggle_action_procs;
18
28
 
29
+ #define RG_TARGET_NAMESPACE cActionGroup
19
30
  #define _SELF(self) (GTK_ACTION_GROUP(RVAL2GOBJ(self)))
20
31
  #define RVAL2WIDGET(w) (GTK_WIDGET(RVAL2GOBJ(w)))
21
32
 
22
33
  static VALUE
23
- actiongroup_initialize(VALUE self, VALUE name)
34
+ rg_initialize(VALUE self, VALUE name)
24
35
  {
25
36
  G_INITIALIZE(self, gtk_action_group_new(RVAL2CSTR(name)));
26
37
  return Qnil;
27
38
  }
28
39
 
29
- /* Defined as properties
30
- const gchar* gtk_action_group_get_name (GtkActionGroup *action_group);
31
- gboolean gtk_action_group_get_sensitive (GtkActionGroup *action_group);
32
- void gtk_action_group_set_sensitive (GtkActionGroup *action_group,
33
- gboolean sensitive);
34
- gboolean gtk_action_group_get_visible (GtkActionGroup *action_group);
35
- void gtk_action_group_set_visible (GtkActionGroup *action_group,
36
- gboolean visible);
37
- */
38
-
39
40
  static VALUE
40
- actiongroup_get_action(VALUE self, VALUE action_name)
41
+ rg_get_action(VALUE self, VALUE action_name)
41
42
  {
42
43
  return GOBJ2RVAL(gtk_action_group_get_action(_SELF(self), RVAL2CSTR(action_name)));
43
44
  }
44
45
 
45
46
  static VALUE
46
- actiongroup_list_actions(VALUE self)
47
+ rg_actions(VALUE self)
47
48
  {
48
49
  return GLIST2ARYF(gtk_action_group_list_actions(_SELF(self)));
49
50
  }
50
51
 
51
52
  static VALUE
52
- actiongroup_add_action(int argc, VALUE *argv, VALUE self)
53
+ rg_add_action(int argc, VALUE *argv, VALUE self)
53
54
  {
54
55
  VALUE action, accelerator;
55
56
 
@@ -64,7 +65,7 @@ actiongroup_add_action(int argc, VALUE *argv, VALUE self)
64
65
  }
65
66
 
66
67
  static VALUE
67
- actiongroup_remove_action(VALUE self, VALUE action)
68
+ rg_remove_action(VALUE self, VALUE action)
68
69
  {
69
70
  gtk_action_group_remove_action(_SELF(self), GTK_ACTION(RVAL2GOBJ(action)));
70
71
  G_CHILD_REMOVE(self, action);
@@ -74,65 +75,105 @@ actiongroup_remove_action(VALUE self, VALUE action)
74
75
  static void
75
76
  activate_action(GtkAction *action, VALUE self)
76
77
  {
77
- VALUE action_procs = rb_ivar_get(self, id_action_procs);
78
- VALUE proc = rb_hash_aref(action_procs, CSTR2RVAL(gtk_action_get_name(action)));
79
- if (! NIL_P(proc))
78
+ VALUE proc = rb_hash_aref(rb_ivar_get(self, id_action_procs),
79
+ CSTR2RVAL(gtk_action_get_name(action)));
80
+
81
+ if (!NIL_P(proc))
80
82
  rb_funcall(proc, id_call, 2, self, GOBJ2RVAL(action));
81
83
  }
82
84
 
85
+ struct rbg_rval2gtkactionentries_args {
86
+ VALUE ary;
87
+ long n;
88
+ GtkActionEntry *result;
89
+ VALUE procs;
90
+ };
91
+
83
92
  static VALUE
84
- actiongroup_add_actions(VALUE self, VALUE entries)
93
+ rbg_rval2gtkactionentries_body(VALUE value)
85
94
  {
86
- guint i;
87
- VALUE action_procs;
88
- guint n_entries = (guint)RARRAY_LEN(entries);
89
- GtkActionEntry* gentries = g_new0(GtkActionEntry, n_entries);
90
-
91
- if (rb_ivar_defined(self, id_action_procs) == Qtrue){
92
- action_procs = rb_ivar_get(self, id_action_procs);
93
- } else {
94
- action_procs = rb_hash_new();
95
- }
95
+ long i;
96
+ struct rbg_rval2gtkactionentries_args *args = (struct rbg_rval2gtkactionentries_args *)value;
96
97
 
97
- for (i = 0; i < n_entries; i++){
98
+ for (i = 0; i < args->n; i++) {
98
99
  VALUE entry;
99
- int size;
100
-
101
- entry = RARRAY_PTR(entries)[i];
102
- size = RARRAY_LEN(entry);
103
- if (size < 1)
104
- rb_raise(rb_eArgError, "wrong array parameter");
105
-
106
- gentries[i].name = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[0]);
107
- gentries[i].callback = G_CALLBACK(activate_action);
108
-
109
- if (size < 2) continue;
110
-
111
- if (NIL_P(RARRAY_PTR(entry)[1])){
112
- gentries[i].stock_id = NULL;
113
- } else if (SYMBOL_P(RARRAY_PTR(entry)[1])){
114
- gentries[i].stock_id = rb_id2name(SYM2ID(RARRAY_PTR(entry)[1]));
115
- } else if (TYPE(RARRAY_PTR(entry)[1]) == T_STRING){
116
- gentries[i].stock_id = RVAL2CSTR(RARRAY_PTR(entry)[1]);
117
- } else{
118
- rb_raise(rb_eArgError,
119
- "invalid argument %s (expect Symbol or String)",
120
- rb_class2name(CLASS_OF(RARRAY_PTR(entry)[1])));
100
+ long n;
101
+
102
+ RARRAY_PTR(args->ary)[i] = rb_ary_dup(rb_ary_to_ary(RARRAY_PTR(args->ary)[i]));
103
+ entry = RARRAY_PTR(args->ary)[i];
104
+ n = RARRAY_LEN(entry);
105
+
106
+ args->result[i].callback = G_CALLBACK(activate_action);
107
+
108
+ if (n < 1 || n > 6)
109
+ rb_raise(rb_eArgError, "entry does not contain right number of entries %ld (1..6)", n);
110
+
111
+ args->result[i].name = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[0]);
112
+
113
+ switch (n) {
114
+ case 6:
115
+ /* TODO: Call #to_proc on entry 5? */
116
+ rb_hash_aset(args->procs, RARRAY_PTR(entry)[0], RARRAY_PTR(entry)[5]);
117
+ case 5:
118
+ args->result[i].tooltip = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[4]);
119
+ case 4:
120
+ args->result[i].accelerator = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[3]);
121
+ case 3:
122
+ args->result[i].label = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[2]);
123
+ case 2:
124
+ args->result[i].stock_id = RVAL2CSTR_ACCEPT_SYMBOL_ACCEPT_NIL(RARRAY_PTR(entry)[1]);
125
+ break;
126
+ default:
127
+ break;
121
128
  }
122
-
123
- if (size < 3) continue;
124
- gentries[i].label = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[2]);
125
- if (size < 4) continue;
126
- gentries[i].accelerator = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[3]);
127
- if (size < 4) continue;
128
- gentries[i].tooltip = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[4]);
129
- if (size < 5) continue;
130
- rb_hash_aset(action_procs, RARRAY_PTR(entry)[0], RARRAY_PTR(entry)[5]);
131
129
  }
130
+
131
+ return Qnil;
132
+ }
133
+
134
+ static G_GNUC_NORETURN VALUE
135
+ rbg_rval2gtkactionentries_rescue(VALUE value)
136
+ {
137
+ g_free(((struct rbg_rval2gtkactionentries_args *)value)->result);
138
+
139
+ rb_exc_raise(rb_errinfo());
140
+ }
141
+
142
+ static GtkActionEntry *
143
+ rbg_rval2gtkactionentries(volatile VALUE *value, long *n, VALUE procs)
144
+ {
145
+ struct rbg_rval2gtkactionentries_args args;
146
+
147
+ args.ary = *value = rb_ary_dup(rb_ary_to_ary(*value));
148
+ args.n = RARRAY_LEN(args.ary);
149
+ args.result = g_new0(GtkActionEntry, args.n + 1);
150
+ args.procs = procs;
151
+
152
+ rb_rescue(rbg_rval2gtkactionentries_body, (VALUE)&args,
153
+ rbg_rval2gtkactionentries_rescue, (VALUE)&args);
154
+
155
+ *n = args.n;
156
+
157
+ return args.result;
158
+ }
159
+
160
+ #define RVAL2GTKACTIONENTRIES(value, n, procs) rbg_rval2gtkactionentries(&(value), &(n), procs)
161
+
162
+ static VALUE
163
+ rg_add_actions(VALUE self, VALUE rbentries)
164
+ {
165
+ GtkActionGroup *group = _SELF(self);
166
+ VALUE action_procs = rb_ivar_defined(self, id_action_procs) == Qtrue ?
167
+ rb_ivar_get(self, id_action_procs) :
168
+ rb_hash_new();
169
+ long n;
170
+ GtkActionEntry *entries = RVAL2GTKACTIONENTRIES(rbentries, n, action_procs);
171
+
132
172
  rb_ivar_set(self, id_action_procs, action_procs);
133
- gtk_action_group_add_actions(_SELF(self), gentries, n_entries,
134
- (gpointer)self);
135
- g_free(gentries);
173
+
174
+ gtk_action_group_add_actions(group, entries, n, (gpointer)self);
175
+
176
+ g_free(entries);
136
177
 
137
178
  return self;
138
179
  }
@@ -140,135 +181,216 @@ actiongroup_add_actions(VALUE self, VALUE entries)
140
181
  static void
141
182
  activate_toggle_action(GtkAction *action, VALUE self)
142
183
  {
143
- VALUE action_procs = rb_ivar_get(self, id_toggle_action_procs);
144
- VALUE proc = rb_hash_aref(action_procs, CSTR2RVAL(gtk_action_get_name(action)));
145
- if (! NIL_P(proc))
184
+ VALUE proc = rb_hash_aref(rb_ivar_get(self, id_toggle_action_procs),
185
+ CSTR2RVAL(gtk_action_get_name(action)));
186
+
187
+ if (!NIL_P(proc))
146
188
  rb_funcall(proc, id_call, 2, self, GOBJ2RVAL(action));
147
189
  }
148
190
 
191
+ struct rbg_rval2gtktoggleactionentries_args {
192
+ VALUE ary;
193
+ long n;
194
+ GtkToggleActionEntry *result;
195
+ VALUE procs;
196
+ };
197
+
149
198
  static VALUE
150
- actiongroup_add_toggle_actions(VALUE self, VALUE entries)
199
+ rbg_rval2gtktoggleactionentries_body(VALUE value)
151
200
  {
152
- guint i;
153
- VALUE toggle_action_procs;
154
- guint n_entries = (guint)RARRAY_LEN(entries);
155
- GtkToggleActionEntry* gentries = g_new0(GtkToggleActionEntry, n_entries);
156
-
157
- if (rb_ivar_defined(self, id_toggle_action_procs) == Qtrue){
158
- toggle_action_procs = rb_ivar_get(self, id_toggle_action_procs);
159
- } else {
160
- toggle_action_procs = rb_hash_new();
161
- }
201
+ long i;
202
+ struct rbg_rval2gtktoggleactionentries_args *args = (struct rbg_rval2gtktoggleactionentries_args *)value;
162
203
 
163
- for (i = 0; i < n_entries; i++){
204
+ for (i = 0; i < args->n; i++) {
164
205
  VALUE entry;
165
- int size;
166
-
167
- entry = RARRAY_PTR(entries)[i];
168
- size = RARRAY_LEN(entry);
169
- if (size < 1)
170
- rb_raise(rb_eArgError, "wrong array parameter");
171
-
172
- gentries[i].name = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[0]);
173
- gentries[i].callback = G_CALLBACK(activate_toggle_action);
174
-
175
- if (size < 2) continue;
176
-
177
- if (NIL_P(RARRAY_PTR(entry)[1])){
178
- gentries[i].stock_id = NULL;
179
- } else if (SYMBOL_P(RARRAY_PTR(entry)[1])){
180
- gentries[i].stock_id = rb_id2name(SYM2ID(RARRAY_PTR(entry)[1]));
181
- } else if (TYPE(RARRAY_PTR(entry)[1]) == T_STRING){
182
- gentries[i].stock_id = RVAL2CSTR(RARRAY_PTR(entry)[1]);
183
- } else{
184
- rb_raise(rb_eArgError, "invalid argument %s (expect Symbol or String)",
185
- rb_class2name(CLASS_OF(RARRAY_PTR(entry)[1])));
206
+ long n;
207
+
208
+ RARRAY_PTR(args->ary)[i] = rb_ary_dup(rb_ary_to_ary(RARRAY_PTR(args->ary)[i]));
209
+ entry = RARRAY_PTR(args->ary)[i];
210
+ n = RARRAY_LEN(entry);
211
+
212
+ args->result[i].callback = G_CALLBACK(activate_toggle_action);
213
+
214
+ if (n < 1 || n > 7)
215
+ rb_raise(rb_eArgError, "entry does not contain right number of entries %ld (1..7)", n);
216
+
217
+ args->result[i].name = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[0]);
218
+
219
+ switch (n) {
220
+ case 7:
221
+ args->result[i].is_active = RVAL2CBOOL(RARRAY_PTR(entry)[6]);
222
+ case 6:
223
+ /* TODO: Call #to_proc on entry 5? */
224
+ rb_hash_aset(args->procs, RARRAY_PTR(entry)[0], RARRAY_PTR(entry)[5]);
225
+ case 5:
226
+ args->result[i].tooltip = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[4]);
227
+ case 4:
228
+ args->result[i].accelerator = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[3]);
229
+ case 3:
230
+ args->result[i].label = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[2]);
231
+ case 2:
232
+ args->result[i].stock_id = RVAL2CSTR_ACCEPT_SYMBOL_ACCEPT_NIL(RARRAY_PTR(entry)[1]);
233
+ break;
234
+ default:
235
+ break;
186
236
  }
187
-
188
- if (size < 3) continue;
189
- gentries[i].label = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[2]);
190
- if (size < 4) continue;
191
- gentries[i].accelerator = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[3]);
192
- if (size < 4) continue;
193
- gentries[i].tooltip = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[4]);
194
- if (size < 5) continue;
195
- rb_hash_aset(toggle_action_procs,
196
- RARRAY_PTR(entry)[0], RARRAY_PTR(entry)[5]);
197
- if (size < 6) continue;
198
- gentries[i].is_active = RVAL2CBOOL(RARRAY_PTR(entry)[6]);
199
237
  }
238
+
239
+ return Qnil;
240
+ }
241
+
242
+ static G_GNUC_NORETURN VALUE
243
+ rbg_rval2gtktoggleactionentries_rescue(VALUE value)
244
+ {
245
+ g_free(((struct rbg_rval2gtktoggleactionentries_args *)value)->result);
246
+
247
+ rb_exc_raise(rb_errinfo());
248
+ }
249
+
250
+ static GtkToggleActionEntry *
251
+ rbg_rval2gtktoggleactionentries(volatile VALUE *value, long *n, VALUE procs)
252
+ {
253
+ struct rbg_rval2gtktoggleactionentries_args args;
254
+
255
+ args.ary = *value = rb_ary_dup(rb_ary_to_ary(*value));
256
+ args.n = RARRAY_LEN(args.ary);
257
+ args.result = g_new0(GtkToggleActionEntry, args.n + 1);
258
+ args.procs = procs;
259
+
260
+ rb_rescue(rbg_rval2gtktoggleactionentries_body, (VALUE)&args,
261
+ rbg_rval2gtktoggleactionentries_rescue, (VALUE)&args);
262
+
263
+ *n = args.n;
264
+
265
+ return args.result;
266
+ }
267
+
268
+ #define RVAL2GTKTOGGLEACTIONENTRIES(value, n, procs) rbg_rval2gtktoggleactionentries(&(value), &(n), procs)
269
+
270
+ static VALUE
271
+ rg_add_toggle_actions(VALUE self, VALUE rbentries)
272
+ {
273
+ GtkActionGroup *group = _SELF(self);
274
+ VALUE toggle_action_procs = rb_ivar_defined(self, id_toggle_action_procs) == Qtrue ?
275
+ rb_ivar_get(self, id_toggle_action_procs) :
276
+ rb_hash_new();
277
+ long n;
278
+ GtkToggleActionEntry *entries = RVAL2GTKTOGGLEACTIONENTRIES(rbentries, n, toggle_action_procs);
279
+
200
280
  rb_ivar_set(self, id_toggle_action_procs, toggle_action_procs);
201
- gtk_action_group_add_toggle_actions(_SELF(self), gentries, n_entries,
202
- (gpointer)self);
203
- g_free(gentries);
281
+
282
+ gtk_action_group_add_toggle_actions(group, entries, n, (gpointer)self);
283
+
284
+ g_free(entries);
204
285
 
205
286
  return self;
206
287
  }
207
288
 
208
289
  static void
209
- activate_radio_action(GtkAction *action, GtkRadioAction *current, VALUE func)
290
+ activate_radio_action(GtkAction *action, GtkRadioAction *current, VALUE proc)
210
291
  {
211
- if (! NIL_P(func))
212
- rb_funcall(func, id_call, 2, GOBJ2RVAL(action), GOBJ2RVAL(current));
292
+ if (!NIL_P(proc))
293
+ rb_funcall(proc, id_call, 2, GOBJ2RVAL(action), GOBJ2RVAL(current));
213
294
  }
214
295
 
296
+ struct rbg_rval2gtkradioactionentries_args {
297
+ VALUE ary;
298
+ long n;
299
+ GtkRadioActionEntry *result;
300
+ };
301
+
215
302
  static VALUE
216
- actiongroup_add_radio_actions(int argc, VALUE *argv, VALUE self)
303
+ rbg_rval2gtkradioactionentries_body(VALUE value)
217
304
  {
218
- VALUE entries, value, proc;
219
- guint i;
220
- guint n_entries;
221
- GtkRadioActionEntry* gentries;
305
+ long i;
306
+ struct rbg_rval2gtkradioactionentries_args *args = (struct rbg_rval2gtkradioactionentries_args *)value;
307
+
308
+ for (i = 0; i < args->n; i++) {
309
+ VALUE entry;
310
+ long n;
311
+
312
+ RARRAY_PTR(args->ary)[i] = rb_ary_dup(rb_ary_to_ary(RARRAY_PTR(args->ary)[i]));
313
+ entry = RARRAY_PTR(args->ary)[i];
314
+ n = RARRAY_LEN(entry);
315
+
316
+ switch (n) {
317
+ case 6:
318
+ args->result[i].value = NUM2INT(RARRAY_PTR(entry)[5]);
319
+ case 5:
320
+ args->result[i].tooltip = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[4]);
321
+ case 4:
322
+ args->result[i].accelerator = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[3]);
323
+ case 3:
324
+ args->result[i].label = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[2]);
325
+ case 2:
326
+ args->result[i].stock_id = RVAL2CSTR_ACCEPT_SYMBOL_ACCEPT_NIL(RARRAY_PTR(entry)[1]);
327
+ case 1:
328
+ args->result[i].name = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[0]);
329
+ default:
330
+ rb_raise(rb_eArgError, "entry does not contain right number of entries %ld (1..6)", n);
331
+ }
332
+ }
222
333
 
223
- rb_scan_args(argc, argv, "12", &entries, &value, &proc);
334
+ return Qnil;
335
+ }
224
336
 
225
- if (NIL_P(value)) value = -1;
226
- if (NIL_P(proc) && rb_block_given_p()){
337
+ static G_GNUC_NORETURN VALUE
338
+ rbg_rval2gtkradioactionentries_rescue(VALUE value)
339
+ {
340
+ g_free(((struct rbg_rval2gtkradioactionentries_args *)value)->result);
341
+
342
+ rb_exc_raise(rb_errinfo());
343
+ }
344
+
345
+ static GtkRadioActionEntry *
346
+ rbg_rval2gtkradioactionentries(volatile VALUE *value, long *n)
347
+ {
348
+ struct rbg_rval2gtkradioactionentries_args args;
349
+
350
+ args.ary = *value = rb_ary_dup(rb_ary_to_ary(*value));
351
+ args.n = RARRAY_LEN(args.ary);
352
+ args.result = g_new0(GtkRadioActionEntry, args.n + 1);
353
+
354
+ rb_rescue(rbg_rval2gtkradioactionentries_body, (VALUE)&args,
355
+ rbg_rval2gtkradioactionentries_rescue, (VALUE)&args);
356
+
357
+ *n = args.n;
358
+
359
+ return args.result;
360
+ }
361
+
362
+ #define RVAL2GTKRADIOACTIONENTRIES(value, n) rbg_rval2gtkradioactionentries(&(value), &(n))
363
+
364
+ static VALUE
365
+ rg_add_radio_actions(int argc, VALUE *argv, VALUE self)
366
+ {
367
+ GtkActionGroup *group = _SELF(self);
368
+ VALUE rbentries, rbvalue, proc;
369
+ long n;
370
+ GtkRadioActionEntry *entries;
371
+ gint value;
372
+
373
+ rb_scan_args(argc, argv, "12", &rbentries, &rbvalue, &proc);
374
+
375
+ value = NIL_P(rbvalue) ? -1 : NUM2INT(rbvalue);
376
+
377
+ if (NIL_P(proc) && rb_block_given_p()) {
227
378
  proc = rb_block_proc();
379
+ /* TODO: How do we remove this proc when all the radio actions passed
380
+ * have been removed? */
228
381
  G_RELATIVE(self, proc);
229
382
  }
230
- n_entries = (guint)RARRAY_LEN(entries);
231
- gentries = g_new0(GtkRadioActionEntry, n_entries);
232
383
 
233
- for (i = 0; i < n_entries; i++){
234
- VALUE entry;
235
- int size;
236
-
237
- entry = RARRAY_PTR(entries)[i];
238
- size = RARRAY_LEN(entry);
239
- if (size < 1)
240
- rb_raise(rb_eArgError, "wrong array parameter");
241
-
242
- gentries[i].name = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[0]);
243
-
244
- if (size < 2) continue;
245
-
246
- if (NIL_P(RARRAY_PTR(entry)[1])){
247
- gentries[i].stock_id = NULL;
248
- } else if (SYMBOL_P(RARRAY_PTR(entry)[1])){
249
- gentries[i].stock_id = rb_id2name(SYM2ID(RARRAY_PTR(entry)[1]));
250
- } else if (TYPE(RARRAY_PTR(entry)[1]) == T_STRING){
251
- gentries[i].stock_id = RVAL2CSTR(RARRAY_PTR(entry)[1]);
252
- } else{
253
- rb_raise(rb_eArgError,
254
- "invalid argument %s (expect Symbol or String)",
255
- rb_class2name(CLASS_OF(RARRAY_PTR(entry)[1])));
256
- }
384
+ entries = RVAL2GTKRADIOACTIONENTRIES(rbentries, n);
257
385
 
258
- if (size < 3) continue;
259
- gentries[i].label = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[2]);
260
- if (size < 4) continue;
261
- gentries[i].accelerator = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[3]);
262
- if (size < 4) continue;
263
- gentries[i].tooltip = RVAL2CSTR_ACCEPT_NIL(RARRAY_PTR(entry)[4]);
264
- if (size < 5) continue;
265
- gentries[i].value = NUM2INT(RARRAY_PTR(entry)[5]);
266
- }
267
- gtk_action_group_add_radio_actions(_SELF(self), gentries,
268
- n_entries, NUM2INT(value),
386
+ gtk_action_group_add_radio_actions(group,
387
+ entries,
388
+ n,
389
+ value,
269
390
  G_CALLBACK(activate_radio_action),
270
- (gpointer)proc);
271
- g_free(gentries);
391
+ (gpointer)proc);
392
+
393
+ g_free(entries);
272
394
 
273
395
  return self;
274
396
  }
@@ -281,7 +403,7 @@ translate_func(const gchar *path, gpointer func)
281
403
  }
282
404
 
283
405
  static VALUE
284
- actiongroup_set_translate_func(VALUE self)
406
+ rg_set_translate_func(VALUE self)
285
407
  {
286
408
  VALUE func = rb_block_proc();
287
409
  G_RELATIVE(self, func);
@@ -292,7 +414,7 @@ actiongroup_set_translate_func(VALUE self)
292
414
  }
293
415
 
294
416
  static VALUE
295
- actiongroup_set_translation_domain(VALUE self, VALUE domain)
417
+ rg_set_translation_domain(VALUE self, VALUE domain)
296
418
  {
297
419
  gtk_action_group_set_translation_domain(_SELF(self),
298
420
  NIL_P(domain) ? (const gchar*)NULL : RVAL2CSTR(domain));
@@ -301,7 +423,7 @@ actiongroup_set_translation_domain(VALUE self, VALUE domain)
301
423
 
302
424
  #if GTK_CHECK_VERSION(2,6,0)
303
425
  static VALUE
304
- actiongroup_translate_string(VALUE self, VALUE str)
426
+ rg_translate_string(VALUE self, VALUE str)
305
427
  {
306
428
  return CSTR2RVAL(gtk_action_group_translate_string(_SELF(self), RVAL2CSTR(str)));
307
429
  }
@@ -316,38 +438,38 @@ action_group_mark(void *p)
316
438
  group = GTK_ACTION_GROUP(p);
317
439
  actions = gtk_action_group_list_actions(group);
318
440
  for (node = actions; node; node = g_list_next(node)) {
319
- GtkWidget *action = node->data;
320
- rbgobj_gc_mark_instance(action);
441
+ GtkWidget *action = node->data;
442
+ rbgobj_gc_mark_instance(action);
321
443
  }
322
444
  g_list_free(actions);
323
445
  }
324
446
  #endif
325
447
 
326
448
  void
327
- Init_gtk_actiongroup()
449
+ Init_gtk_actiongroup(VALUE mGtk)
328
450
  {
329
451
  #if GTK_CHECK_VERSION(2,4,0)
330
- VALUE gActionGroup;
452
+ VALUE RG_TARGET_NAMESPACE;
331
453
 
332
- gActionGroup = G_DEF_CLASS_WITH_GC_FUNC(GTK_TYPE_ACTION_GROUP, "ActionGroup",
333
- mGtk, action_group_mark, NULL);
454
+ RG_TARGET_NAMESPACE = G_DEF_CLASS_WITH_GC_FUNC(GTK_TYPE_ACTION_GROUP, "ActionGroup",
455
+ mGtk, action_group_mark, NULL);
334
456
 
335
457
  id_action_procs = rb_intern("@action_procs");
336
458
  id_toggle_action_procs = rb_intern("@toggle_action_procs");
337
459
 
338
- rb_define_method(gActionGroup, "initialize", actiongroup_initialize, 1);
339
- rb_define_method(gActionGroup, "get_action", actiongroup_get_action, 1);
340
- rb_define_method(gActionGroup, "actions", actiongroup_list_actions, 0);
341
- rb_define_method(gActionGroup, "add_action", actiongroup_add_action, -1);
342
- rb_define_method(gActionGroup, "remove_action", actiongroup_remove_action, 1);
343
- rb_define_method(gActionGroup, "add_actions", actiongroup_add_actions, 1);
344
- rb_define_method(gActionGroup, "add_toggle_actions", actiongroup_add_toggle_actions, 1);
345
- rb_define_method(gActionGroup, "add_radio_actions", actiongroup_add_radio_actions, -1);
346
- rb_define_method(gActionGroup, "set_translate_func", actiongroup_set_translate_func, 0);
347
- rb_define_method(gActionGroup, "set_translation_domain", actiongroup_set_translation_domain, 1);
348
- G_DEF_SETTER(gActionGroup, "translation_domain");
460
+ RG_DEF_METHOD(initialize, 1);
461
+ RG_DEF_METHOD(get_action, 1);
462
+ RG_DEF_METHOD(actions, 0);
463
+ RG_DEF_METHOD(add_action, -1);
464
+ RG_DEF_METHOD(remove_action, 1);
465
+ RG_DEF_METHOD(add_actions, 1);
466
+ RG_DEF_METHOD(add_toggle_actions, 1);
467
+ RG_DEF_METHOD(add_radio_actions, -1);
468
+ RG_DEF_METHOD(set_translate_func, 0);
469
+ RG_DEF_METHOD(set_translation_domain, 1);
470
+ G_DEF_SETTER(RG_TARGET_NAMESPACE, "translation_domain");
349
471
  #if GTK_CHECK_VERSION(2,6,0)
350
- rb_define_method(gActionGroup, "translate_string", actiongroup_translate_string, 1);
472
+ RG_DEF_METHOD(translate_string, 1);
351
473
  #endif
352
474
  #endif
353
475
  }