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,66 @@
1
+ #!/usr/bin/env ruby
2
+ =begin
3
+ pangorenderer.rb - Ruby/GTK sample script.
4
+
5
+ Copyright (c) 2005,2006 Ruby-GNOME2 Project Team
6
+ This program is licenced under the same licence as Ruby-GNOME2.
7
+
8
+ $Id: pangorenderer.rb,v 1.5 2006/06/17 13:18:12 mutoh Exp $
9
+ =end
10
+
11
+ require 'gtk3'
12
+
13
+ RADIUS = 80
14
+ N_WORDS = 16
15
+
16
+ if str = Gtk.check_version(2, 6, 0)
17
+ puts "This sample requires GTK+ 2.6.0 or later"
18
+ puts str
19
+ exit
20
+ end
21
+
22
+ win = Gtk::Window.new("Gdk::PangoRenderer sample")
23
+ win.signal_connect("destroy"){Gtk.main_quit}
24
+ win.set_default_size(400, 400)
25
+ win.realize
26
+
27
+ matrix = Pango::Matrix.new
28
+
29
+ renderer = Gdk::PangoRenderer.default
30
+ renderer.drawable = win.window
31
+ renderer.gc = Gdk::GC.new(win.window)
32
+ width, height = win.size
33
+
34
+ device_radius = [width, height].min / 6.0
35
+
36
+ matrix.translate!(device_radius + (width - 2 * device_radius) / 2.0,
37
+ device_radius + (height - 2 * device_radius) / 2.0)
38
+ matrix.scale!(device_radius / RADIUS, device_radius / RADIUS)
39
+
40
+ context = Gdk::Pango.context
41
+ layout = Pango::Layout.new(context)
42
+ layout.text = "Ruby-GNOME2"
43
+ layout.font_description = Pango::FontDescription.new("Sans Bold 14")
44
+
45
+ background = Gdk::Color.new(65535, 65535, 65535)
46
+ Gdk::Colormap.system.alloc_color(background, false, true)
47
+ win.window.background = background
48
+
49
+ win.signal_connect("draw") do
50
+ (0...N_WORDS).each do |i|
51
+ rotated_matrix = matrix.dup
52
+ angle = 360 * i / N_WORDS.to_f
53
+ color = Gdk::Color.new(65535 * rand, 65535 * rand, 65535 * rand)
54
+ renderer.set_override_color(Pango::Renderer::PART_FOREGROUND, color)
55
+
56
+ rotated_matrix.rotate!(angle)
57
+ context.set_matrix(rotated_matrix)
58
+ layout.context_changed
59
+ width, height = layout.size
60
+ renderer.draw_layout(layout, width / 2, RADIUS * Pango::SCALE)
61
+ end
62
+ end
63
+
64
+ win.show_all
65
+
66
+ Gtk.main
@@ -0,0 +1,34 @@
1
+ =begin
2
+ pointer_grab.rb - Gdk::Window#pointer_grab/ungrab sample script.
3
+
4
+ Copyright (C) 2001-2006 Masao Mutoh<mutoh@highway.ne.jp>
5
+ This program is licenced under the same licence as Ruby-GNOME.
6
+
7
+ $Date: 2006/06/17 13:18:12 $
8
+ $Id: pointer_grab.rb,v 1.5 2006/06/17 13:18:12 mutoh Exp $
9
+ =end
10
+
11
+ require 'gtk3'
12
+
13
+ window = Gtk::Window.new("Pointer grab/ungrab sample")
14
+
15
+ cursor = Gdk::Cursor.new(Gdk::Cursor::WATCH)
16
+ button1 = Gtk::Button.new("Grab Window!")
17
+ button2 = Gtk::Button.new("Ungrab Window!")
18
+
19
+ button1.signal_connect('clicked') do
20
+ Gdk.pointer_grab(window.window, true, Gdk::Event::BUTTON_PRESS_MASK,
21
+ window.window, cursor, Gdk::Event::CURRENT_TIME)
22
+ p Gdk.pointer_is_grabbed?
23
+ end
24
+
25
+ button2.signal_connect('clicked') do
26
+ Gdk.pointer_ungrab(Gdk::Event::CURRENT_TIME)
27
+ p Gdk.pointer_is_grabbed?
28
+ end
29
+
30
+ window.add(Gtk::VBox.new.add(button1).add(button2))
31
+ window.set_default_size(200,100).show_all
32
+ window.signal_connect("destroy"){Gtk.main_quit}
33
+
34
+ Gtk.main
@@ -0,0 +1,247 @@
1
+ #!/usr/bin/env ruby
2
+ =begin
3
+ print.rb - Gtk::Print* sample
4
+
5
+ Copyright (C) 2007 Mathieu Blondel
6
+ This program is licenced under the same licence as Ruby-GNOME2.
7
+
8
+ $Id: print.rb,v 1.1 2007/08/05 15:41:31 mutoh Exp $
9
+ =end
10
+
11
+ require 'gtk3'
12
+
13
+ # Values returned by a Pango::Layout or set in a Pango::Layout
14
+ # are always multiple of Pango::SCALE. Those are convenience methods to
15
+ # deal with that.
16
+ class Pango::Layout
17
+ def size_in_points
18
+ self.size.collect { |v| v / Pango::SCALE }
19
+ end
20
+
21
+ def width_in_points
22
+ self.size[0] / Pango::SCALE
23
+ end
24
+
25
+ def height_in_points
26
+ self.size[1] / Pango::SCALE
27
+ end
28
+
29
+ def width_in_points=(width)
30
+ self.width = width * Pango::SCALE
31
+ end
32
+ end
33
+
34
+ class Print < Gtk::PrintOperation
35
+
36
+ FONT = Pango::FontDescription.new("sans 12")
37
+ FONT_SMALL = Pango::FontDescription.new("sans 8")
38
+
39
+ FONT_SIZE = 12
40
+ FONT_SMALL_SIZE = 8
41
+
42
+ def initialize (parent_window, text)
43
+ super()
44
+ @parent_window = parent_window
45
+ @text = text
46
+
47
+ # with this option disabled, the origin is the the upper left corner
48
+ # *taking into consideration margins* !
49
+ self.use_full_page = false
50
+ self.unit = Gtk::PaperSize::Unit::POINTS
51
+
52
+ # set default paper size
53
+ page_setup = Gtk::PageSetup.new
54
+ paper_size = Gtk::PaperSize.new(Gtk::PaperSize.default)
55
+ page_setup.paper_size_and_default_margins = paper_size
56
+ self.default_page_setup = page_setup
57
+
58
+ # show a progress bar
59
+ self.show_progress = true
60
+
61
+ # You must choose between "paginate" and "begin-print".
62
+ # "begin-print" is emitted only once and "paginate" is emitted
63
+ # until the block returns true.
64
+ # In both cases, you must set the number of pages at the end with
65
+ # Gtk::PrintOperation#n_pages=
66
+ signal_connect("begin-print") do |pop, context|
67
+ puts "calls begin-print"
68
+ cr = context.cairo_context
69
+ paragraphs = @text.split("\n")
70
+ layouts = []
71
+ paragraphs.each do |para|
72
+ layouts << create_layout(cr, para)
73
+ end
74
+
75
+ # distribute paragraph layouts among pages
76
+ @page_layouts = []
77
+
78
+ curr_height = 0
79
+ n_pages = 0
80
+ layouts.each do |layout|
81
+ height = layout.height_in_points
82
+ if curr_height + height > real_page_height
83
+ n_pages += 1
84
+ curr_height = 0
85
+ end
86
+ @page_layouts[n_pages] ||= []
87
+ @page_layouts[n_pages] << layout
88
+ curr_height += height
89
+ end
90
+
91
+ pop.n_pages = n_pages + 1
92
+ end
93
+
94
+ signal_connect("draw-page") do |pop, context, page_num|
95
+ puts "calls draw-page %d" % page_num
96
+
97
+ cr = context.cairo_context
98
+
99
+ x, y = [0,0] # this means we start at the upper left margin
100
+
101
+ if @page_layouts[page_num]
102
+ @page_layouts[page_num].each do |layout|
103
+ cr.move_to(x,y)
104
+ cr.show_pango_layout(layout)
105
+ y += layout.height_in_points
106
+ end
107
+ total_pages = @page_layouts.length
108
+ else
109
+ total_pages = 1
110
+ end
111
+
112
+ # page_num starts at 0
113
+ draw_footer(cr, page_num + 1, total_pages)
114
+ end
115
+ end
116
+
117
+ def run_print_dialog
118
+ res = run(Action::PRINT_DIALOG, @parent_window)
119
+ case res
120
+ when RESULT_ERROR
121
+ puts "error"
122
+ when RESULT_CANCEL
123
+ puts "cancelled"
124
+ when RESULT_APPLY
125
+ puts "applied"
126
+ when RESULT_IN_PROGRESS
127
+ puts "in progress"
128
+ end
129
+ end
130
+
131
+ def run_preview
132
+ res = run(Action::PREVIEW, @parent_window)
133
+ end
134
+
135
+ private
136
+
137
+ def page_height
138
+ setup = self.default_page_setup
139
+ # this takes margins into consideration, contrary to get_paper_height
140
+ setup.get_page_height(Gtk::PaperSize::Unit::POINTS)
141
+ end
142
+
143
+ def page_width
144
+ setup = self.default_page_setup
145
+ width = setup.get_page_width(Gtk::PaperSize::Unit::POINTS)
146
+ end
147
+
148
+ def real_page_height
149
+ page_height - footer_height
150
+ end
151
+
152
+ def footer_height
153
+ 5 * FONT_SMALL_SIZE
154
+ end
155
+
156
+ def create_layout(cr, text)
157
+ layout = cr.create_pango_layout
158
+
159
+ layout.width_in_points = page_width
160
+ layout.font_description = FONT
161
+ layout.wrap = Pango::Layout::WrapMode::CHAR
162
+ layout.ellipsize = Pango::Layout::ELLIPSIZE_NONE
163
+ layout.single_paragraph_mode = false
164
+
165
+ layout.text = text
166
+
167
+ layout
168
+ end
169
+
170
+ def draw_footer(cr, nth_page, total_page)
171
+ layout = cr.create_pango_layout
172
+ layout.alignment = Pango::Layout::ALIGN_RIGHT
173
+ layout.font_description = FONT_SMALL
174
+ layout.text = "Page %d/%d" % [nth_page, total_page] + "\n" + \
175
+ Time.now.strftime("Printed on %Y/%m/%d at %H:%M") + "\n" + \
176
+ "Powered by Ruby-GNOME2!"
177
+ width, height = layout.size_in_points
178
+ x, y = [page_width, page_height]
179
+ x -= width
180
+ y -= height
181
+ cr.move_to(x, y)
182
+ cr.show_pango_layout(layout)
183
+ cr.rel_move_to(width, -2)
184
+ cr.rel_line_to(-page_width, 0)
185
+ cr.stroke
186
+ end
187
+
188
+ end
189
+
190
+ class Window < Gtk::Window
191
+
192
+ def initialize
193
+ super
194
+
195
+ signal_connect("delete-event") { Gtk.main_quit }
196
+
197
+ set_default_size(600, 600)
198
+
199
+ @textview = Gtk::TextView.new
200
+ @textview.wrap_mode = Gtk::TextTag::WrapMode::WORD
201
+
202
+ hbox = Gtk::Box.new(:horizontal)
203
+
204
+ page_setup_button = Gtk::Button.new
205
+ page_setup_button.label = "Page setup"
206
+ page_setup_button.signal_connect("clicked") do
207
+ @page_setup = Print::run_page_setup_dialog(self, # parent window
208
+ @page_setup)
209
+ end
210
+
211
+ print_preview_button = Gtk::Button.new(:stock_id => Gtk::Stock::PRINT_PREVIEW)
212
+ print_preview_button.signal_connect("clicked") do
213
+ printop = Print.new(self, @textview.buffer.text)
214
+ printop.default_page_setup = @page_setup if @page_setup
215
+ printop.run_preview
216
+ end
217
+
218
+ print_button = Gtk::Button.new(:stock_id => Gtk::Stock::PRINT)
219
+ print_button.signal_connect("clicked") do
220
+ printop = Print.new(self, @textview.buffer.text)
221
+ printop.default_page_setup = @page_setup if @page_setup
222
+ printop.run_print_dialog
223
+ end
224
+
225
+ [page_setup_button, print_preview_button, print_button].each do |b|
226
+ hbox.pack_start(b, true, true) # expand, fill
227
+ end
228
+
229
+ scrollbar = Gtk::Scrollbar.new(:vertical)
230
+
231
+ vbox = Gtk::Box.new(:vertical)
232
+ scroll = Gtk::ScrolledWindow.new.add(@textview)
233
+ scroll.set_policy(:automatic, :automatic)
234
+ vbox.pack_start(scroll)
235
+ vbox.pack_end(hbox, false, false)
236
+
237
+ add(vbox)
238
+
239
+ show_all
240
+
241
+ end
242
+
243
+ end
244
+
245
+ Window.new
246
+
247
+ Gtk.main
@@ -0,0 +1,86 @@
1
+ #!/usr/bin/env ruby
2
+ =begin
3
+ properties.rb -
4
+
5
+ GLib::Object#properties and Gtk::Container#child_properties sample script.
6
+
7
+ Copyright (C) 2004-2006 Masao Mutoh
8
+
9
+ This program is licenced under the same licence as Ruby-GNOME2.
10
+
11
+ $Id: properties.rb,v 1.3 2006/06/17 13:18:12 mutoh Exp $
12
+ =end
13
+
14
+ require 'gtk3'
15
+
16
+ class MyButton < Gtk::Button
17
+ type_register
18
+
19
+ def initialize(label = nil)
20
+ # XXX:
21
+ # When type_register() is used.
22
+ # super is equivalent to GLib::Object#initialize.
23
+ super("label" => label)
24
+ @fuga = 0
25
+ @hoge = 0
26
+ end
27
+
28
+ # define new property "fuga"
29
+ install_property(GLib::Param::Int.new("fuga", # name
30
+ "Fuga", # nick
31
+ "fuga fuga", # blurb
32
+ 0, # min
33
+ 10000, # max
34
+ 0, # default
35
+ GLib::Param::READABLE |
36
+ GLib::Param::WRITABLE))
37
+
38
+ # define new property "hoge"
39
+ install_child_property(GLib::Param::Int.new("hoge", # name
40
+ "Hoge", # nick
41
+ "hoge hoge", # blurb
42
+ 0, # min
43
+ 10000, # max
44
+ 0, # default
45
+ GLib::Param::READABLE |
46
+ GLib::Param::WRITABLE))
47
+
48
+ # implementation of the property "fuga"
49
+ def fuga
50
+ puts "MyButton#fuga is called"
51
+ @fuga
52
+ end
53
+ def fuga=(arg)
54
+ puts "MyButton#fuga= is called"
55
+ @fuga = arg
56
+ notify("fuga")
57
+ end
58
+
59
+ # implementation of the property "hoge"
60
+ def get_hoge(child)
61
+ puts "MyButton#get_hoge is called"
62
+ @hoge
63
+ end
64
+ def set_hoge(child, arg)
65
+ puts "MyButton#set_hoge is called"
66
+ @hoge = arg
67
+ end
68
+ end
69
+
70
+ b = MyButton.new("Hello")
71
+ p b
72
+ p b.label
73
+ p b.gtype
74
+
75
+ p MyButton.properties
76
+ p b.get_property("fuga")
77
+ b.set_property("fuga", 1)
78
+ p b.get_property("fuga")
79
+
80
+ p MyButton.child_properties
81
+ p child = b.child
82
+ p b.child_get_property(child, "hoge")
83
+ b.child_set_property(child, "hoge", 2)
84
+ p b.child_get_property(child, "hoge")
85
+
86
+ p MyButton.ancestors
@@ -0,0 +1,47 @@
1
+ #!/usr/bin/env ruby
2
+ =begin
3
+ radiobutton.rb - Ruby/GTK2 sample script.
4
+
5
+ Copyright (c) 2002-2006 Ruby-GNOME2 Project Team
6
+ This program is licenced under the same licence as Ruby-GNOME2.
7
+
8
+ $Id: radiobutton.rb,v 1.10 2006/06/17 13:18:12 mutoh Exp $
9
+ =end
10
+
11
+ require 'gtk3'
12
+
13
+ window = Gtk::Window.new("Gtk::RadioButton sample")
14
+ window.signal_connect("destroy"){Gtk.main_quit}
15
+
16
+ box1 = Gtk::Box.new(:vertical)
17
+ window.add(box1)
18
+
19
+ box2 = Gtk::Box.new(:vertical, 10)
20
+ box2.border_width = 10
21
+ box1.add(box2)
22
+
23
+ button1 = Gtk::RadioButton.new("_button1")
24
+ button2 = Gtk::RadioButton.new(button1, "_button2", false)
25
+ button3 = Gtk::RadioButton.new(button1, Gtk::Stock::QUIT)
26
+
27
+ box2.add(button1).add(button2).add(button3)
28
+
29
+ box1.add(Gtk::Separator.new(:horizontal))
30
+
31
+ box2 = Gtk::Box.new(:vertical, 10)
32
+ box2.border_width = 10
33
+ box1.add(box2)
34
+
35
+ close = Gtk::Button.new(:label => "close")
36
+ close.signal_connect("clicked") do
37
+ Gtk.main_quit
38
+ end
39
+ box2.add(close)
40
+
41
+ close.can_default = true
42
+ close.grab_default
43
+
44
+ window.signal_connect("destroy"){Gtk.main_quit}
45
+ window.show_all
46
+
47
+ Gtk.main