@gtkx/ffi 0.1.47 → 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 +8 -0
  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
@@ -6,6 +6,16 @@ import { MenuModel } from "./menu-model.js";
6
6
  * used as a proxy for a menu model that is exported over D-Bus with
7
7
  * [method@Gio.DBusConnection.export_menu_model].
8
8
  */
9
+ const SIGNAL_META = {
10
+ "items-changed": {
11
+ params: [
12
+ { type: { type: "int", size: 32, unsigned: false } },
13
+ { type: { type: "int", size: 32, unsigned: false } },
14
+ { type: { type: "int", size: 32, unsigned: false } },
15
+ ],
16
+ returnType: { type: "undefined" },
17
+ },
18
+ };
9
19
  export class DBusMenuModel extends MenuModel {
10
20
  constructor(...args) {
11
21
  super(...args);
@@ -53,12 +63,24 @@ export class DBusMenuModel extends MenuModel {
53
63
  return getObject(ptr, DBusMenuModel);
54
64
  }
55
65
  connect(signal, handler, after = false) {
66
+ const meta = SIGNAL_META[signal];
56
67
  const selfType = { type: "gobject", borrowed: true };
57
- const argTypes = [selfType];
58
- const returnType = undefined;
68
+ const argTypes = meta
69
+ ? [selfType, ...meta.params.map((m) => m.type)]
70
+ : [selfType];
71
+ const returnType = meta?.returnType;
59
72
  const wrappedHandler = (...args) => {
60
73
  const self = getObject(args[0], DBusMenuModel);
61
- return handler(self, ...args.slice(1));
74
+ const signalArgs = args.slice(1);
75
+ if (!meta)
76
+ return handler(self, ...signalArgs);
77
+ const wrapped = meta.params.map((m, i) => {
78
+ if (m.getCls && signalArgs[i] != null) {
79
+ return getObject(signalArgs[i], m.getCls());
80
+ }
81
+ return signalArgs[i];
82
+ });
83
+ return handler(self, ...wrapped);
62
84
  };
63
85
  return call("libgio-2.0.so.0", "g_signal_connect_closure", [
64
86
  { type: { type: "gobject" }, value: this.ptr },
@@ -2,6 +2,7 @@ import { AsyncResult } from "./async-result.js";
2
2
  import { Cancellable } from "./cancellable.js";
3
3
  import { FileInfo } from "./file-info.js";
4
4
  import * as GLib from "../glib/index.js";
5
+ import * as GObject from "../gobject/index.js";
5
6
  import { InputStream } from "./input-stream.js";
6
7
  /**
7
8
  * `GFileInputStream` provides input streams that take their
@@ -98,4 +99,6 @@ export declare class FileInputStream extends InputStream {
98
99
  * @param cancellable - optional #GCancellable object, %NULL to ignore.
99
100
  */
100
101
  truncate(offset: number, cancellable?: Cancellable | null): boolean;
102
+ connect(signal: "notify", handler: (self: FileInputStream, pspec: GObject.ParamSpec) => void, after?: boolean): number;
103
+ connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
101
104
  }
@@ -287,4 +287,22 @@ export class FileInputStream extends InputStream {
287
287
  }
288
288
  return result;
289
289
  }
290
+ connect(signal, handler, after = false) {
291
+ const selfType = { type: "gobject", borrowed: true };
292
+ const argTypes = [selfType];
293
+ const returnType = undefined;
294
+ const wrappedHandler = (...args) => {
295
+ const self = getObject(args[0], FileInputStream);
296
+ return handler(self, ...args.slice(1));
297
+ };
298
+ return call("libgio-2.0.so.0", "g_signal_connect_closure", [
299
+ { type: { type: "gobject" }, value: this.ptr },
300
+ { type: { type: "string" }, value: signal },
301
+ {
302
+ type: { type: "callback", argTypes, returnType },
303
+ value: wrappedHandler,
304
+ },
305
+ { type: { type: "boolean" }, value: after },
306
+ ], { type: "int", size: 64, unsigned: true });
307
+ }
290
308
  }
@@ -2,6 +2,7 @@ import { AsyncResult } from "./async-result.js";
2
2
  import { Cancellable } from "./cancellable.js";
3
3
  import { FileInfo } from "./file-info.js";
4
4
  import * as GLib from "../glib/index.js";
5
+ import * as GObject from "../gobject/index.js";
5
6
  import { IOStream } from "./iostream.js";
6
7
  /**
7
8
  * `GFileIOStream` provides I/O streams that both read and write to the same
@@ -122,4 +123,6 @@ export declare class FileIOStream extends IOStream {
122
123
  * @param cancellable - optional #GCancellable object, %NULL to ignore.
123
124
  */
124
125
  truncate(offset: number, cancellable?: Cancellable | null): boolean;
126
+ connect(signal: "notify", handler: (self: FileIOStream, pspec: GObject.ParamSpec) => void, after?: boolean): number;
127
+ connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
125
128
  }
@@ -318,4 +318,22 @@ export class FileIOStream extends IOStream {
318
318
  }
319
319
  return result;
320
320
  }
