@gtkx/ffi 0.1.46 → 0.1.48

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 (419) hide show
  1. package/README.md +9 -1
  2. package/dist/codegen/ffi-generator.js +4 -5
  3. package/dist/generated/gdk/cairo-context.d.ts +3 -0
  4. package/dist/generated/gdk/cairo-context.js +18 -0
  5. package/dist/generated/gdk/dmabuf-texture.d.ts +3 -0
  6. package/dist/generated/gdk/dmabuf-texture.js +19 -0
  7. package/dist/generated/gdk/glcontext.d.ts +3 -0
  8. package/dist/generated/gdk/glcontext.js +18 -0
  9. package/dist/generated/gdk/gltexture.d.ts +3 -0
  10. package/dist/generated/gdk/gltexture.js +19 -0
  11. package/dist/generated/gdk/memory-texture.d.ts +3 -0
  12. package/dist/generated/gdk/memory-texture.js +19 -0
  13. package/dist/generated/gdkpixbuf/pixbuf-non-anim.d.ts +3 -0
  14. package/dist/generated/gdkpixbuf/pixbuf-non-anim.js +19 -0
  15. package/dist/generated/gdkpixbuf/pixbuf-simple-anim-iter.d.ts +3 -0
  16. package/dist/generated/gdkpixbuf/pixbuf-simple-anim-iter.js +19 -0
  17. package/dist/generated/gdkpixbuf/pixbuf-simple-anim.d.ts +3 -0
  18. package/dist/generated/gdkpixbuf/pixbuf-simple-anim.js +19 -0
  19. package/dist/generated/gio/buffered-input-stream.d.ts +3 -0
  20. package/dist/generated/gio/buffered-input-stream.js +18 -0
  21. package/dist/generated/gio/buffered-output-stream.d.ts +3 -0
  22. package/dist/generated/gio/buffered-output-stream.js +18 -0
  23. package/dist/generated/gio/converter-input-stream.d.ts +3 -0
  24. package/dist/generated/gio/converter-input-stream.js +18 -0
  25. package/dist/generated/gio/converter-output-stream.d.ts +3 -0
  26. package/dist/generated/gio/converter-output-stream.js +18 -0
  27. package/dist/generated/gio/data-input-stream.d.ts +3 -0
  28. package/dist/generated/gio/data-input-stream.js +19 -1
  29. package/dist/generated/gio/data-output-stream.d.ts +3 -0
  30. package/dist/generated/gio/data-output-stream.js +19 -1
  31. package/dist/generated/gio/dbus-menu-model.d.ts +1 -5
  32. package/dist/generated/gio/dbus-menu-model.js +25 -3
  33. package/dist/generated/gio/file-input-stream.d.ts +3 -0
  34. package/dist/generated/gio/file-input-stream.js +18 -0
  35. package/dist/generated/gio/file-iostream.d.ts +3 -0
  36. package/dist/generated/gio/file-iostream.js +18 -0
  37. package/dist/generated/gio/file-output-stream.d.ts +3 -0
  38. package/dist/generated/gio/file-output-stream.js +18 -0
  39. package/dist/generated/gio/filter-input-stream.d.ts +3 -0
  40. package/dist/generated/gio/filter-input-stream.js +18 -0
  41. package/dist/generated/gio/filter-output-stream.d.ts +3 -0
  42. package/dist/generated/gio/filter-output-stream.js +18 -0
  43. package/dist/generated/gio/inet-socket-address.d.ts +3 -0
  44. package/dist/generated/gio/inet-socket-address.js +18 -0
  45. package/dist/generated/gio/list-store.d.ts +2 -2
  46. package/dist/generated/gio/list-store.js +18 -14
  47. package/dist/generated/gio/memory-input-stream.d.ts +3 -0
  48. package/dist/generated/gio/memory-input-stream.js +18 -0
  49. package/dist/generated/gio/memory-output-stream.d.ts +3 -0
  50. package/dist/generated/gio/memory-output-stream.js +18 -0
  51. package/dist/generated/gio/menu.d.ts +1 -10
  52. package/dist/generated/gio/menu.js +25 -3
  53. package/dist/generated/gio/native-socket-address.d.ts +3 -0
  54. package/dist/generated/gio/native-socket-address.js +19 -0
  55. package/dist/generated/gio/native-volume-monitor.d.ts +15 -0
  56. package/dist/generated/gio/native-volume-monitor.js +65 -3
  57. package/dist/generated/gio/proxy-address-enumerator.d.ts +3 -0
  58. package/dist/generated/gio/proxy-address-enumerator.js +19 -0
  59. package/dist/generated/gio/proxy-address.d.ts +3 -0
  60. package/dist/generated/gio/proxy-address.js +19 -0
  61. package/dist/generated/gio/simple-iostream.d.ts +3 -0
  62. package/dist/generated/gio/simple-iostream.js +19 -0
  63. package/dist/generated/gio/simple-permission.d.ts +3 -0
  64. package/dist/generated/gio/simple-permission.js +19 -0
  65. package/dist/generated/gio/socket-connection.d.ts +3 -0
  66. package/dist/generated/gio/socket-connection.js +18 -0
  67. package/dist/generated/gio/socket-service.d.ts +3 -0
  68. package/dist/generated/gio/socket-service.js +8 -0
  69. package/dist/generated/gio/tcp-connection.d.ts +3 -0
  70. package/dist/generated/gio/tcp-connection.js +19 -0
  71. package/dist/generated/gio/tcp-wrapper-connection.d.ts +3 -0
  72. package/dist/generated/gio/tcp-wrapper-connection.js +18 -0
  73. package/dist/generated/gio/threaded-resolver.d.ts +1 -4
  74. package/dist/generated/gio/threaded-resolver.js +18 -3
  75. package/dist/generated/gio/threaded-socket-service.d.ts +3 -0
  76. package/dist/generated/gio/threaded-socket-service.js +8 -0
  77. package/dist/generated/gio/unix-connection.d.ts +3 -0
  78. package/dist/generated/gio/unix-connection.js +18 -0
  79. package/dist/generated/gio/unix-credentials-message.d.ts +3 -0
  80. package/dist/generated/gio/unix-credentials-message.js +18 -0
  81. package/dist/generated/gio/unix-socket-address.d.ts +3 -0
  82. package/dist/generated/gio/unix-socket-address.js +18 -0
  83. package/dist/generated/glib/byte-array.d.ts +1 -1
  84. package/dist/generated/glib/byte-array.js +9 -7
  85. package/dist/generated/glib/functions.d.ts +3 -3
  86. package/dist/generated/glib/functions.js +27 -21
  87. package/dist/generated/glib/tree.d.ts +1 -1
  88. package/dist/generated/glib/tree.js +9 -11
  89. package/dist/generated/gobject/value-array.d.ts +1 -1
  90. package/dist/generated/gobject/value-array.js +9 -7
  91. package/dist/generated/gsk/broadway-renderer.d.ts +3 -0
  92. package/dist/generated/gsk/broadway-renderer.js +19 -0
  93. package/dist/generated/gsk/cairo-renderer.d.ts +3 -0
  94. package/dist/generated/gsk/cairo-renderer.js +19 -0
  95. package/dist/generated/gsk/glrenderer.d.ts +3 -0
  96. package/dist/generated/gsk/glrenderer.js +19 -0
  97. package/dist/generated/gsk/ngl-renderer.d.ts +3 -0
  98. package/dist/generated/gsk/ngl-renderer.js +19 -0
  99. package/dist/generated/gsk/vulkan-renderer.d.ts +3 -0
  100. package/dist/generated/gsk/vulkan-renderer.js +19 -0
  101. package/dist/generated/gtk/about-dialog.d.ts +15 -1
  102. package/dist/generated/gtk/about-dialog.js +37 -0
  103. package/dist/generated/gtk/action-bar.d.ts +15 -40
  104. package/dist/generated/gtk/action-bar.js +54 -3
  105. package/dist/generated/gtk/activate-action.d.ts +3 -0
  106. package/dist/generated/gtk/activate-action.js +18 -0
  107. package/dist/generated/gtk/alternative-trigger.d.ts +3 -0
  108. package/dist/generated/gtk/alternative-trigger.js +18 -0
  109. package/dist/generated/gtk/any-filter.d.ts +2 -5
  110. package/dist/generated/gtk/any-filter.js +21 -3
  111. package/dist/generated/gtk/app-chooser-button.d.ts +15 -0
  112. package/dist/generated/gtk/app-chooser-button.js +37 -0
  113. package/dist/generated/gtk/app-chooser-dialog.d.ts +15 -1
  114. package/dist/generated/gtk/app-chooser-dialog.js +37 -0
  115. package/dist/generated/gtk/app-chooser-widget.d.ts +15 -0
  116. package/dist/generated/gtk/app-chooser-widget.js +37 -0
  117. package/dist/generated/gtk/application-window.d.ts +15 -0
  118. package/dist/generated/gtk/application-window.js +37 -0
  119. package/dist/generated/gtk/aspect-frame.d.ts +15 -16
  120. package/dist/generated/gtk/aspect-frame.js +54 -3
  121. package/dist/generated/gtk/assistant.d.ts +15 -1
  122. package/dist/generated/gtk/assistant.js +37 -0
  123. package/dist/generated/gtk/bin-layout.d.ts +3 -0
  124. package/dist/generated/gtk/bin-layout.js +19 -0
  125. package/dist/generated/gtk/bool-filter.d.ts +2 -1
  126. package/dist/generated/gtk/bool-filter.js +21 -3
  127. package/dist/generated/gtk/box-layout.d.ts +3 -0
  128. package/dist/generated/gtk/box-layout.js +19 -0
  129. package/dist/generated/gtk/box.d.ts +15 -37
  130. package/dist/generated/gtk/box.js +54 -3
  131. package/dist/generated/gtk/builder-list-item-factory.d.ts +3 -0
  132. package/dist/generated/gtk/builder-list-item-factory.js +18 -0
  133. package/dist/generated/gtk/button.d.ts +15 -0
  134. package/dist/generated/gtk/button.js +37 -0
  135. package/dist/generated/gtk/calendar.d.ts +15 -0
  136. package/dist/generated/gtk/calendar.js +37 -0
  137. package/dist/generated/gtk/callback-action.d.ts +3 -0
  138. package/dist/generated/gtk/callback-action.js +19 -0
  139. package/dist/generated/gtk/cell-area-box.d.ts +9 -21
  140. package/dist/generated/gtk/cell-area-box.js +50 -3
  141. package/dist/generated/gtk/cell-renderer-accel.d.ts +3 -0
  142. package/dist/generated/gtk/cell-renderer-accel.js +8 -0
  143. package/dist/generated/gtk/cell-renderer-combo.d.ts +3 -0
  144. package/dist/generated/gtk/cell-renderer-combo.js +8 -0
  145. package/dist/generated/gtk/cell-renderer-pixbuf.d.ts +3 -16
  146. package/dist/generated/gtk/cell-renderer-pixbuf.js +25 -3
  147. package/dist/generated/gtk/cell-renderer-progress.d.ts +3 -6
  148. package/dist/generated/gtk/cell-renderer-progress.js +25 -3
  149. package/dist/generated/gtk/cell-renderer-spin.d.ts +3 -0
  150. package/dist/generated/gtk/cell-renderer-spin.js +8 -0
  151. package/dist/generated/gtk/cell-renderer-spinner.d.ts +3 -14
  152. package/dist/generated/gtk/cell-renderer-spinner.js +25 -3
  153. package/dist/generated/gtk/cell-renderer-text.d.ts +3 -0
  154. package/dist/generated/gtk/cell-renderer-text.js +8 -0
  155. package/dist/generated/gtk/cell-renderer-toggle.d.ts +3 -0
  156. package/dist/generated/gtk/cell-renderer-toggle.js +8 -0
  157. package/dist/generated/gtk/cell-view.d.ts +15 -22
  158. package/dist/generated/gtk/cell-view.js +54 -3
  159. package/dist/generated/gtk/center-box.d.ts +15 -38
  160. package/dist/generated/gtk/center-box.js +54 -3
  161. package/dist/generated/gtk/center-layout.d.ts +3 -0
  162. package/dist/generated/gtk/center-layout.js +18 -0
  163. package/dist/generated/gtk/check-button.d.ts +15 -0
  164. package/dist/generated/gtk/check-button.js +37 -0
  165. package/dist/generated/gtk/color-button.d.ts +15 -1
  166. package/dist/generated/gtk/color-button.js +37 -0
  167. package/dist/generated/gtk/color-chooser-dialog.d.ts +15 -1
  168. package/dist/generated/gtk/color-chooser-dialog.js +37 -0
  169. package/dist/generated/gtk/color-chooser-widget.d.ts +15 -35
  170. package/dist/generated/gtk/color-chooser-widget.js +54 -3
  171. package/dist/generated/gtk/color-dialog-button.d.ts +15 -0
  172. package/dist/generated/gtk/color-dialog-button.js +37 -0
  173. package/dist/generated/gtk/column-view-cell.d.ts +3 -0
  174. package/dist/generated/gtk/column-view-cell.js +19 -0
  175. package/dist/generated/gtk/column-view-sorter.d.ts +2 -34
  176. package/dist/generated/gtk/column-view-sorter.js +21 -3
  177. package/dist/generated/gtk/column-view.d.ts +15 -1
  178. package/dist/generated/gtk/column-view.js +37 -0
  179. package/dist/generated/gtk/combo-box-text.d.ts +15 -1
  180. package/dist/generated/gtk/combo-box-text.js +37 -0
  181. package/dist/generated/gtk/combo-box.d.ts +15 -1
  182. package/dist/generated/gtk/combo-box.js +37 -0
  183. package/dist/generated/gtk/constraint-layout-child.d.ts +3 -0
  184. package/dist/generated/gtk/constraint-layout-child.js +19 -0
  185. package/dist/generated/gtk/constraint-layout.d.ts +3 -0
  186. package/dist/generated/gtk/constraint-layout.js +18 -0
  187. package/dist/generated/gtk/custom-filter.d.ts +2 -1
  188. package/dist/generated/gtk/custom-filter.js +21 -3
  189. package/dist/generated/gtk/custom-layout.d.ts +3 -0
  190. package/dist/generated/gtk/custom-layout.js +19 -0
  191. package/dist/generated/gtk/custom-sorter.d.ts +4 -3
  192. package/dist/generated/gtk/custom-sorter.js +39 -26
  193. package/dist/generated/gtk/dialog.d.ts +15 -0
  194. package/dist/generated/gtk/dialog.js +37 -0
  195. package/dist/generated/gtk/drag-icon.d.ts +15 -13
  196. package/dist/generated/gtk/drag-icon.js +54 -3
  197. package/dist/generated/gtk/drawing-area.d.ts +15 -0
  198. package/dist/generated/gtk/drawing-area.js +37 -0
  199. package/dist/generated/gtk/drop-down.d.ts +15 -1
  200. package/dist/generated/gtk/drop-down.js +37 -0
  201. package/dist/generated/gtk/editable-label.d.ts +15 -44
  202. package/dist/generated/gtk/editable-label.js +54 -3
  203. package/dist/generated/gtk/emoji-chooser.d.ts +15 -0
  204. package/dist/generated/gtk/emoji-chooser.js +37 -0
  205. package/dist/generated/gtk/entry.d.ts +15 -1
  206. package/dist/generated/gtk/entry.js +37 -0
  207. package/dist/generated/gtk/every-filter.d.ts +2 -5
  208. package/dist/generated/gtk/every-filter.js +21 -3
  209. package/dist/generated/gtk/expander.d.ts +15 -0
  210. package/dist/generated/gtk/expander.js +37 -0
  211. package/dist/generated/gtk/file-chooser-dialog.d.ts +15 -1
  212. package/dist/generated/gtk/file-chooser-dialog.js +37 -0
  213. package/dist/generated/gtk/file-chooser-native.d.ts +1 -148
  214. package/dist/generated/gtk/file-chooser-native.js +21 -3
  215. package/dist/generated/gtk/file-chooser-widget.d.ts +15 -1
  216. package/dist/generated/gtk/file-chooser-widget.js +37 -0
  217. package/dist/generated/gtk/file-filter.d.ts +2 -48
  218. package/dist/generated/gtk/file-filter.js +21 -3
  219. package/dist/generated/gtk/fixed-layout-child.d.ts +3 -0
  220. package/dist/generated/gtk/fixed-layout-child.js +18 -0
  221. package/dist/generated/gtk/fixed-layout.d.ts +3 -0
  222. package/dist/generated/gtk/fixed-layout.js +19 -0
  223. package/dist/generated/gtk/fixed.d.ts +15 -39
  224. package/dist/generated/gtk/fixed.js +54 -3
  225. package/dist/generated/gtk/flow-box-child.d.ts +15 -0
  226. package/dist/generated/gtk/flow-box-child.js +37 -0
  227. package/dist/generated/gtk/flow-box.d.ts +15 -1
  228. package/dist/generated/gtk/flow-box.js +37 -0
  229. package/dist/generated/gtk/font-button.d.ts +15 -1
  230. package/dist/generated/gtk/font-button.js +37 -0
  231. package/dist/generated/gtk/font-chooser-dialog.d.ts +15 -1
  232. package/dist/generated/gtk/font-chooser-dialog.js +37 -0
  233. package/dist/generated/gtk/font-chooser-widget.d.ts +15 -20
  234. package/dist/generated/gtk/font-chooser-widget.js +54 -3
  235. package/dist/generated/gtk/font-dialog-button.d.ts +15 -1
  236. package/dist/generated/gtk/font-dialog-button.js +37 -0
  237. package/dist/generated/gtk/frame.d.ts +15 -43
  238. package/dist/generated/gtk/frame.js +54 -3
  239. package/dist/generated/gtk/glarea.d.ts +15 -0
  240. package/dist/generated/gtk/glarea.js +37 -0
  241. package/dist/generated/gtk/graphics-offload.d.ts +15 -38
  242. package/dist/generated/gtk/graphics-offload.js +54 -3
  243. package/dist/generated/gtk/grid-layout-child.d.ts +3 -0
  244. package/dist/generated/gtk/grid-layout-child.js +19 -0
  245. package/dist/generated/gtk/grid-layout.d.ts +3 -0
  246. package/dist/generated/gtk/grid-layout.js +19 -0
  247. package/dist/generated/gtk/grid-view.d.ts +15 -1
  248. package/dist/generated/gtk/grid-view.js +37 -0
  249. package/dist/generated/gtk/grid.d.ts +15 -86
  250. package/dist/generated/gtk/grid.js +54 -3
  251. package/dist/generated/gtk/header-bar.d.ts +15 -73
  252. package/dist/generated/gtk/header-bar.js +54 -3
  253. package/dist/generated/gtk/icon-view.d.ts +15 -2
  254. package/dist/generated/gtk/icon-view.js +37 -0
  255. package/dist/generated/gtk/image.d.ts +15 -42
  256. package/dist/generated/gtk/image.js +54 -3
  257. package/dist/generated/gtk/imcontext-simple.d.ts +6 -40
  258. package/dist/generated/gtk/imcontext-simple.js +32 -3
  259. package/dist/generated/gtk/immulticontext.d.ts +6 -7
  260. package/dist/generated/gtk/immulticontext.js +32 -3
  261. package/dist/generated/gtk/info-bar.d.ts +15 -1
  262. package/dist/generated/gtk/info-bar.js +37 -0
  263. package/dist/generated/gtk/inscription.d.ts +15 -19
  264. package/dist/generated/gtk/inscription.js +54 -3
  265. package/dist/generated/gtk/keyval-trigger.d.ts +3 -0
  266. package/dist/generated/gtk/keyval-trigger.js +19 -0
  267. package/dist/generated/gtk/label.d.ts +15 -1
  268. package/dist/generated/gtk/label.js +37 -0
  269. package/dist/generated/gtk/level-bar.d.ts +15 -1
  270. package/dist/generated/gtk/level-bar.js +37 -0
  271. package/dist/generated/gtk/link-button.d.ts +15 -0
  272. package/dist/generated/gtk/link-button.js +37 -0
  273. package/dist/generated/gtk/list-base.d.ts +15 -47
  274. package/dist/generated/gtk/list-base.js +54 -3
  275. package/dist/generated/gtk/list-box-row.d.ts +15 -0
  276. package/dist/generated/gtk/list-box-row.js +37 -0
  277. package/dist/generated/gtk/list-box.d.ts +15 -1
  278. package/dist/generated/gtk/list-box.js +37 -0
  279. package/dist/generated/gtk/list-view.d.ts +15 -1
  280. package/dist/generated/gtk/list-view.js +37 -0
  281. package/dist/generated/gtk/lock-button.d.ts +15 -0
  282. package/dist/generated/gtk/lock-button.js +37 -0
  283. package/dist/generated/gtk/media-controls.d.ts +15 -7
  284. package/dist/generated/gtk/media-controls.js +54 -3
  285. package/dist/generated/gtk/media-file.d.ts +3 -0
  286. package/dist/generated/gtk/media-file.js +18 -0
  287. package/dist/generated/gtk/menu-button.d.ts +15 -0
  288. package/dist/generated/gtk/menu-button.js +37 -0
  289. package/dist/generated/gtk/message-dialog.d.ts +15 -0
  290. package/dist/generated/gtk/message-dialog.js +37 -0
  291. package/dist/generated/gtk/mnemonic-action.d.ts +3 -0
  292. package/dist/generated/gtk/mnemonic-action.js +18 -0
  293. package/dist/generated/gtk/mnemonic-trigger.d.ts +3 -0
  294. package/dist/generated/gtk/mnemonic-trigger.js +19 -0
  295. package/dist/generated/gtk/multi-filter.d.ts +2 -1
  296. package/dist/generated/gtk/multi-filter.js +21 -3
  297. package/dist/generated/gtk/multi-sorter.d.ts +2 -6
  298. package/dist/generated/gtk/multi-sorter.js +21 -3
  299. package/dist/generated/gtk/named-action.d.ts +3 -0
  300. package/dist/generated/gtk/named-action.js +19 -0
  301. package/dist/generated/gtk/never-trigger.d.ts +3 -0
  302. package/dist/generated/gtk/never-trigger.js +18 -0
  303. package/dist/generated/gtk/notebook.d.ts +15 -1
  304. package/dist/generated/gtk/notebook.js +37 -0
  305. package/dist/generated/gtk/nothing-action.d.ts +3 -0
  306. package/dist/generated/gtk/nothing-action.js +18 -0
  307. package/dist/generated/gtk/numeric-sorter.d.ts +2 -7
  308. package/dist/generated/gtk/numeric-sorter.js +21 -3
  309. package/dist/generated/gtk/overlay-layout-child.d.ts +3 -0
  310. package/dist/generated/gtk/overlay-layout-child.js +19 -0
  311. package/dist/generated/gtk/overlay-layout.d.ts +3 -0
  312. package/dist/generated/gtk/overlay-layout.js +19 -0
  313. package/dist/generated/gtk/overlay.d.ts +15 -0
  314. package/dist/generated/gtk/overlay.js +37 -0
  315. package/dist/generated/gtk/pad-controller.d.ts +3 -0
  316. package/dist/generated/gtk/pad-controller.js +19 -0
  317. package/dist/generated/gtk/page-setup-unix-dialog.d.ts +15 -0
  318. package/dist/generated/gtk/page-setup-unix-dialog.js +37 -0
  319. package/dist/generated/gtk/paned.d.ts +15 -1
  320. package/dist/generated/gtk/paned.js +37 -0
  321. package/dist/generated/gtk/password-entry-buffer.d.ts +2 -6
  322. package/dist/generated/gtk/password-entry-buffer.js +32 -3
  323. package/dist/generated/gtk/password-entry.d.ts +15 -1
  324. package/dist/generated/gtk/password-entry.js +37 -0
  325. package/dist/generated/gtk/picture.d.ts +15 -49
  326. package/dist/generated/gtk/picture.js +54 -3
  327. package/dist/generated/gtk/popover-menu-bar.d.ts +15 -30
  328. package/dist/generated/gtk/popover-menu-bar.js +54 -3
  329. package/dist/generated/gtk/popover-menu.d.ts +15 -1
  330. package/dist/generated/gtk/popover-menu.js +37 -0
  331. package/dist/generated/gtk/popover.d.ts +15 -1
  332. package/dist/generated/gtk/popover.js +37 -0
  333. package/dist/generated/gtk/print-unix-dialog.d.ts +15 -1
  334. package/dist/generated/gtk/print-unix-dialog.js +37 -0
  335. package/dist/generated/gtk/progress-bar.d.ts +15 -50
  336. package/dist/generated/gtk/progress-bar.js +54 -3
  337. package/dist/generated/gtk/range.d.ts +15 -1
  338. package/dist/generated/gtk/range.js +37 -0
  339. package/dist/generated/gtk/revealer.d.ts +15 -24
  340. package/dist/generated/gtk/revealer.js +54 -3
  341. package/dist/generated/gtk/scale-button.d.ts +15 -1
  342. package/dist/generated/gtk/scale-button.js +37 -0
  343. package/dist/generated/gtk/scale.d.ts +15 -1
  344. package/dist/generated/gtk/scale.js +37 -0
  345. package/dist/generated/gtk/scrollbar.d.ts +15 -45
  346. package/dist/generated/gtk/scrollbar.js +54 -3
  347. package/dist/generated/gtk/scrolled-window.d.ts +15 -1
  348. package/dist/generated/gtk/scrolled-window.js +37 -0
  349. package/dist/generated/gtk/search-bar.d.ts +15 -52
  350. package/dist/generated/gtk/search-bar.js +54 -3
  351. package/dist/generated/gtk/search-entry.d.ts +15 -1
  352. package/dist/generated/gtk/search-entry.js +37 -0
  353. package/dist/generated/gtk/separator.d.ts +15 -19
  354. package/dist/generated/gtk/separator.js +54 -3
  355. package/dist/generated/gtk/shortcut-controller.d.ts +3 -0
  356. package/dist/generated/gtk/shortcut-controller.js +18 -0
  357. package/dist/generated/gtk/shortcut-label.d.ts +15 -5
  358. package/dist/generated/gtk/shortcut-label.js +54 -3
  359. package/dist/generated/gtk/shortcuts-group.d.ts +15 -18
  360. package/dist/generated/gtk/shortcuts-group.js +54 -3
  361. package/dist/generated/gtk/shortcuts-section.d.ts +15 -0
  362. package/dist/generated/gtk/shortcuts-section.js +37 -0
  363. package/dist/generated/gtk/shortcuts-shortcut.d.ts +15 -6
  364. package/dist/generated/gtk/shortcuts-shortcut.js +54 -3
  365. package/dist/generated/gtk/shortcuts-window.d.ts +15 -0
  366. package/dist/generated/gtk/shortcuts-window.js +37 -0
  367. package/dist/generated/gtk/signal-action.d.ts +3 -0
  368. package/dist/generated/gtk/signal-action.js +19 -0
  369. package/dist/generated/gtk/spin-button.d.ts +15 -1
  370. package/dist/generated/gtk/spin-button.js +37 -0
  371. package/dist/generated/gtk/spinner.d.ts +15 -21
  372. package/dist/generated/gtk/spinner.js +54 -3
  373. package/dist/generated/gtk/stack-sidebar.d.ts +15 -19
  374. package/dist/generated/gtk/stack-sidebar.js +54 -3
  375. package/dist/generated/gtk/stack-switcher.d.ts +15 -35
  376. package/dist/generated/gtk/stack-switcher.js +54 -3
  377. package/dist/generated/gtk/stack.d.ts +15 -51
  378. package/dist/generated/gtk/stack.js +54 -3
  379. package/dist/generated/gtk/statusbar.d.ts +15 -0
  380. package/dist/generated/gtk/statusbar.js +37 -0
  381. package/dist/generated/gtk/string-filter.d.ts +2 -15
  382. package/dist/generated/gtk/string-filter.js +21 -3
  383. package/dist/generated/gtk/string-sorter.d.ts +2 -11
  384. package/dist/generated/gtk/string-sorter.js +21 -3
  385. package/dist/generated/gtk/switch.d.ts +15 -0
  386. package/dist/generated/gtk/switch.js +37 -0
  387. package/dist/generated/gtk/text-view.d.ts +15 -1
  388. package/dist/generated/gtk/text-view.js +37 -0
  389. package/dist/generated/gtk/text.d.ts +15 -1
  390. package/dist/generated/gtk/text.js +37 -0
  391. package/dist/generated/gtk/toggle-button.d.ts +15 -0
  392. package/dist/generated/gtk/toggle-button.js +37 -0
  393. package/dist/generated/gtk/tree-expander.d.ts +15 -78
  394. package/dist/generated/gtk/tree-expander.js +54 -3
  395. package/dist/generated/gtk/tree-list-row-sorter.d.ts +2 -14
  396. package/dist/generated/gtk/tree-list-row-sorter.js +21 -3
  397. package/dist/generated/gtk/tree-view.d.ts +15 -2
  398. package/dist/generated/gtk/tree-view.js +37 -0
  399. package/dist/generated/gtk/video.d.ts +15 -17
  400. package/dist/generated/gtk/video.js +54 -3
  401. package/dist/generated/gtk/viewport.d.ts +15 -21
  402. package/dist/generated/gtk/viewport.js +54 -3
  403. package/dist/generated/gtk/volume-button.d.ts +15 -0
  404. package/dist/generated/gtk/volume-button.js +37 -0
  405. package/dist/generated/gtk/window-controls.d.ts +15 -53
  406. package/dist/generated/gtk/window-controls.js +54 -3
  407. package/dist/generated/gtk/window-handle.d.ts +15 -18
  408. package/dist/generated/gtk/window-handle.js +54 -3
  409. package/dist/generated/gtk/window.d.ts +15 -1
  410. package/dist/generated/gtk/window.js +37 -0
  411. package/dist/generated/gtksource/gutter-renderer-pixbuf.d.ts +4 -6
  412. package/dist/generated/gtksource/gutter-renderer-pixbuf.js +45 -3
  413. package/dist/generated/gtksource/gutter-renderer-text.d.ts +5 -6
  414. package/dist/generated/gtksource/gutter-renderer-text.js +45 -3
  415. package/dist/generated/gtksource/map.d.ts +14 -25
  416. package/dist/generated/gtksource/map.js +72 -3
  417. package/dist/generated/pango/fontset-simple.d.ts +3 -0
  418. package/dist/generated/pango/fontset-simple.js +19 -0
  419. package/package.json +3 -3
