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,63 @@
1
+ # Copyright (c) 2003-2005 Ruby-GNOME2 Project Team
2
+ # This program is licenced under the same licence as Ruby-GNOME2.
3
+ # $Id: entry_completion.rb,v 1.3 2005/02/25 17:09:24 kzys Exp $
4
+ =begin
5
+ = Entry Completion (EntryCompletion)
6
+
7
+ GtkEntryCompletion provides a mechanism for adding support for
8
+ completion in GtkEntry.
9
+ =end
10
+
11
+ require 'common'
12
+
13
+ module Demo
14
+ class EntryCompletion < Gtk::Dialog
15
+ def initialize
16
+ super('GtkEntryCompletion',
17
+ nil, # parent
18
+ 0,
19
+ [Gtk::Stock::CLOSE, Gtk::Dialog::RESPONSE_NONE])
20
+
21
+ self.resizable = false
22
+
23
+ signal_connect('response') do
24
+ self.destroy
25
+ end
26
+
27
+ vbox = Gtk::VBox.new(false, 5)
28
+ self.vbox.pack_start(vbox, :expand => true, :fill => true)
29
+ vbox.border_width = 5
30
+
31
+ label = Gtk::Label.new
32
+ label.markup = 'Completion demo, try writing <b>total</b> or <b>gnome</b> for example'
33
+ vbox.pack_start(label, :expand => false, :fill => false)
34
+
35
+ # Create our entry
36
+ entry = Gtk::Entry.new
37
+ vbox.pack_start(entry, :expand => false, :fill => false)
38
+
39
+ # Create the completion object
40
+ completion = Gtk::EntryCompletion.new
41
+
42
+ # Assign the completion to the entry
43
+ entry.completion = completion
44
+
45
+ # Create a tree model and use it as the completion model
46
+ completion.model = create_completion_model
47
+
48
+ # Use model column 0 as the text column
49
+ completion.text_column = 0
50
+ end
51
+
52
+
53
+ def create_completion_model
54
+ store = Gtk::ListStore.new(String)
55
+ %w(GNOME total totally).each do |word|
56
+ iter = store.append
57
+ iter[0] = word
58
+ end
59
+
60
+ store
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,42 @@
1
+ # Copyright (c) 2003-2005 Ruby-GNOME2 Project Team
2
+ # This program is licenced under the same licence as Ruby-GNOME2.
3
+ # $Id: expander.rb,v 1.2 2005/02/25 17:09:25 kzys Exp $
4
+ =begin
5
+ = Expander (Expander)
6
+
7
+ GtkExpander allows to provide additional content that is initially hidden.
8
+ This is also known as "disclosure triangle".
9
+ =end
10
+
11
+ require 'common'
12
+
13
+ module Demo
14
+ class Expander < Gtk::Dialog
15
+ def initialize
16
+ # as opposed to the GTK2 dialog, the buttons have to be enclodes by brackeds
17
+ # together with their ResponseType AND all groups have to bracketed together
18
+ super(:title => 'GtkExpander',
19
+ :parent => nil,
20
+ :flags => 0,
21
+ :buttons => [[Gtk::Stock::CLOSE, Gtk::ResponseType::NONE]])
22
+ self.resizable = false
23
+
24
+ signal_connect('response') do
25
+ self.destroy
26
+ end
27
+
28
+ vbox = Gtk::Box.new(:vertical, 5)
29
+ self.child.pack_start(vbox, :expand => true, :fill => true)
30
+ vbox.border_width = 5
31
+
32
+ label = Gtk::Label.new('Expander demo. CLick on the triangle for details.')
33
+ vbox.pack_start(label, :expand => false, :fill => false)
34
+
35
+ # Create the expander
36
+ expander = Gtk::Expander.new('Details')
37
+ vbox.pack_start(expander, :expand => false, :fill => false)
38
+
39
+ expander.add(Gtk::Label.new('Details can be shown or hidden.'))
40
+ end
41
+ end
42
+ end
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -0,0 +1,211 @@
1
+ # Copyright (c) 2003-2005 Ruby-GNOME2 Project Team
2
+ # This program is licenced under the same licence as Ruby-GNOME2.
3
+ #
4
+ # $Id: hypertext.rb,v 1.2 2005/12/01 09:27:01 ktou Exp $
5
+ =begin
6
+ = Text Widget/Hypertext
7
+
8
+ Usually, tags modify the appearance of text in the view, e.g. making it
9
+ bold or colored or underlined. But tags are not restricted to appearance.
10
+ They can also affect the behavior of mouse and key presses, as this demo
11
+ shows.
12
+ =end
13
+
14
+ require 'common'
15
+
16
+ module Demo
17
+ class Hypertext < BasicWindow
18
+ def initialize
19
+ super('Hypertext')
20
+
21
+ @hand_cursor = Gdk::Cursor.new(Gdk::Cursor::HAND2)
22
+ @regular_cursor = Gdk::Cursor.new(Gdk::Cursor::XTERM)
23
+ @hovering = false
24
+
25
+ set_default_size(450, 450)
26
+ self.border_width = 0
27
+
28
+ view = Gtk::TextView.new
29
+
30
+ view.wrap_mode = :word
31
+
32
+ view.signal_connect('key-press-event') do |*args|
33
+ key_press_event(*args)
34
+ end
35
+ view.signal_connect('event-after') do |*args|
36
+ event_after(*args)
37
+ end
38
+ view.signal_connect('motion-notify-event') do |*args|
39
+ motion_notify_event(*args)
40
+ end
41
+ view.signal_connect('visibility-notify-event') do |*args|
42
+ visibility_notify_event(*args)
43
+ end
44
+
45
+ buffer = view.buffer
46
+
47
+ sw = Gtk::ScrolledWindow.new
48
+ sw.set_policy(:automatic,
49
+ :automatic)
50
+
51
+ add(sw)
52
+ sw.add(view)
53
+
54
+ show_page(buffer, 1)
55
+ end
56
+
57
+
58
+ # Inserts a piece of text into the buffer, giving it the usual
59
+ # appearance of a hyperlink in a web browser: blue and underlined.
60
+ # Additionally, attaches some data on the tag, to make it recognizable
61
+ # as a link.
62
+ def insert_link(buffer, iter, text, page)
63
+ tag = buffer.create_tag(nil,
64
+ {
65
+ 'foreground' => 'blue',
66
+ 'underline' => Pango::AttrUnderline::SINGLE,
67
+ })
68
+ tag.page = page
69
+
70
+ buffer.insert(iter, text, tag)
71
+ print("Insert #{tag}:#{page}\n")
72
+ end
73
+
74
+ # Fills the buffer with text and interspersed links. In any real
75
+ # hypertext app, this method would parse a file to identify the links.
76
+ def show_page(buffer, page)
77
+ puts
78
+
79
+ buffer.text = ''
80
+ iter = buffer.get_iter_at(:offset => 0)
81
+
82
+ case page
83
+ when 1
84
+ buffer.insert(iter, 'Some text ot show that simple ')
85
+ insert_link(buffer, iter, 'hypertext', 3)
86
+ buffer.insert(iter, ' can easily be realized with ')
87
+ insert_link(buffer, iter, 'tags', 2)
88
+ buffer.insert(iter, '.')
89
+ when 2
90
+ buffer.insert(iter,
91
+ %Q[A tag is an attribute that can be applied to some range of text. For example, a tag might be called "bold" and make the text insid the tag bold. However, the tag concept is more general than that; tags don't have to affect appearance. They can instead affect the behavior of mouse and key presses, "lock" a range of text so the user can't edit it, or countless other things.])
92
+ buffer.insert(iter, "\n")
93
+ insert_link(buffer, iter, 'Go back', 1)
94
+ when 3
95
+ tag = buffer.create_tag(nil,
96
+ {
97
+ 'weight' =>
98
+ Pango::FontDescription::WEIGHT_BOLD
99
+ })
100
+ buffer.insert(iter, "hypertext:\n", tag);
101
+ buffer.insert(iter, %Q[machine-readable text that is not sequential but is organized so that related items of information are connected.\n])
102
+ insert_link(buffer, iter, 'Go back', 1)
103
+ end
104
+ end
105
+
106
+ # Looks at all tags covering the position of iter in the text view,
107
+ # and if one of them is a link, follow it by showing the page identified
108
+ # by the data attached to it.
109
+ def follow_if_link(text_view, iter)
110
+ tags = iter.tags
111
+ tags.each do |tag|
112
+ print("Follow #{tag}:#{tag.page}\n")
113
+ if tag.page
114
+ show_page(text_view.buffer, tag.page)
115
+ break
116
+ end
117
+ end
118
+ end
119
+
120
+ # Links can be activated by pressing Enter.
121
+ def key_press_event(text_view, event)
122
+ case event.keyval
123
+ when Gdk::Keyval::GDK_Return, Gdk::Keyval::GDK_KP_Enter
124
+ buffer = text_view.buffer
125
+ iter = buffer.get_iter_at_mark(buffer.get_mark("insert"))
126
+ follow_if_link(text_view, iter)
127
+ end
128
+
129
+ false
130
+ end
131
+
132
+ # Links can also be activated by clicking.
133
+ def event_after(text_view, event)
134
+ unless event.kind_of?(Gdk::EventButton) and event.button == 1
135
+ return false
136
+ end
137
+
138
+ buffer = text_view.buffer
139
+
140
+ # we shouldn't follow a link if the user has selected something
141
+ range = buffer.selection_bounds
142
+ if range and range[0].offset != range[1].offset
143
+ return false
144
+ end
145
+
146
+ x, y = text_view.window_to_buffer_coords(Gtk::TextView::WINDOW_WIDGET,
147
+ event.x, event.y)
148
+ iter = text_view.get_iter_at_location(x, y)
149
+
150
+ follow_if_link(text_view, iter)
151
+ end
152
+
153
+ # Looks at all tags covering the position (x, y) in the text view,
154
+ # and if one of them is a link, change the cursor to the "hands" cursor
155
+ # typically used by web browsers.
156
+ def set_cursor_if_appropriate(text_view, x, y)
157
+
158
+ buffer = text_view.buffer
159
+ iter = text_view.get_iter_at_location(x, y)
160
+
161
+ hovering = false
162
+
163
+ tags = iter.tags
164
+ tags.each do |t|
165
+ if t.page
166
+ hovering = true
167
+ break
168
+ end
169
+ end
170
+
171
+ if hovering != @hovering
172
+ @hovering = hovering
173
+
174
+ window = text_view.get_window(Gtk::TextView::WINDOW_TEXT)
175
+
176
+ window.cursor = if @hovering
177
+ @hand_cursor
178
+ else
179
+ @regular_cursor
180
+ end
181
+ end
182
+ end
183
+
184
+ # Update the cursor image if the pointer moved.
185
+ def motion_notify_event(text_view, event)
186
+ x, y = text_view.window_to_buffer_coords(Gtk::TextView::WINDOW_WIDGET,
187
+ event.x, event.y)
188
+ set_cursor_if_appropriate(text_view, x, y)
189
+ text_view.window.pointer
190
+
191
+ false
192
+ end
193
+
194
+ # Also update the cursor image if the window becomes visible
195
+ # (e.g. when a window covering it got iconified).
196
+ def visibility_notify_event (text_view, event)
197
+ window, wx, wy = text_view.window.pointer
198
+ bx, by = text_view.window_to_buffer_coords(Gtk::TextView::WINDOW_WIDGET,
199
+ wx, wy)
200
+ set_cursor_if_appropriate(text_view, bx, by)
201
+
202
+ false
203
+ end
204
+ end
205
+ end
206
+
207
+ module Gtk
208
+ class TextTag
209
+ attr_accessor :page
210
+ end
211
+ end
@@ -0,0 +1,110 @@
1
+ # Copyright (c) 2005 Ruby-GNOME2 Project Team
2
+ # This program is licenced under the same licence as Ruby-GNOME2.
3
+ #
4
+ # $Id: iconview.rb,v 1.7 2007/08/05 15:41:31 mutoh Exp $
5
+ =begin
6
+ = Icon View (IconView)
7
+
8
+ The Gtk::IconView widget is used to display and manipulate icons.
9
+ It uses a Gtk::TreeModel for data storage, so the list store example
10
+ might be helpful.
11
+ =end
12
+
13
+
14
+ require 'common'
15
+
16
+ module Demo
17
+ class IconView < Demo::BasicWindow
18
+ COL_PATH, COL_DISPLAY_NAME, COL_IS_DIR, COL_PIXBUF = (0..3).to_a
19
+
20
+ def fill_store
21
+ @store.clear
22
+ Dir.glob(File.join(@parent, "*")).each do |path|
23
+ is_dir = FileTest.directory?(path)
24
+ iter = @store.append
25
+ # set COL_DISPLAY_NAME first because changing an iter will trigger the
26
+ # sort function; if we set something else first, the value of
27
+ # COL_DISPLAY_NAME for this row will be "nil" and the sort function will fail
28
+ #puts path
29
+ #puts GLib.convert(GLib.filename_to_utf8(path), "Shift_JIS", "UTF-8")
30
+ #puts File.basename(GLib.convert(GLib.filename_to_utf8(path), "Shift_JIS", "UTF-8"))
31
+ # iter[COL_DISPLAY_NAME] = File.basename(GLib.filename_to_utf8(path))
32
+ iter[COL_DISPLAY_NAME] = GLib.filename_to_utf8(path)
33
+ iter[COL_PATH] = path
34
+ iter[COL_IS_DIR] = is_dir
35
+ iter[COL_PIXBUF] = is_dir ? @folder_pixbuf : @file_pixbuf
36
+ end
37
+ end
38
+
39
+ def initialize
40
+ super('Gtk::IconView demo')
41
+ @file_pixbuf = Gdk::Pixbuf.new(Demo.find_file("gnome-fs-regular.png"))
42
+ @folder_pixbuf = Gdk::Pixbuf.new(Demo.find_file("gnome-fs-directory.png"))
43
+
44
+ @store = Gtk::ListStore.new(String, String, TrueClass, Gdk::Pixbuf)
45
+ @parent = "/"
46
+
47
+ @store.set_default_sort_func do |a, b|
48
+ if !a[COL_IS_DIR] and b[COL_IS_DIR]
49
+ 1
50
+ elsif a[COL_IS_DIR] and !b[COL_IS_DIR]
51
+ -1
52
+ else
53
+ a[COL_DISPLAY_NAME] <=> b[COL_DISPLAY_NAME]
54
+ end
55
+ end
56
+ @store.set_sort_column_id(Gtk::TreeSortable::DEFAULT_SORT_COLUMN_ID,
57
+ Gtk::SortType::ASCENDING)
58
+
59
+ fill_store
60
+ set_default_size(650, 400)
61
+ set_border_width(8)
62
+
63
+ vbox = Gtk::Box.new(:vertical)
64
+ add(vbox)
65
+
66
+ toolbar = Gtk::Toolbar.new
67
+ vbox.pack_start(toolbar, :expand => false, :fill => false, :padding => 0)
68
+
69
+ up_button = Gtk::ToolButton.new(:stock_id => :go_up)
70
+ up_button.important = true
71
+ up_button.sensitive = false
72
+ toolbar.insert(up_button, -1)
73
+ up_button.signal_connect("clicked") do
74
+ @parent = File.dirname(@parent)
75
+ fill_store
76
+ up_button.sensitive = @parent != "/"
77
+ end
78
+
79
+ home_button = Gtk::ToolButton.new(:stock_id => :home)
80
+ home_button.important = true
81
+ toolbar.insert(home_button, -1)
82
+ home_button.signal_connect("clicked") do
83
+ @parent = GLib.home_dir
84
+ fill_store
85
+ up_button.sensitive = true
86
+ end
87
+
88
+ sw = Gtk::ScrolledWindow.new
89
+ sw.shadow_type = :etched_in
90
+ sw.set_policy(:automatic, :automatic)
91
+ vbox.pack_start(sw, :expand => true, :fill => true, :padding => 0)
92
+
93
+ iconview = Gtk::IconView.new(@store)
94
+ iconview.selection_mode = :multiple
95
+ iconview.text_column = COL_DISPLAY_NAME
96
+ iconview.pixbuf_column = COL_PIXBUF
97
+ iconview.signal_connect("item_activated") do |iview, path|
98
+ iter = @store.get_iter(path)
99
+ if iter[COL_DISPLAY_NAME]
100
+ @parent = iter[COL_PATH]
101
+ fill_store
102
+ up_button.sensitive = true
103
+ end
104
+ end
105
+ sw.add(iconview)
106
+ iconview.grab_focus
107
+ end
108
+ end
109
+ end
110
+