321
+ connect(signal, handler, after = false) {
322
+ const selfType = { type: "gobject", borrowed: true };
323
+ const argTypes = [selfType];
324
+ const returnType = undefined;
325
+ const wrappedHandler = (...args) => {
326
+ const self = getObject(args[0], FileIOStream);
327
+ return handler(self, ...args.slice(1));
328
+ };
329
+ return call("libgio-2.0.so.0", "g_signal_connect_closure", [
330
+ { type: { type: "gobject" }, value: this.ptr },
331
+ { type: { type: "string" }, value: signal },
332
+ {
333
+ type: { type: "callback", argTypes, returnType },
334
+ value: wrappedHandler,
335
+ },
336
+ { type: { type: "boolean" }, value: after },
337
+ ], { type: "int", size: 64, unsigned: true });
338
+ }
321
339
  }
@@ -2,6 +2,7 @@ import { AsyncResult } from "./async-result.js";
2
2
  import { Cancellable } from "./cancellable.js";
3
3
  import { FileInfo } from "./file-info.js";
4
4
  import * as GLib from "../glib/index.js";
5
+ import * as GObject from "../gobject/index.js";
5
6
  import { OutputStream } from "./output-stream.js";
6
7
  /**
7
8
  * `GFileOutputStream` provides output streams that write their
@@ -117,4 +118,6 @@ export declare class FileOutputStream extends OutputStream {
117
118
  * @param cancellable - optional #GCancellable object, %NULL to ignore.
118
119
  */
119
120
  truncate(offset: number, cancellable?: Cancellable | null): boolean;
121
+ connect(signal: "notify", handler: (self: FileOutputStream, pspec: GObject.ParamSpec) => void, after?: boolean): number;
122
+ connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
120
123
  }
@@ -313,4 +313,22 @@ export class FileOutputStream extends OutputStream {
313
313
  }
314
314
  return result;
315
315
  }
316
+ connect(signal, handler, after = false) {
317
+ const selfType = { type: "gobject", borrowed: true };
318
+ const argTypes = [selfType];
319
+ const returnType = undefined;
320
+ const wrappedHandler = (...args) => {
321
+ const self = getObject(args[0], FileOutputStream);
322
+ return handler(self, ...args.slice(1));
323
+ };
324
+ return call("libgio-2.0.so.0", "g_signal_connect_closure", [
325
+ { type: { type: "gobject" }, value: this.ptr },
326
+ { type: { type: "string" }, value: signal },
327
+ {
328
+ type: { type: "callback", argTypes, returnType },
329
+ value: wrappedHandler,
330
+ },
331
+ { type: { type: "boolean" }, value: after },
332
+ ], { type: "int", size: 64, unsigned: true });
333
+ }
316
334
  }
@@ -1,3 +1,4 @@
1
+ import * as GObject from "../gobject/index.js";
1
2
  import { InputStream } from "./input-stream.js";