@@ -3,6 +3,7 @@ import { getObject } from "@gtkx/ffi";
3
3
  import { Editable } from "./editable.js";
4
4
  import { EntryBuffer } from "./entry-buffer.js";
5
5
  import { EntryCompletion } from "./entry-completion.js";
6
+ import { Tooltip } from "./tooltip.js";
6
7
  import * as Gdk from "../gdk/index.js";
7
8
  import * as Gio from "../gio/index.js";
8
9
  import * as Pango from "../pango/index.js";
@@ -106,6 +107,42 @@ const SIGNAL_META = {
106
107
  params: [{ type: { type: "int", size: 32, unsigned: false } }],
107
108
  returnType: { type: "undefined" },
108
109
  },
110
+ destroy: { params: [], returnType: { type: "undefined" } },
111
+ "direction-changed": {
112
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
113
+ returnType: { type: "undefined" },
114
+ },
115
+ hide: { params: [], returnType: { type: "undefined" } },
116
+ "keynav-failed": {
117
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
118
+ returnType: { type: "boolean" },
119
+ },
120
+ map: { params: [], returnType: { type: "undefined" } },
121
+ "mnemonic-activate": {
122
+ params: [{ type: { type: "boolean" } }],
123
+ returnType: { type: "boolean" },
124
+ },
125
+ "move-focus": {
126
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
127
+ returnType: { type: "undefined" },
128
+ },
129
+ "query-tooltip": {
130
+ params: [
131
+ { type: { type: "int", size: 32, unsigned: false } },
132
+ { type: { type: "int", size: 32, unsigned: false } },
133
+ { type: { type: "boolean" } },
134
+ { type: { type: "gobject", borrowed: true }, getCls: () => Tooltip },
135
+ ],
136
+ returnType: { type: "boolean" },
137
+ },
138
+ realize: { params: [], returnType: { type: "undefined" } },
139
+ show: { params: [], returnType: { type: "undefined" } },
140
+ "state-flags-changed": {
141
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
142
+ returnType: { type: "undefined" },
143
+ },
144
+ unmap: { params: [], returnType: { type: "undefined" } },
145
+ unrealize: { params: [], returnType: { type: "undefined" } },
109
146
  };
