gtk3 2.2.4-x64-mingw32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (457) hide show
  1. checksums.yaml +7 -0
  2. data/Rakefile +20 -0
  3. data/ext/gtk3/conversions.c +34 -0
  4. data/ext/gtk3/depend +11 -0
  5. data/ext/gtk3/extconf.rb +99 -0
  6. data/ext/gtk3/gtk3.def +10 -0
  7. data/ext/gtk3/init.c +34 -0
  8. data/ext/gtk3/rbgtk-about-dialog.c +113 -0
  9. data/ext/gtk3/rbgtk-accel-group-entry.c +94 -0
  10. data/ext/gtk3/rbgtk-accel-group.c +199 -0
  11. data/ext/gtk3/rbgtk-accel-key.c +120 -0
  12. data/ext/gtk3/rbgtk-accel-label.c +55 -0
  13. data/ext/gtk3/rbgtk-accel-map.c +135 -0
  14. data/ext/gtk3/rbgtk-accelerator.c +78 -0
  15. data/ext/gtk3/rbgtk-accessible.c +40 -0
  16. data/ext/gtk3/rbgtk-action-bar.c +73 -0
  17. data/ext/gtk3/rbgtk-action-group.c +467 -0
  18. data/ext/gtk3/rbgtk-action.c +205 -0
  19. data/ext/gtk3/rbgtk-activatable.c +30 -0
  20. data/ext/gtk3/rbgtk-adjustment.c +98 -0
  21. data/ext/gtk3/rbgtk-alignment.c +75 -0
  22. data/ext/gtk3/rbgtk-allocation.c +166 -0
  23. data/ext/gtk3/rbgtk-app-chooser-button.c +70 -0
  24. data/ext/gtk3/rbgtk-app-chooser-dialog.c +68 -0
  25. data/ext/gtk3/rbgtk-app-chooser-widget.c +40 -0
  26. data/ext/gtk3/rbgtk-app-chooser.c +47 -0
  27. data/ext/gtk3/rbgtk-application.c +69 -0
  28. data/ext/gtk3/rbgtk-arrow.c +56 -0
  29. data/ext/gtk3/rbgtk-aspect-frame.c +56 -0
  30. data/ext/gtk3/rbgtk-assistant.c +218 -0
  31. data/ext/gtk3/rbgtk-bin.c +42 -0
  32. data/ext/gtk3/rbgtk-binding-set.c +154 -0
  33. data/ext/gtk3/rbgtk-border.c +119 -0
  34. data/ext/gtk3/rbgtk-box.c +146 -0
  35. data/ext/gtk3/rbgtk-buildable.c +96 -0
  36. data/ext/gtk3/rbgtk-builder.c +166 -0
  37. data/ext/gtk3/rbgtk-button-box.c +87 -0
  38. data/ext/gtk3/rbgtk-button.c +93 -0
  39. data/ext/gtk3/rbgtk-calendar.c +118 -0
  40. data/ext/gtk3/rbgtk-cell-editable.c +57 -0
  41. data/ext/gtk3/rbgtk-cell-layout.c +144 -0
  42. data/ext/gtk3/rbgtk-cell-renderer-accel.c +41 -0
  43. data/ext/gtk3/rbgtk-cell-renderer-combo.c +38 -0
  44. data/ext/gtk3/rbgtk-cell-renderer-pixbuf.c +41 -0
  45. data/ext/gtk3/rbgtk-cell-renderer-progress.c +38 -0
  46. data/ext/gtk3/rbgtk-cell-renderer-spin.c +39 -0
  47. data/ext/gtk3/rbgtk-cell-renderer-spinner.c +38 -0
  48. data/ext/gtk3/rbgtk-cell-renderer-text.c +48 -0
  49. data/ext/gtk3/rbgtk-cell-renderer-toggle.c +39 -0
  50. data/ext/gtk3/rbgtk-cell-renderer.c +119 -0
  51. data/ext/gtk3/rbgtk-cell-view.c +95 -0
  52. data/ext/gtk3/rbgtk-check-button.c +64 -0
  53. data/ext/gtk3/rbgtk-check-menu-item.c +64 -0
  54. data/ext/gtk3/rbgtk-clip-board.c +389 -0
  55. data/ext/gtk3/rbgtk-color-button.c +55 -0
  56. data/ext/gtk3/rbgtk-color-selection-dialog.c +56 -0
  57. data/ext/gtk3/rbgtk-color-selection.c +219 -0
  58. data/ext/gtk3/rbgtk-combo-box-text.c +138 -0
  59. data/ext/gtk3/rbgtk-combo-box.c +147 -0
  60. data/ext/gtk3/rbgtk-const.c +79 -0
  61. data/ext/gtk3/rbgtk-container.c +788 -0
  62. data/ext/gtk3/rbgtk-css-provider.c +110 -0
  63. data/ext/gtk3/rbgtk-dialog.c +206 -0
  64. data/ext/gtk3/rbgtk-drag-gdk-drag-context.c +108 -0
  65. data/ext/gtk3/rbgtk-drag.c +93 -0
  66. data/ext/gtk3/rbgtk-drawing-area.c +42 -0
  67. data/ext/gtk3/rbgtk-editable.c +149 -0
  68. data/ext/gtk3/rbgtk-entry-buffer.c +87 -0
  69. data/ext/gtk3/rbgtk-entry-completion.c +122 -0
  70. data/ext/gtk3/rbgtk-entry.c +184 -0
  71. data/ext/gtk3/rbgtk-event-box.c +42 -0
  72. data/ext/gtk3/rbgtk-expander.c +49 -0
  73. data/ext/gtk3/rbgtk-file-chooser-button.c +50 -0
  74. data/ext/gtk3/rbgtk-file-chooser-dialog.c +62 -0
  75. data/ext/gtk3/rbgtk-file-chooser-widget.c +40 -0
  76. data/ext/gtk3/rbgtk-file-chooser.c +381 -0
  77. data/ext/gtk3/rbgtk-file-filter.c +128 -0
  78. data/ext/gtk3/rbgtk-file-system-error.c +48 -0
  79. data/ext/gtk3/rbgtk-fixed.c +61 -0
  80. data/ext/gtk3/rbgtk-font-button.c +49 -0
  81. data/ext/gtk3/rbgtk-font-chooser-dialog.c +56 -0
  82. data/ext/gtk3/rbgtk-font-chooser-widget.c +45 -0
  83. data/ext/gtk3/rbgtk-font-chooser.c +78 -0
  84. data/ext/gtk3/rbgtk-frame.c +69 -0
  85. data/ext/gtk3/rbgtk-gdk-event.c +38 -0
  86. data/ext/gtk3/rbgtk-grid.c +105 -0
  87. data/ext/gtk3/rbgtk-handle-box.c +45 -0
  88. data/ext/gtk3/rbgtk-header-bar.c +58 -0
  89. data/ext/gtk3/rbgtk-hsv.c +102 -0
  90. data/ext/gtk3/rbgtk-icon-factory.c +85 -0
  91. data/ext/gtk3/rbgtk-icon-info.c +115 -0
  92. data/ext/gtk3/rbgtk-icon-set.c +84 -0
  93. data/ext/gtk3/rbgtk-icon-size.c +91 -0
  94. data/ext/gtk3/rbgtk-icon-source.c +184 -0
  95. data/ext/gtk3/rbgtk-icon-theme.c +268 -0
  96. data/ext/gtk3/rbgtk-icon-view.c +295 -0
  97. data/ext/gtk3/rbgtk-im-multicontext.c +48 -0
  98. data/ext/gtk3/rbgtk-image-menu-item.c +67 -0
  99. data/ext/gtk3/rbgtk-image.c +162 -0
  100. data/ext/gtk3/rbgtk-imcon-text-simple.c +69 -0
  101. data/ext/gtk3/rbgtk-imcon-text.c +133 -0
  102. data/ext/gtk3/rbgtk-infobar.c +121 -0
  103. data/ext/gtk3/rbgtk-invisible.c +49 -0
  104. data/ext/gtk3/rbgtk-label.c +139 -0
  105. data/ext/gtk3/rbgtk-layout.c +93 -0
  106. data/ext/gtk3/rbgtk-level-bar.c +88 -0
  107. data/ext/gtk3/rbgtk-link-button.c +49 -0
  108. data/ext/gtk3/rbgtk-list-store.c +399 -0
  109. data/ext/gtk3/rbgtk-lock-button.c +50 -0
  110. data/ext/gtk3/rbgtk-menu-button.c +41 -0
  111. data/ext/gtk3/rbgtk-menu-item.c +95 -0
  112. data/ext/gtk3/rbgtk-menu-shell.c +106 -0
  113. data/ext/gtk3/rbgtk-menu-tool-button.c +81 -0
  114. data/ext/gtk3/rbgtk-menu.c +168 -0
  115. data/ext/gtk3/rbgtk-menubar.c +43 -0
  116. data/ext/gtk3/rbgtk-message-dialog.c +74 -0
  117. data/ext/gtk3/rbgtk-misc.c +70 -0
  118. data/ext/gtk3/rbgtk-notebook.c +383 -0
  119. data/ext/gtk3/rbgtk-numerable-icon.c +50 -0
  120. data/ext/gtk3/rbgtk-orientable.c +27 -0
  121. data/ext/gtk3/rbgtk-overlay.c +53 -0
  122. data/ext/gtk3/rbgtk-page-setup-unix-dialog.c +94 -0
  123. data/ext/gtk3/rbgtk-page-setup.c +195 -0
  124. data/ext/gtk3/rbgtk-paned.c +114 -0
  125. data/ext/gtk3/rbgtk-paper-size.c +179 -0
  126. data/ext/gtk3/rbgtk-plug.c +85 -0
  127. data/ext/gtk3/rbgtk-print-context.c +125 -0
  128. data/ext/gtk3/rbgtk-print-job.c +148 -0
  129. data/ext/gtk3/rbgtk-print-operation-preview.c +59 -0
  130. data/ext/gtk3/rbgtk-print-operation.c +149 -0
  131. data/ext/gtk3/rbgtk-print-settings.c +807 -0
  132. data/ext/gtk3/rbgtk-print-unix-dialog.c +90 -0
  133. data/ext/gtk3/rbgtk-printer.c +155 -0
  134. data/ext/gtk3/rbgtk-progress-bar.c +72 -0
  135. data/ext/gtk3/rbgtk-radio-action.c +122 -0
  136. data/ext/gtk3/rbgtk-radio-button.c +89 -0
  137. data/ext/gtk3/rbgtk-radio-menu-item.c +147 -0
  138. data/ext/gtk3/rbgtk-radio-tool-button.c +131 -0
  139. data/ext/gtk3/rbgtk-range.c +68 -0
  140. data/ext/gtk3/rbgtk-recent-action.c +64 -0
  141. data/ext/gtk3/rbgtk-recent-chooser-dialog.c +66 -0
  142. data/ext/gtk3/rbgtk-recent-chooser-menu.c +50 -0
  143. data/ext/gtk3/rbgtk-recent-chooser-widget.c +48 -0
  144. data/ext/gtk3/rbgtk-recent-chooser.c +198 -0
  145. data/ext/gtk3/rbgtk-recent-data.c +188 -0
  146. data/ext/gtk3/rbgtk-recent-filter-info.c +201 -0
  147. data/ext/gtk3/rbgtk-recent-filter.c +169 -0
  148. data/ext/gtk3/rbgtk-recent-info.c +213 -0
  149. data/ext/gtk3/rbgtk-recent-manager.c +134 -0
  150. data/ext/gtk3/rbgtk-revealer.c +42 -0
  151. data/ext/gtk3/rbgtk-scale-button.c +84 -0
  152. data/ext/gtk3/rbgtk-scale.c +97 -0
  153. data/ext/gtk3/rbgtk-scrollable.c +31 -0
  154. data/ext/gtk3/rbgtk-scrollbar.c +52 -0
  155. data/ext/gtk3/rbgtk-scrolled-window.c +122 -0
  156. data/ext/gtk3/rbgtk-search-bar.c +59 -0
  157. data/ext/gtk3/rbgtk-search-entry.c +42 -0
  158. data/ext/gtk3/rbgtk-selection-data.c +281 -0
  159. data/ext/gtk3/rbgtk-selection.c +168 -0
  160. data/ext/gtk3/rbgtk-separator-menu-item.c +39 -0
  161. data/ext/gtk3/rbgtk-separator-tool-item.c +38 -0
  162. data/ext/gtk3/rbgtk-separator.c +44 -0
  163. data/ext/gtk3/rbgtk-settings.c +229 -0
  164. data/ext/gtk3/rbgtk-size-group.c +66 -0
  165. data/ext/gtk3/rbgtk-socket.c +82 -0
  166. data/ext/gtk3/rbgtk-spin-button.c +132 -0
  167. data/ext/gtk3/rbgtk-spinner.c +55 -0
  168. data/ext/gtk3/rbgtk-stack-switcher.c +41 -0
  169. data/ext/gtk3/rbgtk-stack.c +106 -0
  170. data/ext/gtk3/rbgtk-status-bar.c +77 -0
  171. data/ext/gtk3/rbgtk-status-icon.c +122 -0
  172. data/ext/gtk3/rbgtk-stock.c +213 -0
  173. data/ext/gtk3/rbgtk-style-context-gdk-screen.c +61 -0
  174. data/ext/gtk3/rbgtk-style-context.c +411 -0
  175. data/ext/gtk3/rbgtk-style-properties.c +118 -0
  176. data/ext/gtk3/rbgtk-style-provider.c +67 -0
  177. data/ext/gtk3/rbgtk-switch.c +40 -0
  178. data/ext/gtk3/rbgtk-table.c +190 -0
  179. data/ext/gtk3/rbgtk-target-list.c +125 -0
  180. data/ext/gtk3/rbgtk-tearoff-menu-item.c +41 -0
  181. data/ext/gtk3/rbgtk-text-appearance.c +236 -0
  182. data/ext/gtk3/rbgtk-text-attributes.c +326 -0
  183. data/ext/gtk3/rbgtk-text-buffer.c +899 -0
  184. data/ext/gtk3/rbgtk-text-child-anchor.c +56 -0
  185. data/ext/gtk3/rbgtk-text-iter.c +732 -0
  186. data/ext/gtk3/rbgtk-text-mark.c +71 -0
  187. data/ext/gtk3/rbgtk-text-tag-table.c +96 -0
  188. data/ext/gtk3/rbgtk-text-tag.c +68 -0
  189. data/ext/gtk3/rbgtk-text-view.c +336 -0
  190. data/ext/gtk3/rbgtk-theming-engine.c +257 -0
  191. data/ext/gtk3/rbgtk-toggle-action.c +61 -0
  192. data/ext/gtk3/rbgtk-toggle-button.c +87 -0
  193. data/ext/gtk3/rbgtk-toggle-tool-button.c +61 -0
  194. data/ext/gtk3/rbgtk-tool-button.c +66 -0
  195. data/ext/gtk3/rbgtk-tool-item.c +200 -0
  196. data/ext/gtk3/rbgtk-tool-itemgroup.c +70 -0
  197. data/ext/gtk3/rbgtk-tool-shell.c +96 -0
  198. data/ext/gtk3/rbgtk-toolbar.c +118 -0
  199. data/ext/gtk3/rbgtk-tooltip-gdk-display.c +39 -0
  200. data/ext/gtk3/rbgtk-tooltip.c +100 -0
  201. data/ext/gtk3/rbgtk-tree-dragdest.c +28 -0
  202. data/ext/gtk3/rbgtk-tree-dragsource.c +28 -0
  203. data/ext/gtk3/rbgtk-tree-iter.c +258 -0
  204. data/ext/gtk3/rbgtk-tree-model.c +246 -0
  205. data/ext/gtk3/rbgtk-tree-modelfilter.c +197 -0
  206. data/ext/gtk3/rbgtk-tree-modelsort.c +111 -0
  207. data/ext/gtk3/rbgtk-tree-path.c +191 -0
  208. data/ext/gtk3/rbgtk-tree-rowreference.c +140 -0
  209. data/ext/gtk3/rbgtk-tree-selection.c +190 -0
  210. data/ext/gtk3/rbgtk-tree-sortable.c +122 -0
  211. data/ext/gtk3/rbgtk-tree-store.c +330 -0
  212. data/ext/gtk3/rbgtk-tree-view-column.c +256 -0
  213. data/ext/gtk3/rbgtk-tree-view.c +716 -0
  214. data/ext/gtk3/rbgtk-ui-manager.c +189 -0
  215. data/ext/gtk3/rbgtk-viewport.c +44 -0
  216. data/ext/gtk3/rbgtk-volume-button.c +41 -0
  217. data/ext/gtk3/rbgtk-widget-path.c +229 -0
  218. data/ext/gtk3/rbgtk-widget.c +1554 -0
  219. data/ext/gtk3/rbgtk-window-group.c +80 -0
  220. data/ext/gtk3/rbgtk-window.c +565 -0
  221. data/ext/gtk3/rbgtk.c +783 -0
  222. data/ext/gtk3/rbgtk3.h +90 -0
  223. data/ext/gtk3/rbgtk3conversions.h +439 -0
  224. data/ext/gtk3/rbgtk3private.h +300 -0
  225. data/ext/gtk3/rbgtk3util.c +67 -0
  226. data/ext/gtk3/rbgtk3util.h +32 -0
  227. data/extconf.rb +49 -0
  228. data/lib/2.0/gtk3.so +0 -0
  229. data/lib/2.1/gtk3.so +0 -0
  230. data/lib/2.2/gtk3.so +0 -0
  231. data/lib/gtk3.rb +11 -0
  232. data/lib/gtk3/base.rb +67 -0
  233. data/lib/gtk3/deprecated.rb +1004 -0
  234. data/sample/gtk-demo/README +7 -0
  235. data/sample/gtk-demo/alphatest.png +0 -0
  236. data/sample/gtk-demo/apple-red.png +0 -0
  237. data/sample/gtk-demo/appwindow.rb +233 -0
  238. data/sample/gtk-demo/background.jpg +0 -0
  239. data/sample/gtk-demo/builder.rb +51 -0
  240. data/sample/gtk-demo/button_box.rb +83 -0
  241. data/sample/gtk-demo/cairo-arc-negative.rb +41 -0
  242. data/sample/gtk-demo/cairo-arc.rb +41 -0
  243. data/sample/gtk-demo/cairo-clip-image.rb +51 -0
  244. data/sample/gtk-demo/cairo-clip-rectangle.rb +35 -0
  245. data/sample/gtk-demo/cairo-clip.rb +35 -0
  246. data/sample/gtk-demo/cairo-curve-rectangle.rb +76 -0
  247. data/sample/gtk-demo/cairo-curve-to.rb +43 -0
  248. data/sample/gtk-demo/cairo-dash.rb +39 -0
  249. data/sample/gtk-demo/cairo-fill-and-stroke.rb +32 -0
  250. data/sample/gtk-demo/cairo-fill-and-stroke2.rb +38 -0
  251. data/sample/gtk-demo/cairo-gradient.rb +35 -0
  252. data/sample/gtk-demo/cairo-image-pattern.rb +39 -0
  253. data/sample/gtk-demo/cairo-image.rb +49 -0
  254. data/sample/gtk-demo/cairo-line-cap.rb +53 -0
  255. data/sample/gtk-demo/cairo-line-join.rb +41 -0
  256. data/sample/gtk-demo/cairo-long-lines.rb +41 -0
  257. data/sample/gtk-demo/cairo-operator.rb +83 -0
  258. data/sample/gtk-demo/cairo-path.rb +28 -0
  259. data/sample/gtk-demo/cairo-pattern-fill.rb +88 -0
  260. data/sample/gtk-demo/cairo-self-intersect.rb +32 -0
  261. data/sample/gtk-demo/cairo-text-align-center.rb +45 -0
  262. data/sample/gtk-demo/cairo-text-extents.rb +46 -0
  263. data/sample/gtk-demo/cairo-text.rb +43 -0
  264. data/sample/gtk-demo/changedisplay.rb +407 -0
  265. data/sample/gtk-demo/clipboard.rb +67 -0
  266. data/sample/gtk-demo/colorsel.rb +82 -0
  267. data/sample/gtk-demo/common.rb +87 -0
  268. data/sample/gtk-demo/css_accordion.css +53 -0
  269. data/sample/gtk-demo/css_accordion.rb +75 -0
  270. data/sample/gtk-demo/demo.ui +258 -0
  271. data/sample/gtk-demo/dialog.rb +137 -0
  272. data/sample/gtk-demo/drawingarea.rb +205 -0
  273. data/sample/gtk-demo/editable_cells.rb +173 -0
  274. data/sample/gtk-demo/entry_completion.rb +63 -0
  275. data/sample/gtk-demo/expander.rb +42 -0
  276. data/sample/gtk-demo/floppybuddy.gif +0 -0
  277. data/sample/gtk-demo/gnome-applets.png +0 -0
  278. data/sample/gtk-demo/gnome-calendar.png +0 -0
  279. data/sample/gtk-demo/gnome-foot.png +0 -0
  280. data/sample/gtk-demo/gnome-fs-directory.png +0 -0
  281. data/sample/gtk-demo/gnome-fs-regular.png +0 -0
  282. data/sample/gtk-demo/gnome-gimp.png +0 -0
  283. data/sample/gtk-demo/gnome-gmush.png +0 -0
  284. data/sample/gtk-demo/gnome-gsame.png +0 -0
  285. data/sample/gtk-demo/gnu-keys.png +0 -0
  286. data/sample/gtk-demo/gtk-logo-rgb.gif +0 -0
  287. data/sample/gtk-demo/hypertext.rb +211 -0
  288. data/sample/gtk-demo/iconview.rb +110 -0
  289. data/sample/gtk-demo/images.rb +197 -0
  290. data/sample/gtk-demo/infobar.rb +78 -0
  291. data/sample/gtk-demo/item_factory.rb +94 -0
  292. data/sample/gtk-demo/links.rb +53 -0
  293. data/sample/gtk-demo/list_store.rb +138 -0
  294. data/sample/gtk-demo/main.rb +384 -0
  295. data/sample/gtk-demo/menus.rb +172 -0
  296. data/sample/gtk-demo/panes.rb +156 -0
  297. data/sample/gtk-demo/pixbufs.rb +167 -0
  298. data/sample/gtk-demo/printing.rb +128 -0
  299. data/sample/gtk-demo/reset.css +69 -0
  300. data/sample/gtk-demo/rotated_text.rb +72 -0
  301. data/sample/gtk-demo/ruby-gnome2-logo.png +0 -0
  302. data/sample/gtk-demo/sizegroup.rb +118 -0
  303. data/sample/gtk-demo/spinner.rb +59 -0
  304. data/sample/gtk-demo/stock_browser.rb +233 -0
  305. data/sample/gtk-demo/textview.rb +436 -0
  306. data/sample/gtk-demo/theming.ui +319 -0
  307. data/sample/gtk-demo/theming_style_classes.rb +48 -0
  308. data/sample/gtk-demo/tree_store.rb +270 -0
  309. data/sample/misc/aboutdialog.rb +42 -0
  310. data/sample/misc/aboutdialog2.rb +42 -0
  311. data/sample/misc/alpha-demo.rb +70 -0
  312. data/sample/misc/assistant.rb +281 -0
  313. data/sample/misc/bindings.rb +97 -0
  314. data/sample/misc/button.rb +72 -0
  315. data/sample/misc/button2.rb +28 -0
  316. data/sample/misc/buttonbox.rb +93 -0
  317. data/sample/misc/cairo-pong.rb +217 -0
  318. data/sample/misc/calendar.rb +66 -0
  319. data/sample/misc/checkbutton.rb +49 -0
  320. data/sample/misc/colorselection.rb +22 -0
  321. data/sample/misc/combo_check.rb +79 -0
  322. data/sample/misc/combobox.rb +85 -0
  323. data/sample/misc/composited-windows.rb +113 -0
  324. data/sample/misc/cursor.rb +34 -0
  325. data/sample/misc/dialog.rb +44 -0
  326. data/sample/misc/dialog2.rb +36 -0
  327. data/sample/misc/dnd.rb +64 -0
  328. data/sample/misc/dndtreeview.rb +56 -0
  329. data/sample/misc/drag-move.rb +139 -0
  330. data/sample/misc/drawing.rb +109 -0
  331. data/sample/misc/entry.rb +34 -0
  332. data/sample/misc/entrycompletion.rb +33 -0
  333. data/sample/misc/expander.rb +27 -0
  334. data/sample/misc/filechooser.rb +41 -0
  335. data/sample/misc/frame.rb +69 -0
  336. data/sample/misc/gdkscreen.rb +32 -0
  337. data/sample/misc/gnome-logo-icon.png +0 -0
  338. data/sample/misc/helloworld.rb +35 -0
  339. data/sample/misc/iconview.rb +38 -0
  340. data/sample/misc/image.rb +42 -0
  341. data/sample/misc/itemfactory.rb +73 -0
  342. data/sample/misc/itemfactory2.rb +74 -0
  343. data/sample/misc/keyboard_grab.rb +29 -0
  344. data/sample/misc/label.rb +33 -0
  345. data/sample/misc/linkbutton.rb +42 -0
  346. data/sample/misc/listview.rb +92 -0
  347. data/sample/misc/menu.rb +81 -0
  348. data/sample/misc/misc_button.rb +49 -0
  349. data/sample/misc/mouse-gesture.rb +465 -0
  350. data/sample/misc/pangorenderer.rb +66 -0
  351. data/sample/misc/pointer_grab.rb +34 -0
  352. data/sample/misc/print.rb +247 -0
  353. data/sample/misc/properties.rb +86 -0
  354. data/sample/misc/radiobutton.rb +47 -0
  355. data/sample/misc/recentchooserdialog.rb +52 -0
  356. data/sample/misc/rgtk+cairo.rb +42 -0
  357. data/sample/misc/scalebutton.rb +19 -0
  358. data/sample/misc/settings.rb +41 -0
  359. data/sample/misc/statusicon.rb +106 -0
  360. data/sample/misc/stock.rb +36 -0
  361. data/sample/misc/style_property.rb +67 -0
  362. data/sample/misc/style_property.rc +19 -0
  363. data/sample/misc/t-gtkplug.rb +58 -0
  364. data/sample/misc/t-gtksocket.rb +65 -0
  365. data/sample/misc/test.xpm +92 -0
  366. data/sample/misc/textbuffer_serialize.rb +130 -0
  367. data/sample/misc/threads.rb +70 -0
  368. data/sample/misc/to_drawable.rb +42 -0
  369. data/sample/misc/togglebutton.rb +34 -0
  370. data/sample/misc/toolbar.rb +55 -0
  371. data/sample/misc/tooltips.rb +204 -0
  372. data/sample/misc/tree_combo.rb +79 -0
  373. data/sample/misc/tree_progress.rb +61 -0
  374. data/sample/misc/treemodelfilter.rb +49 -0
  375. data/sample/misc/treeview.rb +71 -0
  376. data/sample/misc/uimanager.rb +148 -0
  377. data/sample/misc/uimanager2.rb +91 -0
  378. data/sample/misc/uimanager2.xml +36 -0
  379. data/sample/misc/window.rb +24 -0
  380. data/sample/misc/xbm_cursor.rb +43 -0
  381. data/sample/testgtk/3DRings.xpm +116 -0
  382. data/sample/testgtk/FilesQueue.xpm +98 -0
  383. data/sample/testgtk/Modeller.xpm +117 -0
  384. data/sample/testgtk/README +14 -0
  385. data/sample/testgtk/button.rb +124 -0
  386. data/sample/testgtk/buttonbox.rb +100 -0
  387. data/sample/testgtk/check-n.xpm +21 -0
  388. data/sample/testgtk/check-y.xpm +21 -0
  389. data/sample/testgtk/checkbutton.rb +67 -0
  390. data/sample/testgtk/circles.xbm +46 -0
  391. data/sample/testgtk/colorselect.rb +33 -0
  392. data/sample/testgtk/dialog.rb +48 -0
  393. data/sample/testgtk/entry.rb +73 -0
  394. data/sample/testgtk/filesel.rb +65 -0
  395. data/sample/testgtk/fontselection.rb +56 -0
  396. data/sample/testgtk/labels.rb +74 -0
  397. data/sample/testgtk/layout.rb +108 -0
  398. data/sample/testgtk/marble.xpm +408 -0
  399. data/sample/testgtk/menu.rb +79 -0
  400. data/sample/testgtk/notebook.rb +280 -0
  401. data/sample/testgtk/pixmap.rb +58 -0
  402. data/sample/testgtk/progressbar.rb +173 -0
  403. data/sample/testgtk/radiobutton.rb +61 -0
  404. data/sample/testgtk/range.rb +65 -0
  405. data/sample/testgtk/reparent.rb +91 -0
  406. data/sample/testgtk/sample.rb +80 -0
  407. data/sample/testgtk/savedposition.rb +87 -0
  408. data/sample/testgtk/scrolledwindow.rb +67 -0
  409. data/sample/testgtk/shapedwindow.rb +99 -0
  410. data/sample/testgtk/spinbutton.rb +181 -0
  411. data/sample/testgtk/statusbar.rb +89 -0
  412. data/sample/testgtk/test.xpm +92 -0
  413. data/sample/testgtk/testgtk.rb +176 -0
  414. data/sample/testgtk/testgtkrc +146 -0
  415. data/sample/testgtk/testgtkrc2 +21 -0
  416. data/sample/testgtk/togglebutton.rb +53 -0
  417. data/sample/testgtk/toolbar.rb +82 -0
  418. data/sample/testgtk/tooltips.rb +41 -0
  419. data/sample/testgtk/wmhints.rb +40 -0
  420. data/test/gtk-test-utils.rb +15 -0
  421. data/test/run-test.rb +58 -0
  422. data/test/test_gc.rb +22 -0
  423. data/test/test_gtk.rb +23 -0
  424. data/test/test_gtk_about_dialog.rb +13 -0
  425. data/test/test_gtk_accel_group_entry.rb +24 -0
  426. data/test/test_gtk_accel_key.rb +24 -0
  427. data/test/test_gtk_accessible.rb +31 -0
  428. data/test/test_gtk_action_group.rb +46 -0
  429. data/test/test_gtk_allocation.rb +24 -0
  430. data/test/test_gtk_border.rb +24 -0
  431. data/test/test_gtk_buildable.rb +56 -0
  432. data/test/test_gtk_builder.rb +166 -0
  433. data/test/test_gtk_container.rb +32 -0
  434. data/test/test_gtk_css_provider.rb +27 -0
  435. data/test/test_gtk_entry.rb +52 -0
  436. data/test/test_gtk_header_bar.rb +66 -0
  437. data/test/test_gtk_icon_theme.rb +31 -0
  438. data/test/test_gtk_icon_view.rb +41 -0
  439. data/test/test_gtk_image.rb +8 -0
  440. data/test/test_gtk_level_bar.rb +82 -0
  441. data/test/test_gtk_list_store.rb +105 -0
  442. data/test/test_gtk_menu_button.rb +49 -0
  443. data/test/test_gtk_menu_item.rb +13 -0
  444. data/test/test_gtk_recent_data.rb +24 -0
  445. data/test/test_gtk_recent_filter_info.rb +26 -0
  446. data/test/test_gtk_revealer.rb +57 -0
  447. data/test/test_gtk_search_bar.rb +55 -0
  448. data/test/test_gtk_search_entry.rb +34 -0
  449. data/test/test_gtk_stack.rb +115 -0
  450. data/test/test_gtk_stack_switcher.rb +30 -0
  451. data/test/test_gtk_style_context.rb +30 -0
  452. data/test/test_gtk_style_properties.rb +38 -0
  453. data/test/test_gtk_tree_path.rb +20 -0
  454. data/test/test_gtk_tree_selection.rb +31 -0
  455. data/test/test_gtk_unix_print.rb +14 -0
  456. data/test/test_gtk_widget.rb +24 -0
  457. metadata +582 -0