2
3
  /**
3
4
  * Base class for input stream implementations that perform some
@@ -22,4 +23,6 @@ export declare class FilterInputStream extends InputStream {
22
23
  * @param closeBase - %TRUE to close the base stream.
23
24
  */
24
25
  setCloseBaseStream(closeBase: boolean): void;
26
+ connect(signal: "notify", handler: (self: FilterInputStream, pspec: GObject.ParamSpec) => void, after?: boolean): number;
27
+ connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
25
28
  }
@@ -62,4 +62,22 @@ export class FilterInputStream extends InputStream {
62
62
  },
63
63
  ], { type: "undefined" });
64
64
  }
65
+ connect(signal, handler, after = false) {
66
+ const selfType = { type: "gobject", borrowed: true };
67
+ const argTypes = [selfType];
68
+ const returnType = undefined;
69
+ const wrappedHandler = (...args) => {
70
+ const self = getObject(args[0], FilterInputStream);
71
+ return handler(self, ...args.slice(1));
72
+ };
73
+ return call("libgio-2.0.so.0", "g_signal_connect_closure", [
74
+ { type: { type: "gobject" }, value: this.ptr },
75
+ { type: { type: "string" }, value: signal },
76
+ {
77
+ type: { type: "callback", argTypes, returnType },
78
+ value: wrappedHandler,
79
+ },
80
+ { type: { type: "boolean" }, value: after },
81
+ ], { type: "int", size: 64, unsigned: true });
82
+ }
65
83
  }
@@ -1,3 +1,4 @@
1
+ import * as GObject from "../gobject/index.js";
1
2
  import { OutputStream } from "./output-stream.js";
2
3
  /**
3
4
  * Base class for output stream implementations that perform some
@@ -22,4 +23,6 @@ export declare class FilterOutputStream extends OutputStream {
22
23
  * @param closeBase - `TRUE` to close the base stream.
23
24
  */
24
25
  setCloseBaseStream(closeBase: boolean): void;
26
+ connect(signal: "notify", handler: (self: FilterOutputStream, pspec: GObject.ParamSpec) => void, after?: boolean): number;
27
+ connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
25
28
  }
@@ -58,4 +58,22 @@ export class FilterOutputStream extends OutputStream {
58
58
  },
59
59
  ], { type: "undefined" });
60
60
  }
61
+ connect(signal, handler, after = false) {
62
+ const selfType = { type: "gobject", borrowed: true };
63
+ const argTypes = [selfType];
64
+ const returnType = undefined;
65
+ const wrappedHandler = (...args) => {
66
+ const self = getObject(args[0], FilterOutputStream);
67
+ return handler(self, ...args.slice(1));
68
+ };
69
+ return call("libgio-2.0.so.0", "g_signal_connect_closure", [
70
+ { type: { type: "gobject" }, value: this.ptr },
71
+ { type: { type: "string" }, value: signal },
72
+ {
73
+ type: { type: "callback", argTypes, returnType },
74
+ value: wrappedHandler,
75
+ },
76
+ { type: { type: "boolean" }, value: after },
77
+ ], { type: "int", size: 64, unsigned: true });
78
+ }
61
79
  }
@@ -1,4 +1,5 @@
1
1
  import { InetAddress } from "./inet-address.js";
2
+ import * as GObject from "../gobject/index.js";
2
3
  import { SocketAddress } from "./socket-address.js";
3
4
  /**
4
5
  * An IPv4 or IPv6 socket address. That is, the combination of a
@@ -48,4 +49,6 @@ export declare class InetSocketAddress extends SocketAddress {
48
49
  * If not overridden this value will be inherited from [property@Gio.InetSocketAddress:address].
49
50
  */
50
51
  getScopeId(): number;
52
+ connect(signal: "notify", handler: (self: InetSocketAddress, pspec: GObject.ParamSpec) => void, after?: boolean): number;
53
+ connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
51
54
  }