110
147
  export class Entry extends Widget {
111
148
  /**
@@ -1,10 +1,6 @@
1
+ import { FilterChange } from "./enums.js";
1
2
  import * as GObject from "../gobject/index.js";
2
3
  import { MultiFilter } from "./multi-filter.js";
3
- /**
4
- * Matches an item when each of its filters matches.
5
- *
6
- * To add filters to a `GtkEveryFilter`, use [method@Gtk.MultiFilter.append].
7
- */
8
4
  export declare class EveryFilter extends MultiFilter {
9
5
  /**
10
6
  * Creates a new empty "every" filter.
@@ -17,6 +13,7 @@ export declare class EveryFilter extends MultiFilter {
17
13
  */
18
14
  constructor(...args: unknown[]);
19
15
  protected createPtr(_args: unknown[]): unknown;
16
+ connect(signal: "changed", handler: (self: EveryFilter, change: FilterChange) => void, after?: boolean): number;
20
17
  connect(signal: "notify", handler: (self: EveryFilter, pspec: GObject.ParamSpec) => void, after?: boolean): number;
21
18
  connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
22
19
  }
@@ -6,6 +6,12 @@ import { MultiFilter } from "./multi-filter.js";
6
6
  *
7
7
  * To add filters to a `GtkEveryFilter`, use [method@Gtk.MultiFilter.append].
8
8
  */
9
+ const SIGNAL_META = {
10
+ changed: {
11
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
12
+ returnType: { type: "undefined" },
13
+ },
14
+ };
9
15
  export class EveryFilter extends MultiFilter {
10
16
  /**
11
17
  * Creates a new empty "every" filter.
@@ -26,12 +32,24 @@ export class EveryFilter extends MultiFilter {
26
32
  });
27
33
  }
28
34
  connect(signal, handler, after = false) {
35
+ const meta = SIGNAL_META[signal];
29
36
  const selfType = { type: "gobject", borrowed: true };
30
- const argTypes = [selfType];
31
- const returnType = undefined;
37
+ const argTypes = meta
38
+ ? [selfType, ...meta.params.map((m) => m.type)]
39
+ : [selfType];
40
+ const returnType = meta?.returnType;
32
41
  const wrappedHandler = (...args) => {
33
42
  const self = getObject(args[0], EveryFilter);
34
- return handler(self, ...args.slice(1));
43
+ const signalArgs = args.slice(1);
44
+ if (!meta)
45
+ return handler(self, ...signalArgs);
46
+ const wrapped = meta.params.map((m, i) => {
47
+ if (m.getCls && signalArgs[i] != null) {
48
+ return getObject(signalArgs[i], m.getCls());
49
+ }
50
+ return signalArgs[i];
51
+ });
52
+ return handler(self, ...wrapped);
35
53
  };
36
54
  return call("libgtk-4.so.1", "g_signal_connect_closure", [
37
55
  { type: { type: "gobject" }, value: this.ptr },
@@ -1,3 +1,5 @@
1
+ import { DirectionType, StateFlags, TextDirection } from "./enums.js";
2
+ import { Tooltip } from "./tooltip.js";
1
3
  import * as GObject from "../gobject/index.js";
2
4
  import { Widget } from "./widget.js";
3
5
  export declare class Expander extends Widget {
@@ -102,6 +104,19 @@ export declare class Expander extends Widget {
102
104
  */
103
105
  setUseUnderline(useUnderline: boolean): void;
104
106
  connect(signal: "activate", handler: (self: Expander) => void, after?: boolean): number;
107
+ connect(signal: "destroy", handler: (self: Expander) => void, after?: boolean): number;
108
+ connect(signal: "direction-changed", handler: (self: Expander, previousDirection: TextDirection) => void, after?: boolean): number;
109
+ connect(signal: "hide", handler: (self: Expander) => void, after?: boolean): number;
110
+ connect(signal: "keynav-failed", handler: (self: Expander, direction: DirectionType) => boolean, after?: boolean): number;
111
+ connect(signal: "map", handler: (self: Expander) => void, after?: boolean): number;
112
+ connect(signal: "mnemonic-activate", handler: (self: Expander, groupCycling: boolean) => boolean, after?: boolean): number;
113
+ connect(signal: "move-focus", handler: (self: Expander, direction: DirectionType) => void, after?: boolean): number;
114
+ connect(signal: "query-tooltip", handler: (self: Expander, x: number, y: number, keyboardMode: boolean, tooltip: Tooltip) => boolean, after?: boolean): number;
115
+ connect(signal: "realize", handler: (self: Expander) => void, after?: boolean): number;
116
+ connect(signal: "show", handler: (self: Expander) => void, after?: boolean): number;
117
+ connect(signal: "state-flags-changed", handler: (self: Expander, flags: StateFlags) => void, after?: boolean): number;
118
+ connect(signal: "unmap", handler: (self: Expander) => void, after?: boolean): number;
119
+ connect(signal: "unrealize", handler: (self: Expander) => void, after?: boolean): number;
105
120
  connect(signal: "notify", handler: (self: Expander, pspec: GObject.ParamSpec) => void, after?: boolean): number;
106
121
  connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
107
122
  }
@@ -1,5 +1,6 @@
1
1
  import { call } from "@gtkx/native";
2
2
  import { getObject } from "@gtkx/ffi";
3
+ import { Tooltip } from "./tooltip.js";
3
4
  import { Widget } from "./widget.js";
4
5
  /**
5
6
  * Allows the user to reveal or conceal a child widget.
@@ -91,6 +92,42 @@ import { Widget } from "./widget.js";
91
92
  */
92
93
  const SIGNAL_META = {
93
94
  activate: { params: [], returnType: { type: "undefined" } },
95
+ destroy: { params: [], returnType: { type: "undefined" } },
96
+ "direction-changed": {
97
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
98
+ returnType: { type: "undefined" },
99
+ },
100
+ hide: { params: [], returnType: { type: "undefined" } },
101
+ "keynav-failed": {
102
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
103
+ returnType: { type: "boolean" },
104
+ },
105
+ map: { params: [], returnType: { type: "undefined" } },
106
+ "mnemonic-activate": {
107
+ params: [{ type: { type: "boolean" } }],
108
+ returnType: { type: "boolean" },
109
+ },
110
+ "move-focus": {
111
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
112
+ returnType: { type: "undefined" },
113
+ },
114
+ "query-tooltip": {
115
+ params: [
116
+ { type: { type: "int", size: 32, unsigned: false } },
117
+ { type: { type: "int", size: 32, unsigned: false } },
118
+ { type: { type: "boolean" } },
119
+ { type: { type: "gobject", borrowed: true }, getCls: () => Tooltip },
120
+ ],
121
+ returnType: { type: "boolean" },
122
+ },
123
+ realize: { params: [], returnType: { type: "undefined" } },
124
+ show: { params: [], returnType: { type: "undefined" } },
125
+ "state-flags-changed": {
126
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
127
+ returnType: { type: "undefined" },
128
+ },
129
+ unmap: { params: [], returnType: { type: "undefined" } },
130
+ unrealize: { params: [], returnType: { type: "undefined" } },
94
131
  };
95
132
  export class Expander extends Widget {
96
133
  constructor(...args) {
@@ -1,5 +1,6 @@
1
- import { FileChooserAction } from "./enums.js";
1
+ import { DirectionType, FileChooserAction, StateFlags, TextDirection } from "./enums.js";
2
2
  import { FileFilter } from "./file-filter.js";
3
+ import { Tooltip } from "./tooltip.js";
3
4
  import * as GObject from "../gobject/index.js";
4
5
  import * as Gio from "../gio/index.js";
5
6
  import { Dialog } from "./dialog.js";
@@ -244,6 +245,19 @@ export declare class FileChooserDialog extends Dialog {
244
245
  connect(signal: "close-request", handler: (self: FileChooserDialog) => boolean, after?: boolean): number;
245
246
  connect(signal: "enable-debugging", handler: (self: FileChooserDialog, toggle: boolean) => boolean, after?: boolean): number;
246
247
  connect(signal: "keys-changed", handler: (self: FileChooserDialog) => void, after?: boolean): number;
248
+ connect(signal: "destroy", handler: (self: FileChooserDialog) => void, after?: boolean): number;
249
+ connect(signal: "direction-changed", handler: (self: FileChooserDialog, previousDirection: TextDirection) => void, after?: boolean): number;
250
+ connect(signal: "hide", handler: (self: FileChooserDialog) => void, after?: boolean): number;
251
+ connect(signal: "keynav-failed", handler: (self: FileChooserDialog, direction: DirectionType) => boolean, after?: boolean): number;
252
+ connect(signal: "map", handler: (self: FileChooserDialog) => void, after?: boolean): number;
253
+ connect(signal: "mnemonic-activate", handler: (self: FileChooserDialog, groupCycling: boolean) => boolean, after?: boolean): number;
254
+ connect(signal: "move-focus", handler: (self: FileChooserDialog, direction: DirectionType) => void, after?: boolean): number;
255
+ connect(signal: "query-tooltip", handler: (self: FileChooserDialog, x: number, y: number, keyboardMode: boolean, tooltip: Tooltip) => boolean, after?: boolean): number;
256
+ connect(signal: "realize", handler: (self: FileChooserDialog) => void, after?: boolean): number;
257
+ connect(signal: "show", handler: (self: FileChooserDialog) => void, after?: boolean): number;
258
+ connect(signal: "state-flags-changed", handler: (self: FileChooserDialog, flags: StateFlags) => void, after?: boolean): number;
259
+ connect(signal: "unmap", handler: (self: FileChooserDialog) => void, after?: boolean): number;
260
+ connect(signal: "unrealize", handler: (self: FileChooserDialog) => void, after?: boolean): number;
247
261
  connect(signal: "notify", handler: (self: FileChooserDialog, pspec: GObject.ParamSpec) => void, after?: boolean): number;
248
262
  connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
249
263
  }
@@ -1,6 +1,7 @@
1
1
  import { call } from "@gtkx/native";
2
2
  import { NativeError, getObject } from "@gtkx/ffi";
3
3
  import { FileFilter } from "./file-filter.js";
4
+ import { Tooltip } from "./tooltip.js";
4
5
  import * as Gio from "../gio/index.js";
5
6
  import { Dialog } from "./dialog.js";
6
7
  /**
@@ -191,6 +192,42 @@ const SIGNAL_META = {
191
192
  returnType: { type: "boolean" },
192
193
  },
193
194
  "keys-changed": { params: [], returnType: { type: "undefined" } },
195
+ destroy: { params: [], returnType: { type: "undefined" } },
196
+ "direction-changed": {
197
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
198
+ returnType: { type: "undefined" },
199
+ },
200
+ hide: { params: [], returnType: { type: "undefined" } },
201
+ "keynav-failed": {
202
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
203
+ returnType: { type: "boolean" },
204
+ },
205
+ map: { params: [], returnType: { type: "undefined" } },
206
+ "mnemonic-activate": {
207
+ params: [{ type: { type: "boolean" } }],
208
+ returnType: { type: "boolean" },
209
+ },
210
+ "move-focus": {
211
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
212
+ returnType: { type: "undefined" },
213
+ },
214
+ "query-tooltip": {
215
+ params: [
216
+ { type: { type: "int", size: 32, unsigned: false } },
217
+ { type: { type: "int", size: 32, unsigned: false } },
218
+ { type: { type: "boolean" } },
219
+ { type: { type: "gobject", borrowed: true }, getCls: () => Tooltip },
220
+ ],
221
+ returnType: { type: "boolean" },
222
+ },
223
+ realize: { params: [], returnType: { type: "undefined" } },
224
+ show: { params: [], returnType: { type: "undefined" } },
225
+ "state-flags-changed": {
226
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
227
+ returnType: { type: "undefined" },
228
+ },
229
+ unmap: { params: [], returnType: { type: "undefined" } },
230
+ unrealize: { params: [], returnType: { type: "undefined" } },
194
231
  };
195
232
  export class FileChooserDialog extends Dialog {
196
233
  constructor(...args) {
@@ -4,154 +4,6 @@ import { Window } from "./window.js";
4
4
  import * as GObject from "../gobject/index.js";
5
5
  import * as Gio from "../gio/index.js";
6
6
  import { NativeDialog } from "./native-dialog.js";
7
- /**
8
- * `GtkFileChooserNative` is an abstraction of a dialog suitable
9
- * for use with “File Open” or “File Save as” commands.
10
- *
11
- * By default, this just uses a `GtkFileChooserDialog` to implement
12
- * the actual dialog. However, on some platforms, such as Windows and
13
- * macOS, the native platform file chooser is used instead. When the
14
- * application is running in a sandboxed environment without direct
15
- * filesystem access (such as Flatpak), `GtkFileChooserNative` may call
16
- * the proper APIs (portals) to let the user choose a file and make it
17
- * available to the application.
18
- *
19
- * While the API of `GtkFileChooserNative` closely mirrors `GtkFileChooserDialog`,
20
- * the main difference is that there is no access to any `GtkWindow` or `GtkWidget`
21
- * for the dialog. This is required, as there may not be one in the case of a
22
- * platform native dialog.
23
- *
24
- * Showing, hiding and running the dialog is handled by the
25
- * [class@Gtk.NativeDialog] functions.
26
- *
27
- * Note that unlike `GtkFileChooserDialog`, `GtkFileChooserNative` objects
28
- * are not toplevel widgets, and GTK does not keep them alive. It is your
29
- * responsibility to keep a reference until you are done with the
30
- * object.
31
- *
32
- * ## Typical usage
33
- *
34
- * In the simplest of cases, you can the following code to use
35
- * `GtkFileChooserNative` to select a file for opening:
36
- *
37
- * ```c
38
- * static void
39
- * on_response (GtkNativeDialog *native,
40
- * int response)
41
- * {
42
- * if (response == GTK_RESPONSE_ACCEPT)
43
- * {
44
- * GtkFileChooser *chooser = GTK_FILE_CHOOSER (native);
45
- * GFile *file = gtk_file_chooser_get_file (chooser);
46
- *
47
- * open_file (file);
48
- *
49
- * g_object_unref (file);
50
- * }
51
- *
52
- * g_object_unref (native);
53
- * }
54
- *
55
- * // ...
56
- * GtkFileChooserNative *native;
57
- * GtkFileChooserAction action = GTK_FILE_CHOOSER_ACTION_OPEN;
58
- *
59
- * native = gtk_file_chooser_native_new ("Open File",
60
- * parent_window,
61
- * action,
62
- * "_Open",
63
- * "_Cancel");
64
- *
65
- * g_signal_connect (native, "response", G_CALLBACK (on_response), NULL);
66
- * gtk_native_dialog_show (GTK_NATIVE_DIALOG (native));
67
- * ```
68
- *
69
- * To use a `GtkFileChooserNative` for saving, you can use this:
70
- *
71
- * ```c
72
- * static void
73
- * on_response (GtkNativeDialog *native,
74
- * int response)
75
- * {
76
- * if (response == GTK_RESPONSE_ACCEPT)
77
- * {
78
- * GtkFileChooser *chooser = GTK_FILE_CHOOSER (native);
79
- * GFile *file = gtk_file_chooser_get_file (chooser);
80
- *
81
- * save_to_file (file);
82
- *
83
- * g_object_unref (file);
84
- * }
85
- *
86
- * g_object_unref (native);
87
- * }
88
- *
89
- * // ...
90
- * GtkFileChooserNative *native;
91
- * GtkFileChooser *chooser;
92
- * GtkFileChooserAction action = GTK_FILE_CHOOSER_ACTION_SAVE;
93
- *
94
- * native = gtk_file_chooser_native_new ("Save File",
95
- * parent_window,
96
- * action,
97
- * "_Save",
98
- * "_Cancel");
99
- * chooser = GTK_FILE_CHOOSER (native);
100
- *
101
- * if (user_edited_a_new_document)
102
- * gtk_file_chooser_set_current_name (chooser, _("Untitled document"));
103
- * else
104
- * gtk_file_chooser_set_file (chooser, existing_file, NULL);
105
- *
106
- * g_signal_connect (native, "response", G_CALLBACK (on_response), NULL);
107
- * gtk_native_dialog_show (GTK_NATIVE_DIALOG (native));
108
- * ```
109
- *
110
- * For more information on how to best set up a file dialog,
111
- * see the [class@Gtk.FileChooserDialog] documentation.
112
- *
113
- * ## Response Codes
114
- *
115
- * `GtkFileChooserNative` inherits from [class@Gtk.NativeDialog],
116
- * which means it will return %GTK_RESPONSE_ACCEPT if the user accepted,
117
- * and %GTK_RESPONSE_CANCEL if he pressed cancel. It can also return
118
- * %GTK_RESPONSE_DELETE_EVENT if the window was unexpectedly closed.
119
- *
120
- * ## Differences from `GtkFileChooserDialog`
121
- *
122
- * There are a few things in the [iface@Gtk.FileChooser] interface that
123
- * are not possible to use with `GtkFileChooserNative`, as such use would
124
- * prohibit the use of a native dialog.
125
- *
126
- * No operations that change the dialog work while the dialog is visible.
127
- * Set all the properties that are required before showing the dialog.
128
- *
129
- * ## Win32 details
130
- *
131
- * On windows the `IFileDialog` implementation (added in Windows Vista) is
132
- * used. It supports many of the features that `GtkFileChooser` has, but
133
- * there are some things it does not handle:
134
- *
135
- * * Any [class@Gtk.FileFilter] added using a mimetype
136
- *
137
- * If any of these features are used the regular `GtkFileChooserDialog`
138
- * will be used in place of the native one.
139
- *
140
- * ## Portal details
141
- *
142
- * When the `org.freedesktop.portal.FileChooser` portal is available on
143
- * the session bus, it is used to bring up an out-of-process file chooser.
144
- * Depending on the kind of session the application is running in, this may
145
- * or may not be a GTK file chooser.
146
- *
147
- * ## macOS details
148
- *
149
- * On macOS the `NSSavePanel` and `NSOpenPanel` classes are used to provide
150
- * native file chooser dialogs. Some features provided by `GtkFileChooser`
151
- * are not supported:
152
- *
153
- * * Shortcut folders.
154
- */
155
7
  export declare class FileChooserNative extends NativeDialog {
156
8
  /**
157
9
  * Creates a new `GtkFileChooserNative`.
@@ -427,6 +279,7 @@ export declare class FileChooserNative extends NativeDialog {
427
279
  * @param selectMultiple - %TRUE if multiple files can be selected.
428
280
  */
429
281
  setSelectMultiple(selectMultiple: boolean): void;
282
+ connect(signal: "response", handler: (self: FileChooserNative, responseId: number) => void, after?: boolean): number;
430
283
  connect(signal: "notify", handler: (self: FileChooserNative, pspec: GObject.ParamSpec) => void, after?: boolean): number;
431
284
  connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
432
285
  }
@@ -151,6 +151,12 @@ import { NativeDialog } from "./native-dialog.js";
151
151
  *
152
152
  * * Shortcut folders.
153
153
  */
154
+ const SIGNAL_META = {
155
+ response: {
156
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
157
+ returnType: { type: "undefined" },
158
+ },
159
+ };
154
160
  export class FileChooserNative extends NativeDialog {
155
161
  constructor(...args) {
156
162
  super(...args);
@@ -816,12 +822,24 @@ export class FileChooserNative extends NativeDialog {
816
822
  ], { type: "undefined" });
817
823
  }
818
824
  connect(signal, handler, after = false) {
825
+ const meta = SIGNAL_META[signal];
819
826
  const selfType = { type: "gobject", borrowed: true };
820
- const argTypes = [selfType];
821
- const returnType = undefined;
827
+ const argTypes = meta
828
+ ? [selfType, ...meta.params.map((m) => m.type)]
829
+ : [selfType];
830
+ const returnType = meta?.returnType;
822
831
  const wrappedHandler = (...args) => {
823
832
  const self = getObject(args[0], FileChooserNative);
824
- return handler(self, ...args.slice(1));
833
+ const signalArgs = args.slice(1);
834
+ if (!meta)
835
+ return handler(self, ...signalArgs);
836
+ const wrapped = meta.params.map((m, i) => {
837
+ if (m.getCls && signalArgs[i] != null) {
838
+ return getObject(signalArgs[i], m.getCls());
839
+ }
840
+ return signalArgs[i];
841
+ });
842
+ return handler(self, ...wrapped);
825
843
  };
826
844
  return call("libgtk-4.so.1", "g_signal_connect_closure", [
827
845
  { type: { type: "gobject" }, value: this.ptr },
@@ -1,5 +1,6 @@
1
- import { FileChooserAction } from "./enums.js";
1
+ import { DirectionType, FileChooserAction, StateFlags, TextDirection } from "./enums.js";
2
2
  import { FileFilter } from "./file-filter.js";
3
+ import { Tooltip } from "./tooltip.js";
3
4
  import * as GObject from "../gobject/index.js";
4
5
  import * as Gio from "../gio/index.js";
5
6
  import { Widget } from "./widget.js";
@@ -258,6 +259,19 @@ export declare class FileChooserWidget extends Widget {
258
259
  connect(signal: "search-shortcut", handler: (self: FileChooserWidget) => void, after?: boolean): number;
259
260
  connect(signal: "show-hidden", handler: (self: FileChooserWidget) => void, after?: boolean): number;
260
261
  connect(signal: "up-folder", handler: (self: FileChooserWidget) => void, after?: boolean): number;
262
+ connect(signal: "destroy", handler: (self: FileChooserWidget) => void, after?: boolean): number;
263
+ connect(signal: "direction-changed", handler: (self: FileChooserWidget, previousDirection: TextDirection) => void, after?: boolean): number;
264
+ connect(signal: "hide", handler: (self: FileChooserWidget) => void, after?: boolean): number;
265
+ connect(signal: "keynav-failed", handler: (self: FileChooserWidget, direction: DirectionType) => boolean, after?: boolean): number;
266
+ connect(signal: "map", handler: (self: FileChooserWidget) => void, after?: boolean): number;
267
+ connect(signal: "mnemonic-activate", handler: (self: FileChooserWidget, groupCycling: boolean) => boolean, after?: boolean): number;
268
+ connect(signal: "move-focus", handler: (self: FileChooserWidget, direction: DirectionType) => void, after?: boolean): number;
269
+ connect(signal: "query-tooltip", handler: (self: FileChooserWidget, x: number, y: number, keyboardMode: boolean, tooltip: Tooltip) => boolean, after?: boolean): number;
270
+ connect(signal: "realize", handler: (self: FileChooserWidget) => void, after?: boolean): number;
271
+ connect(signal: "show", handler: (self: FileChooserWidget) => void, after?: boolean): number;
272
+ connect(signal: "state-flags-changed", handler: (self: FileChooserWidget, flags: StateFlags) => void, after?: boolean): number;
273
+ connect(signal: "unmap", handler: (self: FileChooserWidget) => void, after?: boolean): number;
274
+ connect(signal: "unrealize", handler: (self: FileChooserWidget) => void, after?: boolean): number;
261
275
  connect(signal: "notify", handler: (self: FileChooserWidget, pspec: GObject.ParamSpec) => void, after?: boolean): number;
262
276
  connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
263
277
  }
@@ -1,6 +1,7 @@
1
1
  import { call } from "@gtkx/native";
2
2
  import { NativeError, getObject } from "@gtkx/ffi";
3
3
  import { FileFilter } from "./file-filter.js";
4
+ import { Tooltip } from "./tooltip.js";
4
5
  import * as Gio from "../gio/index.js";
5
6
  import { Widget } from "./widget.js";
6
7
  /**
@@ -54,6 +55,42 @@ const SIGNAL_META = {
54
55
  "search-shortcut": { params: [], returnType: { type: "undefined" } },
55
56
  "show-hidden": { params: [], returnType: { type: "undefined" } },
56
57
  "up-folder": { params: [], returnType: { type: "undefined" } },
58
+ destroy: { params: [], returnType: { type: "undefined" } },
59
+ "direction-changed": {
60
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
61
+ returnType: { type: "undefined" },
62
+ },
63
+ hide: { params: [], returnType: { type: "undefined" } },
64
+ "keynav-failed": {
65
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
66
+ returnType: { type: "boolean" },
67
+ },
68
+ map: { params: [], returnType: { type: "undefined" } },
69
+ "mnemonic-activate": {
70
+ params: [{ type: { type: "boolean" } }],
71
+ returnType: { type: "boolean" },
72
+ },
73
+ "move-focus": {
74
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
75
+ returnType: { type: "undefined" },
76
+ },
77
+ "query-tooltip": {
78
+ params: [
79
+ { type: { type: "int", size: 32, unsigned: false } },
80
+ { type: { type: "int", size: 32, unsigned: false } },
81
+ { type: { type: "boolean" } },
82
+ { type: { type: "gobject", borrowed: true }, getCls: () => Tooltip },
83
+ ],
84
+ returnType: { type: "boolean" },
85
+ },
86
+ realize: { params: [], returnType: { type: "undefined" } },
87
+ show: { params: [], returnType: { type: "undefined" } },
88
+ "state-flags-changed": {
89
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
90
+ returnType: { type: "undefined" },
91
+ },
92
+ unmap: { params: [], returnType: { type: "undefined" } },
93
+ unrealize: { params: [], returnType: { type: "undefined" } },
57
94
  };
58
95
  export class FileChooserWidget extends Widget {
59
96
  constructor(...args) {
@@ -1,54 +1,7 @@
1
+ import { FilterChange } from "./enums.js";
1
2
  import * as GLib from "../glib/index.js";
2
3
  import * as GObject from "../gobject/index.js";
3
4
  import { Filter } from "./filter.js";
4
- /**
5
- * Filters files by name or mime type.
6
- *
7
- * `GtkFileFilter` can be used to restrict the files being shown in a
8
- * file chooser. Files can be filtered based on their name (with
9
- * [method@Gtk.FileFilter.add_pattern] or [method@Gtk.FileFilter.add_suffix])
10
- * or on their mime type (with [method@Gtk.FileFilter.add_mime_type]).
11
- *
12
- * Filtering by mime types handles aliasing and subclassing of mime
13
- * types; e.g. a filter for text/plain also matches a file with mime
14
- * type application/rtf, since application/rtf is a subclass of
15
- * text/plain. Note that `GtkFileFilter` allows wildcards for the
16
- * subtype of a mime type, so you can e.g. filter for image/\*.
17
- *
18
- * Normally, file filters are used by adding them to a file chooser
19
- * (see [method@Gtk.FileDialog.set_filters]), but it is also possible to
20
- * manually use a file filter on any [class@Gtk.FilterListModel] containing
21
- * `GFileInfo` objects.
22
- *
23
- * # GtkFileFilter as GtkBuildable
24
- *
25
- * The `GtkFileFilter` implementation of the `GtkBuildable` interface
26
- * supports adding rules using the `<mime-types>` and `<patterns>` and
27
- * `<suffixes>` elements and listing the rules within. Specifying a
28
- * `<mime-type>` or `<pattern>` or `<suffix>` has the same effect as
29
- * as calling
30
- * [method@Gtk.FileFilter.add_mime_type] or
31
- * [method@Gtk.FileFilter.add_pattern] or
32
- * [method@Gtk.FileFilter.add_suffix].
33
- *
34
- * An example of a UI definition fragment specifying `GtkFileFilter`
35
- * rules:
36
- * ```xml
37
- * <object class="GtkFileFilter">
38
- * <property name="name" translatable="yes">Text and Images</property>
39
- * <mime-types>
40
- * <mime-type>text/plain</mime-type>
41
- * <mime-type>image/ *</mime-type>
42
- * </mime-types>
43
- * <patterns>
44
- * <pattern>*.txt</pattern>
45
- * </patterns>
46
- * <suffixes>
47
- * <suffix>png</suffix>
48
- * </suffixes>
49
- * </object>
50
- * ```
51
- */
52
5
  export declare class FileFilter extends Filter {
53
6
  /**
54
7
  * Creates a new `GtkFileFilter` with no rules added to it.
@@ -147,6 +100,7 @@ export declare class FileFilter extends Filter {
147
100
  * of the `<object>` tag used to construct the @buildable.
148
101
  */
149
102
  getBuildableId(): string | null;
103
+ connect(signal: "changed", handler: (self: FileFilter, change: FilterChange) => void, after?: boolean): number;
150
104
  connect(signal: "notify", handler: (self: FileFilter, pspec: GObject.ParamSpec) => void, after?: boolean): number;
151
105
  connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
152
106
  }
@@ -50,6 +50,12 @@ import { Filter } from "./filter.js";
50
50
  * </object>
51
51
  * ```
52
52
  */
53
+ const SIGNAL_META = {
54
+ changed: {
55
+ params: [{ type: { type: "int", size: 32, unsigned: false } }],
56
+ returnType: { type: "undefined" },
57
+ },
58
+ };
53
59
  export class FileFilter extends Filter {
54
60
  /**
55
61
  * Creates a new `GtkFileFilter` with no rules added to it.
@@ -255,12 +261,24 @@ export class FileFilter extends Filter {
255
261
  ], { type: "string", borrowed: true });
256
262
  }
257
263
  connect(signal, handler, after = false) {
264
+ const meta = SIGNAL_META[signal];
258
265
  const selfType = { type: "gobject", borrowed: true };
259
- const argTypes = [selfType];
260
- const returnType = undefined;
266
+ const argTypes = meta
267
+ ? [selfType, ...meta.params.map((m) => m.type)]
268
+ : [selfType];
269
+ const returnType = meta?.returnType;
261
270
  const wrappedHandler = (...args) => {
262
271
  const self = getObject(args[0], FileFilter);
263
- return handler(self, ...args.slice(1));
272
+ const signalArgs = args.slice(1);
273
+ if (!meta)
274
+ return handler(self, ...signalArgs);
275
+ const wrapped = meta.params.map((m, i) => {
276
+ if (m.getCls && signalArgs[i] != null) {
277
+ return getObject(signalArgs[i], m.getCls());
278
+ }
279
+ return signalArgs[i];
280
+ });
281
+ return handler(self, ...wrapped);
264
282
  };
265
283
  return call("libgtk-4.so.1", "g_signal_connect_closure", [
266
284
  { type: { type: "gobject" }, value: this.ptr },