@@ -0,0 +1,56 @@
1
+ /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
+ /*
3
+ * Copyright (C) 2011 Ruby-GNOME2 Project Team
4
+ * Copyright (C) 2002,2003 Masahiro Sakai
5
+ * Copyright (C) 2002-2006 Ruby-GNOME2 Project Team
6
+ *
7
+ * This library is free software; you can redistribute it and/or
8
+ * modify it under the terms of the GNU Lesser General Public
9
+ * License as published by the Free Software Foundation; either
10
+ * version 2.1 of the License, or (at your option) any later version.
11
+ *
12
+ * This library is distributed in the hope that it will be useful,
13
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
+ * Lesser General Public License for more details.
16
+ *
17
+ * You should have received a copy of the GNU Lesser General Public
18
+ * License along with this library; if not, write to the Free Software
19
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
20
+ * MA 02110-1301 USA
21
+ */
22
+
23
+ #include "rbgtk3private.h"
24
+
25
+ #define RG_TARGET_NAMESPACE cTextChildAnchor
26
+ #define _SELF(self) RVAL2GTKTEXTCHILDANCHOR(self)
27
+
28
+ static VALUE
29
+ rg_initialize(VALUE self)
30
+ {
31
+ RBGTK_INITIALIZE(self, gtk_text_child_anchor_new());
32
+ return Qnil;
33
+ }
34
+
35
+ static VALUE
36
+ rg_widgets(VALUE self)
37
+ {
38
+ return GOBJGLIST2RVAL_FREE(gtk_text_child_anchor_get_widgets(_SELF(self)),
39
+ g_list_free, NULL);
40
+ }
41
+
42
+ static VALUE
43
+ rg_deleted_p(VALUE self)
44
+ {
45
+ return CBOOL2RVAL(gtk_text_child_anchor_get_deleted(_SELF(self)));
46
+ }
47
+
48
+ void
49
+ Init_gtk_textchild(VALUE mGtk)
50
+ {
51
+ VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(GTK_TYPE_TEXT_CHILD_ANCHOR, "TextChildAnchor", mGtk);
52
+
53
+ RG_DEF_METHOD(initialize, 0);
54
+ RG_DEF_METHOD(widgets, 0);
55
+ RG_DEF_METHOD_P(deleted, 0);
56
+ }
@@ -0,0 +1,732 @@
1
+ /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
2
+ /*
3
+ * Copyright (C) 2011 Ruby-GNOME2 Project Team
4
+ * Copyright (C) 2002-2005 Ruby-GNOME2 Project Team
5
+ * Copyright (C) 2002,2003 Masahiro Sakai
6
+ *
7
+ * This library is free software; you can redistribute it and/or
8
+ * modify it under the terms of the GNU Lesser General Public
9
+ * License as published by the Free Software Foundation; either
10
+ * version 2.1 of the License, or (at your option) any later version.
11
+ *
12
+ * This library is distributed in the hope that it will be useful,
13
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
+ * Lesser General Public License for more details.
16
+ *
17
+ * You should have received a copy of the GNU Lesser General Public
18
+ * License along with this library; if not, write to the Free Software
19
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
20
+ * MA 02110-1301 USA
21
+ */
22
+
23
+ #include "rbgtk3private.h"
24
+
25
+ #define RG_TARGET_NAMESPACE cTextIter
26
+ #define _SELF(s) (RVAL2GTKTEXTITER(s))
27
+
28
+ #define RVAL2ITER(self, position) rval2iter(self, position)
29
+
30
+ static GtkTextIter *
31
+ rval2iter(VALUE self, VALUE position)
32
+ {
33
+ if (!g_type_is_a(RVAL2GTYPE(position), GTK_TYPE_TEXT_ITER))
34
+ position = rb_funcall(rb_funcall(self, rb_intern("buffer"), 0), rb_intern("get_iter_at"), 1, position);
35
+ return RVAL2GTKTEXTITER(position);
36
+ }
37
+
38
+ static VALUE
39
+ rg_buffer(VALUE self)
40
+ {
41
+ return GOBJ2RVAL(gtk_text_iter_get_buffer(_SELF(self)));
42
+ }
43
+
44
+ static VALUE
45
+ rg_offset(VALUE self)
46
+ {
47
+ return INT2NUM(gtk_text_iter_get_offset(_SELF(self)));
48
+ }
49
+
50
+ static VALUE
51
+ rg_line(VALUE self)
52
+ {
53
+ return INT2NUM(gtk_text_iter_get_line(_SELF(self)));
54
+ }
55
+
56
+ static VALUE
57
+ rg_line_offset(VALUE self)
58
+ {
59
+ return INT2NUM(gtk_text_iter_get_line_offset(_SELF(self)));
60
+ }
61
+
62
+ static VALUE
63
+ rg_line_index(VALUE self)
64
+ {
65
+ return INT2NUM(gtk_text_iter_get_line_index(_SELF(self)));
66
+ }
67
+
68
+ static VALUE
69
+ rg_visible_line_offset(VALUE self)
70
+ {
71
+ return INT2NUM(gtk_text_iter_get_visible_line_offset(_SELF(self)));
72
+ }
73
+
74
+ static VALUE
75
+ rg_visible_line_index(VALUE self)
76
+ {
77
+ return INT2NUM(gtk_text_iter_get_visible_line_index(_SELF(self)));
78
+ }
79
+
80
+ static VALUE
81
+ rg_char(VALUE self)
82
+ {
83
+ gchar buf[10];
84
+ gint len = g_unichar_to_utf8(gtk_text_iter_get_char(_SELF(self)), buf);
85
+ buf[len] = '\0';
86
+ return CSTR2RVAL(buf);
87
+ }
88
+
89
+ static VALUE
90
+ rg_get_slice(VALUE self, VALUE rhs)
91
+ {
92
+ return CSTR2RVAL(gtk_text_iter_get_slice(_SELF(self), RVAL2ITER(self, rhs)));
93
+ }
94
+
95
+ static VALUE
96
+ rg_get_text(VALUE self, VALUE rhs)
97
+ {
98
+ return CSTR2RVAL(gtk_text_iter_get_text(_SELF(self), RVAL2ITER(self, rhs)));
99
+ }
100
+
101
+ static VALUE
102
+ rg_get_visible_slice(VALUE self, VALUE rhs)
103
+ {
104
+ return CSTR2RVAL(gtk_text_iter_get_visible_slice(_SELF(self), RVAL2ITER(self, rhs)));
105
+ }
106
+
107
+ static VALUE
108
+ rg_get_visible_text(VALUE self, VALUE rhs)
109
+ {
110
+ return CSTR2RVAL(gtk_text_iter_get_visible_text(_SELF(self), RVAL2ITER(self, rhs)));
111
+ }
112
+
113
+ static VALUE
114
+ rg_pixbuf(VALUE self)
115
+ {
116
+ VALUE pixbuf = GOBJ2RVAL(gtk_text_iter_get_pixbuf(_SELF(self)));
117
+ G_CHILD_SET(self, rb_intern("pixbuf"), pixbuf);
118
+ return pixbuf;
119
+ }
120
+
121
+ static VALUE
122
+ rg_marks(VALUE self)
123
+ {
124
+ /* need free? */
125
+ return GOBJGSLIST2RVAL_FREE(gtk_text_iter_get_marks(_SELF(self)),
126
+ g_slist_free, NULL);
127
+ }
128
+
129
+ static VALUE
130
+ rg_toggled_tags(VALUE self, VALUE toggled_on)
131
+ {
132
+ /* need free? */
133
+ return GOBJGSLIST2RVAL_FREE(gtk_text_iter_get_toggled_tags(_SELF(self),
134
+ RVAL2CBOOL(toggled_on)),
135
+ g_slist_free, NULL);
136
+ }
137
+
138
+ static VALUE
139
+ rg_child_anchor(VALUE self)
140
+ {
141
+ return GOBJ2RVAL(gtk_text_iter_get_child_anchor(_SELF(self)));
142
+ }
143
+
144
+ static VALUE
145
+ rg_begins_tag_p(VALUE self, VALUE tag)
146
+ {
147
+ return CBOOL2RVAL(gtk_text_iter_begins_tag(_SELF(self), RVAL2GTKTEXTTAG(tag)));
148
+ }
149
+
150
+ static VALUE
151
+ rg_ends_tag_p(VALUE self, VALUE tag)
152
+ {
153
+ return CBOOL2RVAL(gtk_text_iter_ends_tag(_SELF(self), RVAL2GTKTEXTTAG(tag)));
154
+ }
155
+
156
+ static VALUE
157
+ rg_toggles_tag_p(VALUE self, VALUE tag)
158
+ {
159
+ return CBOOL2RVAL(gtk_text_iter_toggles_tag(_SELF(self), RVAL2GTKTEXTTAG(tag)));
160
+ }
161
+
162
+ static VALUE
163
+ rg_has_tag_p(VALUE self, VALUE tag)
164
+ {
165
+ return CBOOL2RVAL(gtk_text_iter_has_tag(_SELF(self), RVAL2GTKTEXTTAG(tag)));
166
+ }
167
+
168
+ static VALUE
169
+ rg_tags(VALUE self)
170
+ {
171
+ return GOBJGSLIST2RVAL_FREE(gtk_text_iter_get_tags(_SELF(self)),
172
+ g_slist_free, NULL);
173
+ }
174
+
175
+ static VALUE
176
+ rg_editable_p(VALUE self, VALUE default_setting)
177
+ {
178
+ return CBOOL2RVAL(gtk_text_iter_editable(_SELF(self), RVAL2CBOOL(default_setting)));
179
+ }
180
+
181
+ static VALUE
182
+ rg_can_insert_p(VALUE self, VALUE default_setting)
183
+ {
184
+ return CBOOL2RVAL(gtk_text_iter_can_insert(_SELF(self), RVAL2CBOOL(default_setting)));
185
+ }
186
+
187
+ static VALUE
188
+ rg_starts_word_p(VALUE self)
189
+ {
190
+ return CBOOL2RVAL(gtk_text_iter_starts_word(_SELF(self)));
191
+ }
192
+
193
+ static VALUE
194
+ rg_ends_word_p(VALUE self)
195
+ {
196
+ return CBOOL2RVAL(gtk_text_iter_ends_word(_SELF(self)));
197
+ }
198
+
199
+ static VALUE
200
+ rg_inside_word_p(VALUE self)
201
+ {
202
+ return CBOOL2RVAL(gtk_text_iter_inside_word(_SELF(self)));
203
+ }
204
+
205
+ static VALUE
206
+ rg_starts_sentence_p(VALUE self)
207
+ {
208
+ return CBOOL2RVAL(gtk_text_iter_starts_sentence(_SELF(self)));
209
+ }
210
+
211
+ static VALUE
212
+ rg_ends_sentence_p(VALUE self)
213
+ {
214
+ return CBOOL2RVAL(gtk_text_iter_ends_sentence(_SELF(self)));
215
+ }
216
+
217
+ static VALUE
218
+ rg_starts_line_p(VALUE self)
219
+ {
220
+ return CBOOL2RVAL(gtk_text_iter_starts_line(_SELF(self)));
221
+ }
222
+
223
+ static VALUE
224
+ rg_ends_line_p(VALUE self)
225
+ {
226
+ return CBOOL2RVAL(gtk_text_iter_ends_line(_SELF(self)));
227
+ }
228
+
229
+ static VALUE
230
+ rg_cursor_position_p(VALUE self)
231
+ {
232
+ return CBOOL2RVAL(gtk_text_iter_is_cursor_position(_SELF(self)));
233
+ }
234
+
235
+ static VALUE
236
+ rg_chars_in_line(VALUE self)
237
+ {
238
+ return INT2NUM(gtk_text_iter_get_chars_in_line(_SELF(self)));
239
+ }
240
+
241
+ static VALUE
242
+ rg_bytes_in_line(VALUE self)
243
+ {
244
+ return INT2NUM(gtk_text_iter_get_bytes_in_line(_SELF(self)));
245
+ }
246
+
247
+ static VALUE
248
+ rg_attributes(VALUE self)
249
+ {
250
+ GtkTextAttributes attr;
251
+
252
+ if(gtk_text_iter_get_attributes(_SELF(self), &attr) == TRUE){
253
+ return GTKTEXTATTRIBUTES2RVAL(&attr);
254
+ } else {
255
+ return Qnil;
256
+ }
257
+ }
258
+
259
+ static VALUE
260
+ rg_language(VALUE self)
261
+ {
262
+ return CSTR2RVAL(pango_language_to_string(gtk_text_iter_get_language(_SELF(self))));
263
+ }
264
+
265
+ static VALUE
266
+ rg_end_p(VALUE self)
267
+ {
268
+ return CBOOL2RVAL(gtk_text_iter_is_end(_SELF(self)));
269
+ }
270
+
271
+ static VALUE
272
+ rg_start_p(VALUE self)
273
+ {
274
+ return CBOOL2RVAL(gtk_text_iter_is_start(_SELF(self)));
275
+ }
276
+
277
+ static VALUE
278
+ rg_forward_char(VALUE self)
279
+ {
280
+ return CBOOL2RVAL(gtk_text_iter_forward_char(_SELF(self)));
281
+ }
282
+
283
+ static VALUE
284
+ rg_backward_char(VALUE self)
285
+ {
286
+ return CBOOL2RVAL(gtk_text_iter_backward_char(_SELF(self)));
287
+ }
288
+
289
+ static VALUE
290
+ rg_forward_chars(VALUE self, VALUE i)
291
+ {
292
+ return CBOOL2RVAL(gtk_text_iter_forward_chars(_SELF(self), NUM2INT(i)));
293
+ }
294
+
295
+ static VALUE
296
+ rg_backward_chars(VALUE self, VALUE i)
297
+ {
298
+ return CBOOL2RVAL(gtk_text_iter_backward_chars(_SELF(self), NUM2INT(i)));
299
+ }
300
+
301
+ static VALUE
302
+ rg_forward_line(VALUE self)
303
+ {
304
+ return CBOOL2RVAL(gtk_text_iter_forward_line(_SELF(self)));
305
+ }
306
+
307
+ static VALUE
308
+ rg_backward_line(VALUE self)
309
+ {
310
+ return CBOOL2RVAL(gtk_text_iter_backward_line(_SELF(self)));
311
+ }
312
+
313
+ static VALUE
314
+ rg_forward_lines(VALUE self, VALUE i)
315
+ {
316
+ return CBOOL2RVAL(gtk_text_iter_forward_lines(_SELF(self), NUM2INT(i)));
317
+ }
318
+
319
+ static VALUE
320
+ rg_backward_lines(VALUE self, VALUE i)
321
+ {
322
+ return CBOOL2RVAL(gtk_text_iter_backward_lines(_SELF(self), NUM2INT(i)));
323
+ }
324
+
325
+ static VALUE
326
+ rg_forward_word_end(VALUE self)
327
+ {
328
+ return CBOOL2RVAL(gtk_text_iter_forward_word_end(_SELF(self)));
329
+ }
330
+
331
+ static VALUE
332
+ rg_backward_word_start(VALUE self)
333
+ {
334
+ return CBOOL2RVAL(gtk_text_iter_backward_word_start(_SELF(self)));
335
+ }
336
+
337
+ static VALUE
338
+ rg_forward_word_ends(VALUE self, VALUE i)
339
+ {
340
+ return CBOOL2RVAL(gtk_text_iter_forward_word_ends(_SELF(self), NUM2INT(i)));
341
+ }
342
+
343
+ static VALUE
344
+ rg_backward_word_starts(VALUE self, VALUE i)
345
+ {
346
+ return CBOOL2RVAL(gtk_text_iter_backward_word_starts(_SELF(self), NUM2INT(i)));
347
+ }
348
+
349
+ static VALUE
350
+ rg_forward_sentence_end(VALUE self)
351
+ {
352
+ return CBOOL2RVAL(gtk_text_iter_forward_sentence_end(_SELF(self)));
353
+ }
354
+
355
+ static VALUE
356
+ rg_backward_sentence_start(VALUE self)
357
+ {
358
+ return CBOOL2RVAL(gtk_text_iter_backward_sentence_start(_SELF(self)));
359
+ }
360
+
361
+ static VALUE
362
+ rg_forward_sentence_ends(VALUE self, VALUE i)
363
+ {
364
+ return CBOOL2RVAL(gtk_text_iter_forward_sentence_ends(_SELF(self), NUM2INT(i)));
365
+ }
366
+
367
+ static VALUE
368
+ rg_backward_sentence_starts(VALUE self, VALUE i)
369
+ {
370
+ return CBOOL2RVAL(gtk_text_iter_backward_sentence_starts(_SELF(self), NUM2INT(i)));
371
+ }
372
+
373
+ static VALUE
374
+ rg_forward_visible_word_ends(VALUE self, VALUE i)
375
+ {
376
+ return CBOOL2RVAL(gtk_text_iter_forward_visible_word_ends(_SELF(self), NUM2INT(i)));
377
+ }
378
+
379
+ static VALUE
380
+ rg_backward_visible_word_starts(VALUE self, VALUE i)
381
+ {
382
+ return CBOOL2RVAL(gtk_text_iter_backward_visible_word_starts(_SELF(self), NUM2INT(i)));
383
+ }
384
+
385
+ static VALUE
386
+ rg_forward_visible_word_end(VALUE self)
387
+ {
388
+ return CBOOL2RVAL(gtk_text_iter_forward_visible_word_end(_SELF(self)));
389
+ }
390
+
391
+ static VALUE
392
+ rg_backward_visible_word_start(VALUE self)
393
+ {
394
+ return CBOOL2RVAL(gtk_text_iter_backward_visible_word_start(_SELF(self)));
395
+ }
396
+
397
+ static VALUE
398
+ rg_forward_visible_cursor_position(VALUE self)
399
+ {
400
+ return CBOOL2RVAL(gtk_text_iter_forward_visible_cursor_position(_SELF(self)));
401
+ }
402
+
403
+ static VALUE
404
+ rg_backward_visible_cursor_position(VALUE self)
405
+ {
406
+ return CBOOL2RVAL(gtk_text_iter_backward_visible_cursor_position(_SELF(self)));
407
+ }
408
+
409
+ static VALUE
410
+ rg_forward_visible_cursor_positions(VALUE self, VALUE i)
411
+ {
412
+ return CBOOL2RVAL(gtk_text_iter_forward_visible_cursor_positions(_SELF(self), NUM2INT(i)));
413
+ }
414
+
415
+ static VALUE
416
+ rg_backward_visible_cursor_positions(VALUE self, VALUE i)
417
+ {
418
+ return CBOOL2RVAL(gtk_text_iter_backward_visible_cursor_positions(_SELF(self), NUM2INT(i)));
419
+ }
420
+
421
+ static VALUE
422
+ rg_forward_visible_line(VALUE self)
423
+ {
424
+ return CBOOL2RVAL(gtk_text_iter_forward_visible_line(_SELF(self)));
425
+ }
426
+
427
+ static VALUE
428
+ rg_backward_visible_line(VALUE self)
429
+ {
430
+ return CBOOL2RVAL(gtk_text_iter_backward_visible_line(_SELF(self)));
431
+ }
432
+
433
+ static VALUE
434
+ rg_forward_visible_lines(VALUE self, VALUE i)
435
+ {
436
+ return CBOOL2RVAL(gtk_text_iter_forward_visible_lines(_SELF(self), NUM2INT(i)));
437
+ }
438
+
439
+ static VALUE
440
+ rg_backward_visible_lines(VALUE self, VALUE i)
441
+ {
442
+ return CBOOL2RVAL(gtk_text_iter_backward_visible_lines(_SELF(self), NUM2INT(i)));
443
+ }
444
+
445
+ static VALUE
446
+ rg_forward_cursor_position(VALUE self)
447
+ {
448
+ return CBOOL2RVAL(gtk_text_iter_forward_cursor_position(_SELF(self)));
449
+ }
450
+
451
+ static VALUE
452
+ rg_backward_cursor_position(VALUE self)
453
+ {
454
+ return CBOOL2RVAL(gtk_text_iter_backward_cursor_position(_SELF(self)));
455
+ }
456
+
457
+ static VALUE
458
+ rg_forward_cursor_positions(VALUE self, VALUE i)
459
+ {
460
+ return CBOOL2RVAL(gtk_text_iter_forward_cursor_positions(_SELF(self), NUM2INT(i)));
461
+ }
462
+
463
+ static VALUE
464
+ rg_backward_cursor_positions(VALUE self, VALUE i)
465
+ {
466
+ return CBOOL2RVAL(gtk_text_iter_backward_cursor_positions(_SELF(self), NUM2INT(i)));
467
+ }
468
+
469
+ static VALUE
470
+ rg_forward_to_line_end(VALUE self)
471
+ {
472
+ return CBOOL2RVAL(gtk_text_iter_forward_to_line_end(_SELF(self)));
473
+ }
474
+
475
+ static VALUE
476
+ rg_forward_to_end(VALUE self)
477
+ {
478
+ gtk_text_iter_forward_to_end(_SELF(self));
479
+ return self;
480
+ }
481
+
482
+ static VALUE
483
+ rg_set_offset(VALUE self, VALUE val)
484
+ {
485
+ gtk_text_iter_set_offset(_SELF(self), NUM2INT(val));
486
+ return self;
487
+ }
488
+
489
+ static VALUE
490
+ rg_set_line(VALUE self, VALUE val)
491
+ {
492
+ gtk_text_iter_set_line(_SELF(self), NUM2INT(val));
493
+ return self;
494
+ }
495
+
496
+ static VALUE
497
+ rg_set_line_offset(VALUE self, VALUE val)
498
+ {
499
+ gtk_text_iter_set_line_offset(_SELF(self), NUM2INT(val));
500
+ return self;
501
+ }
502
+
503
+ static VALUE
504
+ rg_set_line_index(VALUE self, VALUE val)
505
+ {
506
+ gtk_text_iter_set_line_index(_SELF(self), NUM2INT(val));
507
+ return self;
508
+ }
509
+
510
+ static VALUE
511
+ rg_set_visible_line_offset(VALUE self, VALUE val)
512
+ {
513
+ gtk_text_iter_set_visible_line_offset(_SELF(self), NUM2INT(val));
514
+ return self;
515
+ }
516
+
517
+ static VALUE
518
+ rg_set_visible_line_index(VALUE self, VALUE val)
519
+ {
520
+ gtk_text_iter_set_visible_line_index(_SELF(self), NUM2INT(val));
521
+ return self;
522
+ }
523
+
524
+ static VALUE
525
+ rg_forward_to_tag_toggle(int argc, VALUE *argv, VALUE self)
526
+ {
527
+ VALUE tag;
528
+
529
+ rb_scan_args(argc, argv, "01", &tag);
530
+ return CBOOL2RVAL(gtk_text_iter_forward_to_tag_toggle(_SELF(self),
531
+ NIL_P(tag) ? NULL : RVAL2GTKTEXTTAG(tag)));
532
+ }
533
+
534
+ static VALUE
535
+ rg_backward_to_tag_toggle(int argc, VALUE *argv, VALUE self)
536
+ {
537
+ VALUE tag;
538
+
539
+ rb_scan_args(argc, argv, "01", &tag);
540
+ return CBOOL2RVAL(gtk_text_iter_backward_to_tag_toggle(_SELF(self),
541
+ NIL_P(tag) ? NULL : RVAL2GTKTEXTTAG(tag)));
542
+ }
543
+
544
+ static gboolean
545
+ char_predicate_func(guint32 ch, gpointer func)
546
+ {
547
+ return RVAL2CBOOL(rb_funcall((VALUE)func, id_call, 1, UINT2NUM(ch)));
548
+ }
549
+
550
+ static VALUE
551
+ rg_forward_find_char(int argc, VALUE *argv, VALUE self)
552
+ {
553
+ VALUE limit;
554
+ volatile VALUE func = rb_block_proc();
555
+
556
+ rb_scan_args(argc, argv, "01", &limit);
557
+ return CBOOL2RVAL(gtk_text_iter_forward_find_char(_SELF(self),
558
+ (GtkTextCharPredicate)char_predicate_func,
559
+ (gpointer)func,
560
+ NIL_P(limit) ? NULL : RVAL2ITER(self, limit)));
561
+ }
562
+
563
+ static VALUE
564
+ rg_backward_find_char(int argc, VALUE *argv, VALUE self)
565
+ {
566
+ VALUE limit;
567
+ volatile VALUE func = rb_block_proc();
568
+
569
+ rb_scan_args(argc, argv, "01", &limit);
570
+ return CBOOL2RVAL(gtk_text_iter_backward_find_char(_SELF(self),
571
+ (GtkTextCharPredicate)char_predicate_func,
572
+ (gpointer)func,
573
+ NIL_P(limit) ? NULL : RVAL2ITER(self, limit)));
574
+ }
575
+
576
+ static VALUE
577
+ rg_forward_search(int argc, VALUE *argv, VALUE self)
578
+ {
579
+ GtkTextIter m_start, m_end;
580
+ VALUE str, flags, limit;
581
+ gboolean ret;
582
+
583
+ rb_scan_args(argc, argv, "21", &str, &flags, &limit);
584
+ ret = gtk_text_iter_forward_search(_SELF(self), RVAL2CSTR(str),
585
+ RVAL2GTKTEXTSEARCHFLAGS(flags),
586
+ &m_start, &m_end,
587
+ NIL_P(limit) ? NULL : RVAL2ITER(self, limit));
588
+ return ret ? rb_ary_new3(2, GTKTEXTITER2RVAL(&m_start), GTKTEXTITER2RVAL(&m_end)) : Qnil;
589
+ }
590
+
591
+ static VALUE
592
+ rg_backward_search(int argc, VALUE *argv, VALUE self)
593
+ {
594
+ GtkTextIter m_start, m_end;
595
+ VALUE str, flags, limit;
596
+ gboolean ret;
597
+
598
+ rb_scan_args(argc, argv, "21", &str, &flags, &limit);
599
+ ret = gtk_text_iter_backward_search(_SELF(self), RVAL2CSTR(str),
600
+ RVAL2GTKTEXTSEARCHFLAGS(flags),
601
+ &m_start, &m_end,
602
+ NIL_P(limit) ? NULL : RVAL2ITER(self, limit));
603
+ return ret ? rb_ary_new3(2, GTKTEXTITER2RVAL(&m_start), GTKTEXTITER2RVAL(&m_end)) : Qnil;
604
+ }
605
+
606
+ static VALUE
607
+ rg_operator_equal(VALUE self, VALUE other)
608
+ {
609
+ return CBOOL2RVAL(gtk_text_iter_equal(_SELF(self), RVAL2ITER(self, other)));
610
+ }
611
+
612
+ static VALUE
613
+ rg_operator_compare(VALUE self, VALUE rhs)
614
+ {
615
+ return INT2NUM(gtk_text_iter_compare(_SELF(self), RVAL2ITER(self, rhs)));
616
+ }
617
+
618
+ static VALUE
619
+ rg_inside_sentence(VALUE self)
620
+ {
621
+ return CBOOL2RVAL(gtk_text_iter_inside_sentence(_SELF(self)));
622
+ }
623
+
624
+ void
625
+ Init_gtk_textiter(VALUE mGtk)
626
+ {
627
+ VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(GTK_TYPE_TEXT_ITER, "TextIter", mGtk);
628
+ rb_include_module(RG_TARGET_NAMESPACE, rb_mComparable);
629
+
630
+ RG_DEF_METHOD(buffer, 0);
631
+ RG_DEF_METHOD(offset, 0);
632
+ RG_DEF_METHOD(line, 0);
633
+ RG_DEF_METHOD(line_offset, 0);
634
+ RG_DEF_METHOD(line_index, 0);
635
+ RG_DEF_METHOD(visible_line_offset, 0);
636
+ RG_DEF_METHOD(visible_line_index, 0);
637
+ RG_DEF_METHOD(char, 0);
638
+
639
+ RG_DEF_METHOD(get_slice, 1);
640
+ RG_DEF_METHOD(get_text, 1);
641
+ RG_DEF_METHOD(get_visible_slice, 1);
642
+ RG_DEF_METHOD(get_visible_text, 1);
643
+
644
+ RG_DEF_METHOD(pixbuf, 0);
645
+ RG_DEF_METHOD(marks, 0);
646
+ RG_DEF_METHOD(child_anchor, 0);
647
+
648
+ RG_DEF_METHOD(toggled_tags, 1);
649
+ RG_DEF_METHOD_P(begins_tag, 1);
650
+ RG_DEF_METHOD_P(ends_tag, 1);
651
+ RG_DEF_METHOD_P(toggles_tag, 1);
652
+ RG_DEF_METHOD_P(has_tag, 1);
653
+ RG_DEF_METHOD(tags, 0);
654
+
655
+ RG_DEF_METHOD_P(editable, 1);
656
+ RG_DEF_METHOD_P(can_insert, 1);
657
+
658
+ RG_DEF_METHOD_P(starts_word, 0);
659
+ RG_DEF_METHOD_P(ends_word, 0);
660
+ RG_DEF_METHOD_P(inside_word, 0);
661
+ RG_DEF_METHOD_P(starts_sentence, 0);
662
+ RG_DEF_METHOD_P(ends_sentence, 0);
663
+ RG_DEF_METHOD_P(starts_line, 0);
664
+ RG_DEF_METHOD_P(ends_line, 0);
665
+ RG_DEF_METHOD_P(cursor_position, 0);
666
+
667
+ RG_DEF_METHOD(chars_in_line, 0);
668
+ RG_DEF_METHOD(bytes_in_line, 0);
669
+
670
+ RG_DEF_METHOD(attributes, 0);
671
+
672
+ RG_DEF_METHOD(language, 0);
673
+ RG_DEF_METHOD_P(end, 0);
674
+ RG_DEF_METHOD_P(start, 0);
675
+
676
+ RG_DEF_METHOD(forward_char, 0);
677
+ RG_DEF_METHOD(backward_char, 0);
678
+ RG_DEF_METHOD(forward_chars, 1);
679
+ RG_DEF_METHOD(backward_chars, 1);
680
+ RG_DEF_METHOD(forward_line, 0);
681
+ RG_DEF_METHOD(backward_line, 0);
682
+ RG_DEF_METHOD(forward_lines, 1);
683
+ RG_DEF_METHOD(backward_lines, 1);
684
+ RG_DEF_METHOD(forward_word_end, 0);
685
+ RG_DEF_METHOD(backward_word_start, 0);
686
+ RG_DEF_METHOD(forward_word_ends, 1);
687
+ RG_DEF_METHOD(backward_word_starts, 1);
688
+ RG_DEF_METHOD(forward_sentence_end, 0);
689
+ RG_DEF_METHOD(backward_sentence_start, 0);
690
+ RG_DEF_METHOD(forward_sentence_ends, 1);
691
+ RG_DEF_METHOD(backward_sentence_starts, 1);
692
+
693
+ RG_DEF_METHOD(forward_visible_word_ends, 1);
694
+ RG_DEF_METHOD(backward_visible_word_starts, 1);
695
+ RG_DEF_METHOD(forward_visible_word_end, 0);
696
+ RG_DEF_METHOD(backward_visible_word_start, 0);
697
+ RG_DEF_METHOD(forward_visible_cursor_position, 0);
698
+ RG_DEF_METHOD(backward_visible_cursor_position, 0);
699
+ RG_DEF_METHOD(forward_visible_cursor_positions, 1);
700
+ RG_DEF_METHOD(backward_visible_cursor_positions, 1);
701
+ RG_DEF_METHOD(forward_visible_line, 0);
702
+ RG_DEF_METHOD(backward_visible_line, 0);
703
+ RG_DEF_METHOD(forward_visible_lines, 1);
704
+ RG_DEF_METHOD(backward_visible_lines, 1);
705
+ RG_DEF_METHOD(forward_cursor_position, 0);
706
+ RG_DEF_METHOD(backward_cursor_position, 0);
707
+ RG_DEF_METHOD(forward_cursor_positions, 1);
708
+ RG_DEF_METHOD(backward_cursor_positions, 1);
709
+ RG_DEF_METHOD(forward_to_end, 0);
710
+ RG_DEF_METHOD(forward_to_line_end, 0);
711
+
712
+ RG_DEF_METHOD(set_offset, 1);
713
+ RG_DEF_METHOD(set_line, 1);
714
+ RG_DEF_METHOD(set_line_offset, 1);
715
+ RG_DEF_METHOD(set_line_index, 1);
716
+
717
+ RG_DEF_METHOD(set_visible_line_offset, 1);
718
+ RG_DEF_METHOD(set_visible_line_index, 1);
719
+
720
+ RG_DEF_METHOD(forward_to_tag_toggle, -1);
721
+ RG_DEF_METHOD(backward_to_tag_toggle, -1);
722
+ RG_DEF_METHOD(forward_find_char, -1);
723
+ RG_DEF_METHOD(backward_find_char, -1);
724
+ RG_DEF_METHOD(forward_search, -1);
725
+ RG_DEF_METHOD(backward_search, -1);
726
+
727
+ RG_DEF_METHOD_OPERATOR("==", equal, 1);
728
+ RG_DEF_METHOD_OPERATOR("<=>", compare, 1);
729
+ RG_DEF_METHOD(inside_sentence, 0);
730
+
731
+ G_DEF_CLASS(GTK_TYPE_TEXT_SEARCH_FLAGS, "SearchFlags", RG_TARGET_NAMESPACE);
732
+ }