@@ -99,4 +99,22 @@ export class InetSocketAddress extends SocketAddress {
99
99
  },
100
100
  ], { type: "int", size: 32, unsigned: true });
101
101
  }
102
+ connect(signal, handler, after = false) {
103
+ const selfType = { type: "gobject", borrowed: true };
104
+ const argTypes = [selfType];
105
+ const returnType = undefined;
106
+ const wrappedHandler = (...args) => {
107
+ const self = getObject(args[0], InetSocketAddress);
108
+ return handler(self, ...args.slice(1));
109
+ };
110
+ return call("libgio-2.0.so.0", "g_signal_connect_closure", [
111
+ { type: { type: "gobject" }, value: this.ptr },
112
+ { type: { type: "string" }, value: signal },
113
+ {
114
+ type: { type: "callback", argTypes, returnType },
115
+ value: wrappedHandler,
116
+ },
117
+ { type: { type: "boolean" }, value: after },
118
+ ], { type: "int", size: 64, unsigned: true });
119
+ }
102
120
  }
@@ -88,7 +88,7 @@ export declare class ListStore extends GObject.GObject {
88
88
  * @param compareFunc - pairwise comparison function for sorting
89
89
  * @param userData - user data for @compare_func
90
90
  */
91
- insertSorted(item: GObject.GObject, compareFunc: (...args: unknown[]) => unknown, userData?: number | null): number;
91
+ insertSorted(item: GObject.GObject, compareFunc: (a: unknown, b: unknown) => number): number;
92
92
  /**
93
93
  * Removes the item from `store` that is at @position. `position` must be
94
94
  * smaller than the current length of the list.
@@ -107,7 +107,7 @@ export declare class ListStore extends GObject.GObject {
107
107
  * @param compareFunc - pairwise comparison function for sorting
108
108
  * @param userData - user data for @compare_func
109
109
  */
110
- sort(compareFunc: (...args: unknown[]) => unknown, userData?: number | null): void;
110
+ sort(compareFunc: (a: unknown, b: unknown) => number): void;
111
111
  /**
112
112
  * Changes `store` by removing `n_removals` items and adding `n_additions` items to it. `additions` must contain `n_additions` items of type
113
113
  * #GListStore:item-type. %NULL is not permitted.
@@ -192,7 +192,7 @@ export class ListStore extends GObject.GObject {
192
192
  * @param compareFunc - pairwise comparison function for sorting
193
193
  * @param userData - user data for @compare_func
194
194
  */
195
- insertSorted(item, compareFunc, userData) {
195
+ insertSorted(item, compareFunc) {
196
196
  return call("libgio-2.0.so.0", "g_list_store_insert_sorted", [
197
197
  {
198
198
  type: { type: "gobject" },
@@ -203,14 +203,16 @@ export class ListStore extends GObject.GObject {
203
203
  value: item?.ptr ?? item,
204
204
  },
205
205
  {
206
- type: { type: "callback" },
206
+ type: {
207
+ type: "callback",
208
+ trampoline: "compareDataFunc",
209
+ argTypes: [
210
+ { type: "gobject", borrowed: true },
211
+ { type: "gobject", borrowed: true },
212
+ ],
213
+ },
207
214
  value: compareFunc,
208
215
  },
209
- {
210
- type: { type: "int", size: 64, unsigned: true },
211
- value: userData,
212
- optional: true,
213
- },
214
216
  ], { type: "int", size: 32, unsigned: true });
215
217
  }
216
218
  /**
@@ -249,21 +251,23 @@ export class ListStore extends GObject.GObject {
249
251
  * @param compareFunc - pairwise comparison function for sorting
250
252
  * @param userData - user data for @compare_func
251
253
  */
252
- sort(compareFunc, userData) {
254
+ sort(compareFunc) {
253
255
  call("libgio-2.0.so.0", "g_list_store_sort", [
254
256
  {
255
257
  type: { type: "gobject" },
256
258
  value: this.ptr,
257
259
  },
258
260
  {
259
- type: { type: "callback" },
261
+ type: {
262
+ type: "callback",
263
+ trampoline: "compareDataFunc",
264
+ argTypes: [
265
+ { type: "gobject", borrowed: true },
266
+ { type: "gobject", borrowed: true },
267
+ ],
268
+ },
260
269
  value: compareFunc,
261
270
  },
262
- {
263
- type: { type: "int", size: 64, unsigned: true },
264
- value: userData,
265
- optional: true,
266
- },
267
271
  ], { type: "undefined" });
268
272
  }
269
273
  /**
@@ -1,6 +1,7 @@
1
1
  import { Ref } from "@gtkx/native";
2
2
  import { Cancellable } from "./cancellable.js";
3
3
  import * as GLib from "../glib/index.js";
4
+ import * as GObject from "../gobject/index.js";
4
5
  import { InputStream } from "./input-stream.js";
5
6
  /**
6
7
  * `GMemoryInputStream` is a class for using arbitrary
@@ -145,4 +146,6 @@ export declare class MemoryInputStream extends InputStream {
145
146
  * @param cancellable - optional #GCancellable object, %NULL to ignore.
146
147
  */
147
148
  truncate(offset: number, cancellable?: Cancellable | null): boolean;
149
+ connect(signal: "notify", handler: (self: MemoryInputStream, pspec: GObject.ParamSpec) => void, after?: boolean): number;
150
+ connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
148
151
  }
@@ -387,4 +387,22 @@ export class MemoryInputStream extends InputStream {
387
387
  }
388
388
  return result;
389
389
  }
390
+ connect(signal, handler, after = false) {
391
+ const selfType = { type: "gobject", borrowed: true };
392
+ const argTypes = [selfType];
393
+ const returnType = undefined;
394
+ const wrappedHandler = (...args) => {
395
+ const self = getObject(args[0], MemoryInputStream);
396
+ return handler(self, ...args.slice(1));
397
+ };
398
+ return call("libgio-2.0.so.0", "g_signal_connect_closure", [
399
+ { type: { type: "gobject" }, value: this.ptr },
400
+ { type: { type: "string" }, value: signal },
401
+ {
402
+ type: { type: "callback", argTypes, returnType },
403
+ value: wrappedHandler,
404
+ },
405
+ { type: { type: "boolean" }, value: after },
406
+ ], { type: "int", size: 64, unsigned: true });
407
+ }
390
408
  }
@@ -2,6 +2,7 @@ import { Ref } from "@gtkx/native";
2
2
  import { PollableReturn } from "./enums.js";
3
3
  import { Cancellable } from "./cancellable.js";
4
4
  import * as GLib from "../glib/index.js";
5
+ import * as GObject from "../gobject/index.js";
5
6
  import { OutputStream } from "./output-stream.js";
6
7
  /**
7
8
  * `GMemoryOutputStream` is a class for using arbitrary
@@ -197,4 +198,6 @@ export declare class MemoryOutputStream extends OutputStream {
197
198
  * @param cancellable - optional #GCancellable object, %NULL to ignore.
198
199
  */
199
200
  truncate(offset: number, cancellable?: Cancellable | null): boolean;
201
+ connect(signal: "notify", handler: (self: MemoryOutputStream, pspec: GObject.ParamSpec) => void, after?: boolean): number;
202
+ connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
200
203
  }
@@ -451,4 +451,22 @@ export class MemoryOutputStream extends OutputStream {
451
451
  }
452
452
  return result;
453
453
  }
454
+ connect(signal, handler, after = false) {
455
+ const selfType = { type: "gobject", borrowed: true };
456
+ const argTypes = [selfType];
457
+ const returnType = undefined;
458
+ const wrappedHandler = (...args) => {
459
+ const self = getObject(args[0], MemoryOutputStream);
460
+ return handler(self, ...args.slice(1));
461
+ };
462
+ return call("libgio-2.0.so.0", "g_signal_connect_closure", [
463
+ { type: { type: "gobject" }, value: this.ptr },
464
+ { type: { type: "string" }, value: signal },
465
+ {
466
+ type: { type: "callback", argTypes, returnType },
467
+ value: wrappedHandler,
468
+ },
469
+ { type: { type: "boolean" }, value: after },
470
+ ], { type: "int", size: 64, unsigned: true });
471
+ }
454
472
  }
@@ -1,16 +1,6 @@
1
1
  import { MenuItem } from "./menu-item.js";
2
2
  import * as GObject from "../gobject/index.js";
3
3
  import { MenuModel } from "./menu-model.js";
4
- /**
5
- * `GMenu` is a simple implementation of [class@Gio.MenuModel].
6
- * You populate a `GMenu` by adding [class@Gio.MenuItem] instances to it.
7
- *
8
- * There are some convenience functions to allow you to directly
9
- * add items (avoiding [class@Gio.MenuItem]) for the common cases. To add
10
- * a regular item, use [method@Gio.Menu.insert]. To add a section, use
11
- * [method@Gio.Menu.insert_section]. To add a submenu, use
12
- * [method@Gio.Menu.insert_submenu].
13
- */
14
4
  export declare class Menu extends MenuModel {
15
5
  /**
16
6
  * Creates a new #GMenu.
@@ -159,6 +149,7 @@ export declare class Menu extends MenuModel {
159
149
  * Removes all items in the menu.
160
150
  */
161
151
  removeAll(): void;
152
+ connect(signal: "items-changed", handler: (self: Menu, position: number, removed: number, added: number) => void, after?: boolean): number;
162
153
  connect(signal: "notify", handler: (self: Menu, pspec: GObject.ParamSpec) => void, after?: boolean): number;
163
154
  connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
164
155
  }
@@ -11,6 +11,16 @@ import { MenuModel } from "./menu-model.js";
11
11
  * [method@Gio.Menu.insert_section]. To add a submenu, use
12
12
  * [method@Gio.Menu.insert_submenu].
13
13
  */
14
+ const SIGNAL_META = {
15
+ "items-changed": {
16
+ params: [
17
+ { type: { type: "int", size: 32, unsigned: false } },
18
+ { type: { type: "int", size: 32, unsigned: false } },
19
+ { type: { type: "int", size: 32, unsigned: false } },
20
+ ],
21
+ returnType: { type: "undefined" },
22
+ },
23
+ };
14
24
  export class Menu extends MenuModel {
15
25
  /**
16
26
  * Creates a new #GMenu.
@@ -388,12 +398,24 @@ export class Menu extends MenuModel {
388
398
  ], { type: "undefined" });
389
399
  }
390
400
  connect(signal, handler, after = false) {
401
+ const meta = SIGNAL_META[signal];
391
402
  const selfType = { type: "gobject", borrowed: true };
392
- const argTypes = [selfType];
393
- const returnType = undefined;
403
+ const argTypes = meta
404
+ ? [selfType, ...meta.params.map((m) => m.type)]
405
+ : [selfType];
406
+ const returnType = meta?.returnType;
394
407
  const wrappedHandler = (...args) => {
395
408
  const self = getObject(args[0], Menu);
396
- return handler(self, ...args.slice(1));
409
+ const signalArgs = args.slice(1);
410
+ if (!meta)
411
+ return handler(self, ...signalArgs);
412
+ const wrapped = meta.params.map((m, i) => {
413
+ if (m.getCls && signalArgs[i] != null) {
414
+ return getObject(signalArgs[i], m.getCls());
415
+ }
416
+ return signalArgs[i];
417
+ });
418
+ return handler(self, ...wrapped);
397
419
  };
398
420
  return call("libgio-2.0.so.0", "g_signal_connect_closure", [
399
421
  { type: { type: "gobject" }, value: this.ptr },
@@ -1,3 +1,4 @@
1
+ import * as GObject from "../gobject/index.js";
1
2
  import { SocketAddress } from "./socket-address.js";
2
3
  /**
3
4
  * A socket address of some unknown native type.
@@ -14,4 +15,6 @@ export declare class NativeSocketAddress extends SocketAddress {
14
15
  constructor(len: number, native?: number | null);
15
16
  constructor(...args: unknown[]);
16
17
  protected createPtr(args: unknown[]): unknown;
18
+ connect(signal: "notify", handler: (self: NativeSocketAddress, pspec: GObject.ParamSpec) => void, after?: boolean): number;
19
+ connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
17
20
  }
@@ -1,4 +1,5 @@
1
1
  import { call } from "@gtkx/native";
2
+ import { getObject } from "@gtkx/ffi";
2
3
  import { SocketAddress } from "./socket-address.js";
3
4
  /**
4
5
  * A socket address of some unknown native type.
@@ -24,4 +25,22 @@ export class NativeSocketAddress extends SocketAddress {
24
25
  },
25
26
  ], { type: "gobject", borrowed: false });
26
27
  }
28
+ connect(signal, handler, after = false) {
29
+ const selfType = { type: "gobject", borrowed: true };
30
+ const argTypes = [selfType];
31
+ const returnType = undefined;
32
+ const wrappedHandler = (...args) => {
33
+ const self = getObject(args[0], NativeSocketAddress);
34
+ return handler(self, ...args.slice(1));
35
+ };
36
+ return call("libgio-2.0.so.0", "g_signal_connect_closure", [
37
+ { type: { type: "gobject" }, value: this.ptr },
38
+ { type: { type: "string" }, value: signal },
39
+ {
40
+ type: { type: "callback", argTypes, returnType },
41
+ value: wrappedHandler,
42
+ },
43
+ { type: { type: "boolean" }, value: after },
44
+ ], { type: "int", size: 64, unsigned: true });
45
+ }
27
46
  }
@@ -1,8 +1,23 @@
1
+ import { Drive } from "./drive.js";
2
+ import { Mount } from "./mount.js";
3
+ import { Volume } from "./volume.js";
1
4
  import * as GObject from "../gobject/index.js";
2
5
  import { VolumeMonitor } from "./volume-monitor.js";
3
6
  export declare class NativeVolumeMonitor extends VolumeMonitor {
4
7
  constructor(...args: unknown[]);
5
8
  protected createPtr(_args: unknown[]): unknown;
9
+ connect(signal: "drive-changed", handler: (self: NativeVolumeMonitor, drive: Drive) => void, after?: boolean): number;
10
+ connect(signal: "drive-connected", handler: (self: NativeVolumeMonitor, drive: Drive) => void, after?: boolean): number;
11
+ connect(signal: "drive-disconnected", handler: (self: NativeVolumeMonitor, drive: Drive) => void, after?: boolean): number;
12
+ connect(signal: "drive-eject-button", handler: (self: NativeVolumeMonitor, drive: Drive) => void, after?: boolean): number;
13
+ connect(signal: "drive-stop-button", handler: (self: NativeVolumeMonitor, drive: Drive) => void, after?: boolean): number;
14
+ connect(signal: "mount-added", handler: (self: NativeVolumeMonitor, mount: Mount) => void, after?: boolean): number;
15
+ connect(signal: "mount-changed", handler: (self: NativeVolumeMonitor, mount: Mount) => void, after?: boolean): number;
16
+ connect(signal: "mount-pre-unmount", handler: (self: NativeVolumeMonitor, mount: Mount) => void, after?: boolean): number;
17
+ connect(signal: "mount-removed", handler: (self: NativeVolumeMonitor, mount: Mount) => void, after?: boolean): number;
18
+ connect(signal: "volume-added", handler: (self: NativeVolumeMonitor, volume: Volume) => void, after?: boolean): number;
19
+ connect(signal: "volume-changed", handler: (self: NativeVolumeMonitor, volume: Volume) => void, after?: boolean): number;
20
+ connect(signal: "volume-removed", handler: (self: NativeVolumeMonitor, volume: Volume) => void, after?: boolean): number;
6
21
  connect(signal: "notify", handler: (self: NativeVolumeMonitor, pspec: GObject.ParamSpec) => void, after?: boolean): number;
7
22
  connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
8
23
  }
@@ -1,6 +1,56 @@
1
1
  import { call } from "@gtkx/native";
2
2
  import { getObject } from "@gtkx/ffi";
3
3
  import { VolumeMonitor } from "./volume-monitor.js";
4
+ const SIGNAL_META = {
5
+ "drive-changed": {
6
+ params: [{ type: { type: "gobject", borrowed: true } }],
7
+ returnType: { type: "undefined" },
8
+ },
9
+ "drive-connected": {
10
+ params: [{ type: { type: "gobject", borrowed: true } }],
11
+ returnType: { type: "undefined" },
12
+ },
13
+ "drive-disconnected": {
14
+ params: [{ type: { type: "gobject", borrowed: true } }],
15
+ returnType: { type: "undefined" },
16
+ },
17
+ "drive-eject-button": {
18
+ params: [{ type: { type: "gobject", borrowed: true } }],
19
+ returnType: { type: "undefined" },
20
+ },
21
+ "drive-stop-button": {
22
+ params: [{ type: { type: "gobject", borrowed: true } }],
23
+ returnType: { type: "undefined" },
24
+ },
25
+ "mount-added": {
26
+ params: [{ type: { type: "gobject", borrowed: true } }],
27
+ returnType: { type: "undefined" },
28
+ },
29
+ "mount-changed": {
30
+ params: [{ type: { type: "gobject", borrowed: true } }],
31
+ returnType: { type: "undefined" },
32
+ },
33
+ "mount-pre-unmount": {
34
+ params: [{ type: { type: "gobject", borrowed: true } }],
35
+ returnType: { type: "undefined" },
36
+ },
37
+ "mount-removed": {
38
+ params: [{ type: { type: "gobject", borrowed: true } }],
39
+ returnType: { type: "undefined" },
40
+ },
41
+ "volume-added": {
42
+ params: [{ type: { type: "gobject", borrowed: true } }],
43
+ returnType: { type: "undefined" },
44
+ },
45
+ "volume-changed": {
46
+ params: [{ type: { type: "gobject", borrowed: true } }],
47
+ returnType: { type: "undefined" },
48
+ },
49
+ "volume-removed": {
50
+ params: [{ type: { type: "gobject", borrowed: true } }],
51
+ returnType: { type: "undefined" },
52
+ },
53
+ };
4
54
  export class NativeVolumeMonitor extends VolumeMonitor {
5
55
  constructor(...args) {
6
56
  super(...args);
@@ -13,12 +63,24 @@ export class NativeVolumeMonitor extends VolumeMonitor {
13
63
  ], { type: "gobject", borrowed: true });
14
64
  }
15
65
  connect(signal, handler, after = false) {
66
+ const meta = SIGNAL_META[signal];
16
67
  const selfType = { type: "gobject", borrowed: true };
17
- const argTypes = [selfType];
18
- const returnType = undefined;
68
+ const argTypes = meta
69
+ ? [selfType, ...meta.params.map((m) => m.type)]
70
+ : [selfType];
71
+ const returnType = meta?.returnType;
19
72
  const wrappedHandler = (...args) => {
20
73
  const self = getObject(args[0], NativeVolumeMonitor);
21
- return handler(self, ...args.slice(1));
74
+ const signalArgs = args.slice(1);
75
+ if (!meta)
76
+ return handler(self, ...signalArgs);
77
+ const wrapped = meta.params.map((m, i) => {
78
+ if (m.getCls && signalArgs[i] != null) {
79
+ return getObject(signalArgs[i], m.getCls());
80
+ }
81
+ return signalArgs[i];
82
+ });
83
+ return handler(self, ...wrapped);
22
84
  };
23
85
  return call("libgio-2.0.so.0", "g_signal_connect_closure", [
24
86
  { type: { type: "gobject" }, value: this.ptr },