@gtkx/ffi 0.8.0 → 0.9.0
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.
- package/dist/cairo/cairo.js +1 -1
- package/dist/codegen/ffi-generator.js +37 -12
- package/dist/generated/adw/index.d.ts +0 -1
- package/dist/generated/adw/index.js +0 -1
- package/dist/generated/adw/preferences-group.d.ts +0 -11
- package/dist/generated/adw/preferences-group.js +0 -36
- package/dist/generated/atspi/device.d.ts +0 -15
- package/dist/generated/atspi/device.js +0 -65
- package/dist/generated/atspi/functions.d.ts +4 -14
- package/dist/generated/atspi/functions.js +0 -48
- package/dist/generated/atspi/index.d.ts +0 -2
- package/dist/generated/atspi/index.js +0 -2
- package/dist/generated/gdk/cursor.d.ts +1 -12
- package/dist/generated/gdk/cursor.js +22 -55
- package/dist/generated/gdk/functions.d.ts +0 -26
- package/dist/generated/gdk/functions.js +0 -74
- package/dist/generated/gdk/texture.d.ts +0 -10
- package/dist/generated/gdk/texture.js +0 -36
- package/dist/generated/gdkpixbuf/pixbuf.d.ts +0 -49
- package/dist/generated/gdkpixbuf/pixbuf.js +0 -166
- package/dist/generated/gio/app-info.d.ts +0 -15
- package/dist/generated/gio/app-info.js +0 -50
- package/dist/generated/gio/async-initable.d.ts +0 -44
- package/dist/generated/gio/async-initable.js +0 -69
- package/dist/generated/gio/buffered-input-stream.d.ts +0 -14
- package/dist/generated/gio/buffered-input-stream.js +0 -44
- package/dist/generated/gio/bytes-icon.d.ts +0 -10
- package/dist/generated/gio/bytes-icon.js +0 -36
- package/dist/generated/gio/cancellable.d.ts +0 -41
- package/dist/generated/gio/cancellable.js +0 -62
- package/dist/generated/gio/data-input-stream.d.ts +0 -59
- package/dist/generated/gio/data-input-stream.js +0 -149
- package/dist/generated/gio/dbus-connection.d.ts +1 -374
- package/dist/generated/gio/dbus-connection.js +0 -761
- package/dist/generated/gio/dbus-object-manager-client.d.ts +1 -120
- package/dist/generated/gio/dbus-object-manager-client.js +0 -354
- package/dist/generated/gio/dbus-proxy.d.ts +0 -163
- package/dist/generated/gio/dbus-proxy.js +0 -379
- package/dist/generated/gio/drive.d.ts +1 -62
- package/dist/generated/gio/drive.js +0 -200
- package/dist/generated/gio/dtls-connection.d.ts +0 -29
- package/dist/generated/gio/dtls-connection.js +0 -115
- package/dist/generated/gio/file-enumerator.d.ts +0 -85
- package/dist/generated/gio/file-enumerator.js +0 -141
- package/dist/generated/gio/file-icon.d.ts +0 -10
- package/dist/generated/gio/file-icon.js +0 -36
- package/dist/generated/gio/file-input-stream.d.ts +0 -19
- package/dist/generated/gio/file-input-stream.js +0 -49
- package/dist/generated/gio/file-iostream.d.ts +0 -14
- package/dist/generated/gio/file-iostream.js +0 -44
- package/dist/generated/gio/file-output-stream.d.ts +0 -14
- package/dist/generated/gio/file-output-stream.js +0 -44
- package/dist/generated/gio/file.d.ts +1 -661
- package/dist/generated/gio/file.js +58 -1899
- package/dist/generated/gio/functions.d.ts +0 -261
- package/dist/generated/gio/functions.js +0 -666
- package/dist/generated/gio/index.d.ts +0 -2
- package/dist/generated/gio/index.js +0 -2
- package/dist/generated/gio/input-stream.d.ts +0 -127
- package/dist/generated/gio/input-stream.js +0 -293
- package/dist/generated/gio/iostream.d.ts +0 -34
- package/dist/generated/gio/iostream.js +0 -93
- package/dist/generated/gio/list-store.d.ts +0 -46
- package/dist/generated/gio/list-store.js +0 -139
- package/dist/generated/gio/loadable-icon.d.ts +0 -10
- package/dist/generated/gio/loadable-icon.js +0 -36
- package/dist/generated/gio/mount.d.ts +0 -74
- package/dist/generated/gio/mount.js +0 -243
- package/dist/generated/gio/network-monitor.d.ts +0 -16
- package/dist/generated/gio/network-monitor.js +0 -42
- package/dist/generated/gio/output-stream.d.ts +0 -200
- package/dist/generated/gio/output-stream.js +0 -469
- package/dist/generated/gio/permission.d.ts +0 -20
- package/dist/generated/gio/permission.js +0 -64
- package/dist/generated/gio/proxy-resolver.d.ts +0 -9
- package/dist/generated/gio/proxy-resolver.js +0 -35
- package/dist/generated/gio/proxy.d.ts +0 -9
- package/dist/generated/gio/proxy.js +0 -39
- package/dist/generated/gio/resolver.d.ts +0 -59
- package/dist/generated/gio/resolver.js +0 -205
- package/dist/generated/gio/settings.d.ts +0 -33
- package/dist/generated/gio/settings.js +0 -53
- package/dist/generated/gio/simple-proxy-resolver.d.ts +0 -9
- package/dist/generated/gio/simple-proxy-resolver.js +0 -35
- package/dist/generated/gio/socket-address-enumerator.d.ts +0 -10
- package/dist/generated/gio/socket-address-enumerator.js +0 -32
- package/dist/generated/gio/socket-client.d.ts +0 -57
- package/dist/generated/gio/socket-client.js +0 -173
- package/dist/generated/gio/socket-connection.d.ts +0 -17
- package/dist/generated/gio/socket-connection.js +0 -43
- package/dist/generated/gio/socket-listener.d.ts +0 -22
- package/dist/generated/gio/socket-listener.js +0 -66
- package/dist/generated/gio/subprocess.d.ts +0 -36
- package/dist/generated/gio/subprocess.js +0 -139
- package/dist/generated/gio/tls-connection.d.ts +0 -9
- package/dist/generated/gio/tls-connection.js +0 -35
- package/dist/generated/gio/tls-database.d.ts +0 -51
- package/dist/generated/gio/tls-database.js +0 -205
- package/dist/generated/gio/tls-interaction.d.ts +0 -38
- package/dist/generated/gio/tls-interaction.js +0 -94
- package/dist/generated/gio/unix-connection.d.ts +0 -26
- package/dist/generated/gio/unix-connection.js +0 -70
- package/dist/generated/gio/vfs.d.ts +0 -30
- package/dist/generated/gio/vfs.js +0 -71
- package/dist/generated/gio/volume.d.ts +0 -32
- package/dist/generated/gio/volume.js +0 -117
- package/dist/generated/giounix/desktop-app-info.d.ts +0 -58
- package/dist/generated/giounix/desktop-app-info.js +0 -226
- package/dist/generated/glib/byte-array.d.ts +0 -23
- package/dist/generated/glib/byte-array.js +0 -62
- package/dist/generated/glib/error.d.ts +0 -36
- package/dist/generated/glib/error.js +0 -82
- package/dist/generated/glib/functions.d.ts +1 -811
- package/dist/generated/glib/functions.js +55 -1787
- package/dist/generated/glib/hash-table.d.ts +0 -64
- package/dist/generated/glib/hash-table.js +0 -148
- package/dist/generated/glib/main-context.d.ts +0 -17
- package/dist/generated/glib/main-context.js +0 -37
- package/dist/generated/glib/option-group.d.ts +0 -12
- package/dist/generated/glib/option-group.js +0 -39
- package/dist/generated/glib/regex.d.ts +0 -54
- package/dist/generated/glib/regex.js +0 -107
- package/dist/generated/glib/source.d.ts +0 -27
- package/dist/generated/glib/source.js +0 -43
- package/dist/generated/glib/thread.d.ts +2 -46
- package/dist/generated/glib/thread.js +5 -50
- package/dist/generated/glib/tree.d.ts +2 -74
- package/dist/generated/glib/tree.js +4 -192
- package/dist/generated/glibunix/functions.d.ts +0 -2
- package/dist/generated/glibunix/functions.js +0 -45
- package/dist/generated/gobject/binding-group.d.ts +0 -17
- package/dist/generated/gobject/binding-group.js +0 -59
- package/dist/generated/gobject/functions.d.ts +0 -40
- package/dist/generated/gobject/functions.js +0 -95
- package/dist/generated/gobject/object.d.ts +0 -33
- package/dist/generated/gobject/object.js +0 -77
- package/dist/generated/gobject/signal-group.d.ts +0 -23
- package/dist/generated/gobject/signal-group.js +0 -70
- package/dist/generated/gobject/value-array.d.ts +0 -19
- package/dist/generated/gobject/value-array.js +0 -70
- package/dist/generated/gsk/path.d.ts +1 -41
- package/dist/generated/gsk/path.js +0 -96
- package/dist/generated/gsk/render-node.d.ts +0 -9
- package/dist/generated/gsk/render-node.js +0 -32
- package/dist/generated/gst/buffer-list.d.ts +0 -10
- package/dist/generated/gst/buffer-list.js +0 -31
- package/dist/generated/gst/buffer.d.ts +0 -10
- package/dist/generated/gst/buffer.js +0 -31
- package/dist/generated/gst/bus.d.ts +0 -43
- package/dist/generated/gst/bus.js +0 -88
- package/dist/generated/gst/caps.d.ts +0 -26
- package/dist/generated/gst/caps.js +0 -89
- package/dist/generated/gst/clock.d.ts +0 -15
- package/dist/generated/gst/clock.js +0 -35
- package/dist/generated/gst/element.d.ts +0 -49
- package/dist/generated/gst/element.js +0 -117
- package/dist/generated/gst/functions.d.ts +1 -80
- package/dist/generated/gst/functions.js +0 -234
- package/dist/generated/gst/index.d.ts +0 -1
- package/dist/generated/gst/index.js +0 -1
- package/dist/generated/gst/iterator.d.ts +0 -56
- package/dist/generated/gst/iterator.js +0 -168
- package/dist/generated/gst/pad.d.ts +1 -145
- package/dist/generated/gst/pad.js +0 -440
- package/dist/generated/gst/plugin.d.ts +0 -41
- package/dist/generated/gst/plugin.js +0 -132
- package/dist/generated/gst/promise.d.ts +0 -9
- package/dist/generated/gst/promise.js +1 -27
- package/dist/generated/gst/registry.d.ts +0 -21
- package/dist/generated/gst/registry.js +0 -73
- package/dist/generated/gst/structure.d.ts +0 -52
- package/dist/generated/gst/structure.js +0 -178
- package/dist/generated/gst/tag-list.d.ts +0 -7
- package/dist/generated/gst/tag-list.js +0 -28
- package/dist/generated/gst/task-pool.d.ts +0 -6
- package/dist/generated/gst/task-pool.js +0 -38
- package/dist/generated/gst/type-find.d.ts +0 -15
- package/dist/generated/gst/type-find.js +0 -58
- package/dist/generated/gstbase/collect-pads.d.ts +0 -108
- package/dist/generated/gstbase/collect-pads.js +0 -243
- package/dist/generated/gstbase/functions.d.ts +0 -45
- package/dist/generated/gstbase/functions.js +0 -132
- package/dist/generated/gtk/assistant.d.ts +0 -13
- package/dist/generated/gtk/assistant.js +0 -34
- package/dist/generated/gtk/builder-cscope.d.ts +0 -13
- package/dist/generated/gtk/builder-cscope.js +0 -28
- package/dist/generated/gtk/cell-area.d.ts +0 -31
- package/dist/generated/gtk/cell-area.js +0 -114
- package/dist/generated/gtk/cell-layout.d.ts +0 -14
- package/dist/generated/gtk/cell-layout.js +0 -39
- package/dist/generated/gtk/cell-view.d.ts +0 -14
- package/dist/generated/gtk/cell-view.js +0 -39
- package/dist/generated/gtk/combo-box.d.ts +0 -25
- package/dist/generated/gtk/combo-box.js +0 -72
- package/dist/generated/gtk/drawing-area.d.ts +2 -1
- package/dist/generated/gtk/drawing-area.js +6 -1
- package/dist/generated/gtk/entry-completion.d.ts +0 -24
- package/dist/generated/gtk/entry-completion.js +0 -69
- package/dist/generated/gtk/expression.d.ts +0 -14
- package/dist/generated/gtk/expression.js +0 -45
- package/dist/generated/gtk/flow-box.d.ts +0 -68
- package/dist/generated/gtk/flow-box.js +0 -150
- package/dist/generated/gtk/font-button.d.ts +0 -8
- package/dist/generated/gtk/font-button.js +0 -29
- package/dist/generated/gtk/font-chooser-dialog.d.ts +0 -8
- package/dist/generated/gtk/font-chooser-dialog.js +0 -29
- package/dist/generated/gtk/font-chooser-widget.d.ts +0 -8
- package/dist/generated/gtk/font-chooser-widget.js +0 -29
- package/dist/generated/gtk/font-chooser.d.ts +0 -8
- package/dist/generated/gtk/font-chooser.js +0 -29
- package/dist/generated/gtk/functions.d.ts +0 -23
- package/dist/generated/gtk/functions.js +0 -69
- package/dist/generated/gtk/icon-view.d.ts +0 -21
- package/dist/generated/gtk/icon-view.js +0 -62
- package/dist/generated/gtk/index.d.ts +0 -7
- package/dist/generated/gtk/index.js +0 -7
- package/dist/generated/gtk/list-box.d.ts +0 -99
- package/dist/generated/gtk/list-box.js +0 -203
- package/dist/generated/gtk/list-store.d.ts +0 -33
- package/dist/generated/gtk/list-store.js +0 -95
- package/dist/generated/gtk/menu-button.d.ts +0 -18
- package/dist/generated/gtk/menu-button.js +0 -40
- package/dist/generated/gtk/print-job.d.ts +0 -7
- package/dist/generated/gtk/print-job.js +0 -27
- package/dist/generated/gtk/print-settings.d.ts +0 -6
- package/dist/generated/gtk/print-settings.js +0 -22
- package/dist/generated/gtk/scale.d.ts +0 -14
- package/dist/generated/gtk/scale.js +0 -36
- package/dist/generated/gtk/text-buffer.d.ts +0 -19
- package/dist/generated/gtk/text-buffer.js +0 -42
- package/dist/generated/gtk/text-iter.d.ts +0 -19
- package/dist/generated/gtk/text-iter.js +0 -81
- package/dist/generated/gtk/text-tag-table.d.ts +0 -9
- package/dist/generated/gtk/text-tag-table.js +0 -25
- package/dist/generated/gtk/tree-model-filter.d.ts +0 -68
- package/dist/generated/gtk/tree-model-filter.js +0 -137
- package/dist/generated/gtk/tree-model-sort.d.ts +0 -33
- package/dist/generated/gtk/tree-model-sort.js +0 -95
- package/dist/generated/gtk/tree-model.d.ts +0 -9
- package/dist/generated/gtk/tree-model.js +0 -25
- package/dist/generated/gtk/tree-selection.d.ts +0 -20
- package/dist/generated/gtk/tree-selection.js +0 -57
- package/dist/generated/gtk/tree-sortable.d.ts +0 -24
- package/dist/generated/gtk/tree-sortable.js +0 -70
- package/dist/generated/gtk/tree-store.d.ts +0 -33
- package/dist/generated/gtk/tree-store.js +0 -95
- package/dist/generated/gtk/tree-view-column.d.ts +0 -14
- package/dist/generated/gtk/tree-view-column.js +0 -39
- package/dist/generated/gtk/tree-view.d.ts +0 -54
- package/dist/generated/gtk/tree-view.js +0 -167
- package/dist/generated/gtk/widget.d.ts +0 -32
- package/dist/generated/gtk/widget.js +0 -50
- package/dist/generated/gtksource/functions.d.ts +0 -21
- package/dist/generated/gtksource/functions.js +0 -49
- package/dist/generated/harfbuzz/functions.d.ts +0 -448
- package/dist/generated/harfbuzz/functions.js +3736 -5611
- package/dist/generated/javascriptcore/class.d.ts +0 -94
- package/dist/generated/javascriptcore/class.js +0 -272
- package/dist/generated/javascriptcore/context.d.ts +0 -13
- package/dist/generated/javascriptcore/context.js +0 -34
- package/dist/generated/javascriptcore/functions.d.ts +0 -7
- package/dist/generated/javascriptcore/functions.js +0 -19
- package/dist/generated/javascriptcore/value.d.ts +0 -72
- package/dist/generated/javascriptcore/value.js +0 -202
- package/dist/generated/json/array.d.ts +0 -11
- package/dist/generated/json/array.js +0 -32
- package/dist/generated/json/object.d.ts +0 -14
- package/dist/generated/json/object.js +0 -35
- package/dist/generated/pango/attr-list.d.ts +0 -8
- package/dist/generated/pango/attr-list.js +0 -37
- package/dist/generated/pango/fontset.d.ts +0 -9
- package/dist/generated/pango/fontset.js +0 -25
- package/dist/generated/pango/functions.d.ts +0 -13
- package/dist/generated/pango/functions.js +0 -55
- package/dist/generated/pangocairo/functions.d.ts +0 -11
- package/dist/generated/pangocairo/functions.js +0 -33
- package/dist/generated/soup/auth-domain-basic.d.ts +0 -17
- package/dist/generated/soup/auth-domain-basic.js +0 -37
- package/dist/generated/soup/auth-domain-digest.d.ts +0 -17
- package/dist/generated/soup/auth-domain-digest.js +0 -37
- package/dist/generated/soup/auth-domain.d.ts +0 -44
- package/dist/generated/soup/auth-domain.js +0 -84
- package/dist/generated/soup/logger.d.ts +0 -32
- package/dist/generated/soup/logger.js +0 -92
- package/dist/generated/soup/message-headers.d.ts +0 -17
- package/dist/generated/soup/message-headers.js +0 -38
- package/dist/generated/soup/server.d.ts +0 -99
- package/dist/generated/soup/server.js +0 -184
- package/dist/generated/vte/terminal.d.ts +0 -168
- package/dist/generated/vte/terminal.js +0 -483
- package/dist/generated/webkit/web-context.d.ts +0 -44
- package/dist/generated/webkit/web-context.js +0 -68
- package/package.json +3 -3
- package/dist/generated/adw/callback-animation-target.d.ts +0 -19
- package/dist/generated/adw/callback-animation-target.js +0 -64
- package/dist/generated/atspi/device-listener.d.ts +0 -26
- package/dist/generated/atspi/device-listener.js +0 -104
- package/dist/generated/atspi/event-listener.d.ts +0 -155
- package/dist/generated/atspi/event-listener.js +0 -496
- package/dist/generated/gio/simple-async-result.d.ts +0 -328
- package/dist/generated/gio/simple-async-result.js +0 -588
- package/dist/generated/gio/task.d.ts +0 -936
- package/dist/generated/gio/task.js +0 -1460
- package/dist/generated/gst/task.d.ts +0 -128
- package/dist/generated/gst/task.js +0 -363
- package/dist/generated/gtk/callback-action.d.ts +0 -16
- package/dist/generated/gtk/callback-action.js +0 -61
- package/dist/generated/gtk/cclosure-expression.d.ts +0 -20
- package/dist/generated/gtk/cclosure-expression.js +0 -68
- package/dist/generated/gtk/custom-filter.d.ts +0 -35
- package/dist/generated/gtk/custom-filter.js +0 -119
- package/dist/generated/gtk/custom-layout.d.ts +0 -26
- package/dist/generated/gtk/custom-layout.js +0 -71
- package/dist/generated/gtk/custom-sorter.d.ts +0 -34
- package/dist/generated/gtk/custom-sorter.js +0 -114
- package/dist/generated/gtk/map-list-model.d.ts +0 -173
- package/dist/generated/gtk/map-list-model.js +0 -361
- package/dist/generated/gtk/tree-list-model.d.ts +0 -145
- package/dist/generated/gtk/tree-list-model.js +0 -310
|
@@ -1,361 +0,0 @@
|
|
|
1
|
-
import { call } from "../../batch.js";
|
|
2
|
-
import { getObject, getInterface, isInstantiating, setInstantiating, } from "../../native.js";
|
|
3
|
-
import { registerType } from "../../registry.js";
|
|
4
|
-
import * as GObject from "../gobject/index.js";
|
|
5
|
-
import * as Gio from "../gio/index.js";
|
|
6
|
-
/**
|
|
7
|
-
* A list model that maps the items in another model to different items.
|
|
8
|
-
*
|
|
9
|
-
* `GtkMapListModel` uses a [callback@Gtk.MapListModelMapFunc].
|
|
10
|
-
*
|
|
11
|
-
* Example: Create a list of `GtkEventControllers`
|
|
12
|
-
* ```c
|
|
13
|
-
* static gpointer
|
|
14
|
-
* map_to_controllers (gpointer widget,
|
|
15
|
-
* gpointer data)
|
|
16
|
-
* {
|
|
17
|
-
* gpointer result = gtk_widget_observe_controllers (widget);
|
|
18
|
-
* g_object_unref (widget);
|
|
19
|
-
* return result;
|
|
20
|
-
* }
|
|
21
|
-
*
|
|
22
|
-
* widgets = gtk_widget_observe_children (widget);
|
|
23
|
-
*
|
|
24
|
-
* controllers = gtk_map_list_model_new (widgets,
|
|
25
|
-
* map_to_controllers,
|
|
26
|
-
* NULL, NULL);
|
|
27
|
-
*
|
|
28
|
-
* model = gtk_flatten_list_model_new (GTK_TYPE_EVENT_CONTROLLER,
|
|
29
|
-
* controllers);
|
|
30
|
-
* ```
|
|
31
|
-
*
|
|
32
|
-
* `GtkMapListModel` will attempt to discard the mapped objects as soon as
|
|
33
|
-
* they are no longer needed and recreate them if necessary.
|
|
34
|
-
*
|
|
35
|
-
* `GtkMapListModel` passes through sections from the underlying model.
|
|
36
|
-
*/
|
|
37
|
-
export class MapListModel extends GObject.GObject {
|
|
38
|
-
static glibTypeName = "GtkMapListModel";
|
|
39
|
-
/**
|
|
40
|
-
* Creates a new `GtkMapListModel` for the given arguments.
|
|
41
|
-
* @param model - The model to map
|
|
42
|
-
* @param mapFunc - map function
|
|
43
|
-
* @param userData - user data passed to @map_func
|
|
44
|
-
* @param userDestroy - destroy notifier for @user_data
|
|
45
|
-
*/
|
|
46
|
-
constructor(userDestroy, model, mapFunc, userData) {
|
|
47
|
-
if (!isInstantiating) {
|
|
48
|
-
setInstantiating(true);
|
|
49
|
-
// @ts-ignore
|
|
50
|
-
super();
|
|
51
|
-
setInstantiating(false);
|
|
52
|
-
this.id = call("libgtk-4.so.1", "gtk_map_list_model_new", [
|
|
53
|
-
{
|
|
54
|
-
type: { type: "gobject" },
|
|
55
|
-
value: model?.id ?? model,
|
|
56
|
-
optional: true,
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
type: { type: "callback" },
|
|
60
|
-
value: mapFunc,
|
|
61
|
-
optional: true,
|
|
62
|
-
},
|
|
63
|
-
{
|
|
64
|
-
type: { type: "int", size: 64, unsigned: true },
|
|
65
|
-
value: userData,
|
|
66
|
-
optional: true,
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
type: { type: "callback", trampoline: "destroy" },
|
|
70
|
-
value: userDestroy,
|
|
71
|
-
},
|
|
72
|
-
], { type: "gobject", borrowed: true });
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
// @ts-ignore
|
|
76
|
-
super();
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Gets the model that is currently being mapped or %NULL if none.
|
|
81
|
-
*/
|
|
82
|
-
getModel() {
|
|
83
|
-
const ptr = call("libgtk-4.so.1", "gtk_map_list_model_get_model", [
|
|
84
|
-
{
|
|
85
|
-
type: { type: "gobject" },
|
|
86
|
-
value: this.id,
|
|
87
|
-
},
|
|
88
|
-
], { type: "gobject", borrowed: true });
|
|
89
|
-
if (ptr === null)
|
|
90
|
-
return null;
|
|
91
|
-
return getInterface(ptr, Gio.ListModel);
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* Checks if a map function is currently set on @self.
|
|
95
|
-
*/
|
|
96
|
-
hasMap() {
|
|
97
|
-
return call("libgtk-4.so.1", "gtk_map_list_model_has_map", [
|
|
98
|
-
{
|
|
99
|
-
type: { type: "gobject" },
|
|
100
|
-
value: this.id,
|
|
101
|
-
},
|
|
102
|
-
], { type: "boolean" });
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* Sets the function used to map items.
|
|
106
|
-
*
|
|
107
|
-
* The function will be called whenever an item needs to be mapped
|
|
108
|
-
* and must return the item to use for the given input item.
|
|
109
|
-
*
|
|
110
|
-
* Note that `GtkMapListModel` may call this function multiple times
|
|
111
|
-
* on the same item, because it may delete items it doesn't need anymore.
|
|
112
|
-
*
|
|
113
|
-
* GTK makes no effort to ensure that `map_func` conforms to the item type
|
|
114
|
-
* of @self. It assumes that the caller knows what they are doing and the map
|
|
115
|
-
* function returns items of the appropriate type.
|
|
116
|
-
* @param mapFunc - map function
|
|
117
|
-
* @param userData - user data passed to @map_func
|
|
118
|
-
* @param userDestroy - destroy notifier for @user_data
|
|
119
|
-
*/
|
|
120
|
-
setMapFunc(userDestroy, mapFunc, userData) {
|
|
121
|
-
call("libgtk-4.so.1", "gtk_map_list_model_set_map_func", [
|
|
122
|
-
{
|
|
123
|
-
type: { type: "gobject" },
|
|
124
|
-
value: this.id,
|
|
125
|
-
},
|
|
126
|
-
{
|
|
127
|
-
type: { type: "callback" },
|
|
128
|
-
value: mapFunc,
|
|
129
|
-
optional: true,
|
|
130
|
-
},
|
|
131
|
-
{
|
|
132
|
-
type: { type: "int", size: 64, unsigned: true },
|
|
133
|
-
value: userData,
|
|
134
|
-
optional: true,
|
|
135
|
-
},
|
|
136
|
-
{
|
|
137
|
-
type: { type: "callback", trampoline: "destroy" },
|
|
138
|
-
value: userDestroy,
|
|
139
|
-
},
|
|
140
|
-
], { type: "undefined" });
|
|
141
|
-
}
|
|
142
|
-
/**
|
|
143
|
-
* Sets the model to be mapped.
|
|
144
|
-
*
|
|
145
|
-
* GTK makes no effort to ensure that `model` conforms to the item type
|
|
146
|
-
* expected by the map function. It assumes that the caller knows what
|
|
147
|
-
* they are doing and have set up an appropriate map function.
|
|
148
|
-
* @param model - The model to be mapped
|
|
149
|
-
*/
|
|
150
|
-
setModel(model) {
|
|
151
|
-
call("libgtk-4.so.1", "gtk_map_list_model_set_model", [
|
|
152
|
-
{
|
|
153
|
-
type: { type: "gobject" },
|
|
154
|
-
value: this.id,
|
|
155
|
-
},
|
|
156
|
-
{
|
|
157
|
-
type: { type: "gobject", borrowed: true },
|
|
158
|
-
value: model?.id ?? model,
|
|
159
|
-
optional: true,
|
|
160
|
-
},
|
|
161
|
-
], { type: "undefined" });
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* Gets the type of the items in @list.
|
|
165
|
-
*
|
|
166
|
-
* All items returned from g_list_model_get_item() are of the type
|
|
167
|
-
* returned by this function, or a subtype, or if the type is an
|
|
168
|
-
* interface, they are an implementation of that interface.
|
|
169
|
-
*
|
|
170
|
-
* The item type of a #GListModel can not change during the life of the
|
|
171
|
-
* model.
|
|
172
|
-
*/
|
|
173
|
-
getItemType() {
|
|
174
|
-
return call("libgtk-4.so.1", "g_list_model_get_item_type", [
|
|
175
|
-
{
|
|
176
|
-
type: { type: "gobject" },
|
|
177
|
-
value: this.id,
|
|
178
|
-
},
|
|
179
|
-
], { type: "int", size: 64, unsigned: true });
|
|
180
|
-
}
|
|
181
|
-
/**
|
|
182
|
-
* Gets the number of items in @list.
|
|
183
|
-
*
|
|
184
|
-
* Depending on the model implementation, calling this function may be
|
|
185
|
-
* less efficient than iterating the list with increasing values for
|
|
186
|
-
* `position` until g_list_model_get_item() returns %NULL.
|
|
187
|
-
*/
|
|
188
|
-
getNItems() {
|
|
189
|
-
return call("libgtk-4.so.1", "g_list_model_get_n_items", [
|
|
190
|
-
{
|
|
191
|
-
type: { type: "gobject" },
|
|
192
|
-
value: this.id,
|
|
193
|
-
},
|
|
194
|
-
], { type: "int", size: 32, unsigned: true });
|
|
195
|
-
}
|
|
196
|
-
/**
|
|
197
|
-
* Get the item at @position.
|
|
198
|
-
*
|
|
199
|
-
* If `position` is greater than the number of items in @list, %NULL is
|
|
200
|
-
* returned.
|
|
201
|
-
*
|
|
202
|
-
* %NULL is never returned for an index that is smaller than the length
|
|
203
|
-
* of the list.
|
|
204
|
-
*
|
|
205
|
-
* This function is meant to be used by language bindings in place
|
|
206
|
-
* of g_list_model_get_item().
|
|
207
|
-
*
|
|
208
|
-
* See also: g_list_model_get_n_items()
|
|
209
|
-
* @param position - the position of the item to fetch
|
|
210
|
-
*/
|
|
211
|
-
getObject(position) {
|
|
212
|
-
const ptr = call("libgtk-4.so.1", "g_list_model_get_object", [
|
|
213
|
-
{
|
|
214
|
-
type: { type: "gobject" },
|
|
215
|
-
value: this.id,
|
|
216
|
-
},
|
|
217
|
-
{
|
|
218
|
-
type: { type: "int", size: 32, unsigned: true },
|
|
219
|
-
value: position,
|
|
220
|
-
},
|
|
221
|
-
], { type: "gobject", borrowed: true });
|
|
222
|
-
if (ptr === null)
|
|
223
|
-
return null;
|
|
224
|
-
return getObject(ptr);
|
|
225
|
-
}
|
|
226
|
-
/**
|
|
227
|
-
* Emits the #GListModel::items-changed signal on @list.
|
|
228
|
-
*
|
|
229
|
-
* This function should only be called by classes implementing
|
|
230
|
-
* #GListModel. It has to be called after the internal representation
|
|
231
|
-
* of `list` has been updated, because handlers connected to this signal
|
|
232
|
-
* might query the new state of the list.
|
|
233
|
-
*
|
|
234
|
-
* Implementations must only make changes to the model (as visible to
|
|
235
|
-
* its consumer) in places that will not cause problems for that
|
|
236
|
-
* consumer. For models that are driven directly by a write API (such
|
|
237
|
-
* as #GListStore), changes can be reported in response to uses of that
|
|
238
|
-
* API. For models that represent remote data, changes should only be
|
|
239
|
-
* made from a fresh mainloop dispatch. It is particularly not
|
|
240
|
-
* permitted to make changes in response to a call to the #GListModel
|
|
241
|
-
* consumer API.
|
|
242
|
-
*
|
|
243
|
-
* Stated another way: in general, it is assumed that code making a
|
|
244
|
-
* series of accesses to the model via the API, without returning to the
|
|
245
|
-
* mainloop, and without calling other code, will continue to view the
|
|
246
|
-
* same contents of the model.
|
|
247
|
-
* @param position - the position at which `list` changed
|
|
248
|
-
* @param removed - the number of items removed
|
|
249
|
-
* @param added - the number of items added
|
|
250
|
-
*/
|
|
251
|
-
itemsChanged(position, removed, added) {
|
|
252
|
-
call("libgtk-4.so.1", "g_list_model_items_changed", [
|
|
253
|
-
{
|
|
254
|
-
type: { type: "gobject" },
|
|
255
|
-
value: this.id,
|
|
256
|
-
},
|
|
257
|
-
{
|
|
258
|
-
type: { type: "int", size: 32, unsigned: true },
|
|
259
|
-
value: position,
|
|
260
|
-
},
|
|
261
|
-
{
|
|
262
|
-
type: { type: "int", size: 32, unsigned: true },
|
|
263
|
-
value: removed,
|
|
264
|
-
},
|
|
265
|
-
{
|
|
266
|
-
type: { type: "int", size: 32, unsigned: true },
|
|
267
|
-
value: added,
|
|
268
|
-
},
|
|
269
|
-
], { type: "undefined" });
|
|
270
|
-
}
|
|
271
|
-
/**
|
|
272
|
-
* Query the section that covers the given position. The number of
|
|
273
|
-
* items in the section can be computed by `out_end - out_start`.
|
|
274
|
-
*
|
|
275
|
-
* If the position is larger than the number of items, a single
|
|
276
|
-
* range from n_items to G_MAXUINT will be returned.
|
|
277
|
-
* @param position - the position of the item to query
|
|
278
|
-
* @param outStart - the position of the first item in the section
|
|
279
|
-
* @param outEnd - the position of the first item not part of the section
|
|
280
|
-
*/
|
|
281
|
-
getSection(position, outStart, outEnd) {
|
|
282
|
-
call("libgtk-4.so.1", "gtk_section_model_get_section", [
|
|
283
|
-
{
|
|
284
|
-
type: { type: "gobject" },
|
|
285
|
-
value: this.id,
|
|
286
|
-
},
|
|
287
|
-
{
|
|
288
|
-
type: { type: "int", size: 32, unsigned: true },
|
|
289
|
-
value: position,
|
|
290
|
-
},
|
|
291
|
-
{
|
|
292
|
-
type: {
|
|
293
|
-
type: "ref",
|
|
294
|
-
innerType: { type: "int", size: 32, unsigned: true },
|
|
295
|
-
},
|
|
296
|
-
value: outStart,
|
|
297
|
-
},
|
|
298
|
-
{
|
|
299
|
-
type: {
|
|
300
|
-
type: "ref",
|
|
301
|
-
innerType: { type: "int", size: 32, unsigned: true },
|
|
302
|
-
},
|
|
303
|
-
value: outEnd,
|
|
304
|
-
},
|
|
305
|
-
], { type: "undefined" });
|
|
306
|
-
}
|
|
307
|
-
/**
|
|
308
|
-
* This function emits the [signal@Gtk.SectionModel::sections-changed]
|
|
309
|
-
* signal to notify about changes to sections.
|
|
310
|
-
*
|
|
311
|
-
* It must cover all positions that used to be a section start or that
|
|
312
|
-
* are now a section start. It does not have to cover all positions for
|
|
313
|
-
* which the section has changed.
|
|
314
|
-
*
|
|
315
|
-
* The [signal@Gio.ListModel::items-changed] implies the effect of the
|
|
316
|
-
* [signal@Gtk.SectionModel::sections-changed] signal for all the items
|
|
317
|
-
* it covers.
|
|
318
|
-
*
|
|
319
|
-
* It is recommended that when changes to the items cause section changes
|
|
320
|
-
* in a larger range, that the larger range is included in the emission
|
|
321
|
-
* of the [signal@Gio.ListModel::items-changed] instead of emitting
|
|
322
|
-
* two signals.
|
|
323
|
-
* @param position - the first changed item
|
|
324
|
-
* @param nItems - the number of changed items
|
|
325
|
-
*/
|
|
326
|
-
sectionsChanged(position, nItems) {
|
|
327
|
-
call("libgtk-4.so.1", "gtk_section_model_sections_changed", [
|
|
328
|
-
{
|
|
329
|
-
type: { type: "gobject" },
|
|
330
|
-
value: this.id,
|
|
331
|
-
},
|
|
332
|
-
{
|
|
333
|
-
type: { type: "int", size: 32, unsigned: true },
|
|
334
|
-
value: position,
|
|
335
|
-
},
|
|
336
|
-
{
|
|
337
|
-
type: { type: "int", size: 32, unsigned: true },
|
|
338
|
-
value: nItems,
|
|
339
|
-
},
|
|
340
|
-
], { type: "undefined" });
|
|
341
|
-
}
|
|
342
|
-
connect(signal, handler, after = false) {
|
|
343
|
-
const selfType = { type: "gobject", borrowed: true };
|
|
344
|
-
const argTypes = [selfType];
|
|
345
|
-
const returnType = undefined;
|
|
346
|
-
const wrappedHandler = (...args) => {
|
|
347
|
-
const self = getObject(args[0]);
|
|
348
|
-
return handler(self, ...args.slice(1));
|
|
349
|
-
};
|
|
350
|
-
return call("libgtk-4.so.1", "g_signal_connect_closure", [
|
|
351
|
-
{ type: { type: "gobject" }, value: this.id },
|
|
352
|
-
{ type: { type: "string" }, value: signal },
|
|
353
|
-
{
|
|
354
|
-
type: { type: "callback", argTypes, returnType },
|
|
355
|
-
value: wrappedHandler,
|
|
356
|
-
},
|
|
357
|
-
{ type: { type: "boolean" }, value: after },
|
|
358
|
-
], { type: "int", size: 64, unsigned: true });
|
|
359
|
-
}
|
|
360
|
-
}
|
|
361
|
-
registerType(MapListModel);
|
|
@@ -1,145 +0,0 @@
|
|
|
1
|
-
import { TreeListRow } from "./tree-list-row.js";
|
|
2
|
-
import * as GObject from "../gobject/index.js";
|
|
3
|
-
import * as Gio from "../gio/index.js";
|
|
4
|
-
/** A list model that can create child models on demand. */
|
|
5
|
-
export declare class TreeListModel extends GObject.GObject {
|
|
6
|
-
static readonly glibTypeName: string;
|
|
7
|
-
/**
|
|
8
|
-
* Creates a new empty `GtkTreeListModel` displaying `root` with all rows collapsed.
|
|
9
|
-
* @param root - The `GListModel` to use as root
|
|
10
|
-
* @param passthrough - %TRUE to pass through items from the models
|
|
11
|
-
* @param autoexpand - %TRUE to set the autoexpand property and expand the `root` model
|
|
12
|
-
* @param createFunc - function to
|
|
13
|
-
* @param userData - Data to pass to @create_func
|
|
14
|
-
* @param userDestroy - Function to call to free @user_data
|
|
15
|
-
*/
|
|
16
|
-
constructor(root: Gio.ListModel, passthrough: boolean, autoexpand: boolean, createFunc: (...args: unknown[]) => unknown, userDestroy: () => void, userData?: number | null);
|
|
17
|
-
/**
|
|
18
|
-
* Gets whether the model is set to automatically expand new rows
|
|
19
|
-
* that get added.
|
|
20
|
-
*
|
|
21
|
-
* This can be either rows added by changes to the underlying
|
|
22
|
-
* models or via [method@Gtk.TreeListRow.set_expanded].
|
|
23
|
-
*/
|
|
24
|
-
getAutoexpand(): boolean;
|
|
25
|
-
/**
|
|
26
|
-
* Gets the row item corresponding to the child at index `position` for
|
|
27
|
-
* @self's root model.
|
|
28
|
-
*
|
|
29
|
-
* If `position` is greater than the number of children in the root model,
|
|
30
|
-
* %NULL is returned.
|
|
31
|
-
*
|
|
32
|
-
* Do not confuse this function with [method@Gtk.TreeListModel.get_row].
|
|
33
|
-
* @param position - position of the child to get
|
|
34
|
-
*/
|
|
35
|
-
getChildRow(position: number): TreeListRow | null;
|
|
36
|
-
/**
|
|
37
|
-
* Gets the root model that `self` was created with.
|
|
38
|
-
*/
|
|
39
|
-
getModel(): Gio.ListModel;
|
|
40
|
-
/**
|
|
41
|
-
* Gets whether the model is passing through original row items.
|
|
42
|
-
*
|
|
43
|
-
* If this function returns %FALSE, the `GListModel` functions for `self` return custom `GtkTreeListRow` objects. You need to call
|
|
44
|
-
* [method@Gtk.TreeListRow.get_item] on these objects to get the original
|
|
45
|
-
* item.
|
|
46
|
-
*
|
|
47
|
-
* If %TRUE, the values of the child models are passed through in their
|
|
48
|
-
* original state. You then need to call [method@Gtk.TreeListModel.get_row]
|
|
49
|
-
* to get the custom `GtkTreeListRow`s.
|
|
50
|
-
*/
|
|
51
|
-
getPassthrough(): boolean;
|
|
52
|
-
/**
|
|
53
|
-
* Gets the row object for the given row.
|
|
54
|
-
*
|
|
55
|
-
* If `position` is greater than the number of items in @self,
|
|
56
|
-
* %NULL is returned.
|
|
57
|
-
*
|
|
58
|
-
* The row object can be used to expand and collapse rows as
|
|
59
|
-
* well as to inspect its position in the tree. See its
|
|
60
|
-
* documentation for details.
|
|
61
|
-
*
|
|
62
|
-
* This row object is persistent and will refer to the current
|
|
63
|
-
* item as long as the row is present in @self, independent of
|
|
64
|
-
* other rows being added or removed.
|
|
65
|
-
*
|
|
66
|
-
* If `self` is set to not be passthrough, this function is
|
|
67
|
-
* equivalent to calling g_list_model_get_item().
|
|
68
|
-
*
|
|
69
|
-
* Do not confuse this function with [method@Gtk.TreeListModel.get_child_row].
|
|
70
|
-
* @param position - the position of the row to fetch
|
|
71
|
-
*/
|
|
72
|
-
getRow(position: number): TreeListRow | null;
|
|
73
|
-
/**
|
|
74
|
-
* Sets whether the model should autoexpand.
|
|
75
|
-
*
|
|
76
|
-
* If set to %TRUE, the model will recursively expand all rows that
|
|
77
|
-
* get added to the model. This can be either rows added by changes
|
|
78
|
-
* to the underlying models or via [method@Gtk.TreeListRow.set_expanded].
|
|
79
|
-
* @param autoexpand - %TRUE to make the model autoexpand its rows
|
|
80
|
-
*/
|
|
81
|
-
setAutoexpand(autoexpand: boolean): void;
|
|
82
|
-
/**
|
|
83
|
-
* Gets the type of the items in @list.
|
|
84
|
-
*
|
|
85
|
-
* All items returned from g_list_model_get_item() are of the type
|
|
86
|
-
* returned by this function, or a subtype, or if the type is an
|
|
87
|
-
* interface, they are an implementation of that interface.
|
|
88
|
-
*
|
|
89
|
-
* The item type of a #GListModel can not change during the life of the
|
|
90
|
-
* model.
|
|
91
|
-
*/
|
|
92
|
-
getItemType(): number;
|
|
93
|
-
/**
|
|
94
|
-
* Gets the number of items in @list.
|
|
95
|
-
*
|
|
96
|
-
* Depending on the model implementation, calling this function may be
|
|
97
|
-
* less efficient than iterating the list with increasing values for
|
|
98
|
-
* `position` until g_list_model_get_item() returns %NULL.
|
|
99
|
-
*/
|
|
100
|
-
getNItems(): number;
|
|
101
|
-
/**
|
|
102
|
-
* Get the item at @position.
|
|
103
|
-
*
|
|
104
|
-
* If `position` is greater than the number of items in @list, %NULL is
|
|
105
|
-
* returned.
|
|
106
|
-
*
|
|
107
|
-
* %NULL is never returned for an index that is smaller than the length
|
|
108
|
-
* of the list.
|
|
109
|
-
*
|
|
110
|
-
* This function is meant to be used by language bindings in place
|
|
111
|
-
* of g_list_model_get_item().
|
|
112
|
-
*
|
|
113
|
-
* See also: g_list_model_get_n_items()
|
|
114
|
-
* @param position - the position of the item to fetch
|
|
115
|
-
*/
|
|
116
|
-
getObject(position: number): GObject.GObject | null;
|
|
117
|
-
/**
|
|
118
|
-
* Emits the #GListModel::items-changed signal on @list.
|
|
119
|
-
*
|
|
120
|
-
* This function should only be called by classes implementing
|
|
121
|
-
* #GListModel. It has to be called after the internal representation
|
|
122
|
-
* of `list` has been updated, because handlers connected to this signal
|
|
123
|
-
* might query the new state of the list.
|
|
124
|
-
*
|
|
125
|
-
* Implementations must only make changes to the model (as visible to
|
|
126
|
-
* its consumer) in places that will not cause problems for that
|
|
127
|
-
* consumer. For models that are driven directly by a write API (such
|
|
128
|
-
* as #GListStore), changes can be reported in response to uses of that
|
|
129
|
-
* API. For models that represent remote data, changes should only be
|
|
130
|
-
* made from a fresh mainloop dispatch. It is particularly not
|
|
131
|
-
* permitted to make changes in response to a call to the #GListModel
|
|
132
|
-
* consumer API.
|
|
133
|
-
*
|
|
134
|
-
* Stated another way: in general, it is assumed that code making a
|
|
135
|
-
* series of accesses to the model via the API, without returning to the
|
|
136
|
-
* mainloop, and without calling other code, will continue to view the
|
|
137
|
-
* same contents of the model.
|
|
138
|
-
* @param position - the position at which `list` changed
|
|
139
|
-
* @param removed - the number of items removed
|
|
140
|
-
* @param added - the number of items added
|
|
141
|
-
*/
|
|
142
|
-
itemsChanged(position: number, removed: number, added: number): void;
|
|
143
|
-
connect(signal: "notify", handler: (self: TreeListModel, pspec: GObject.ParamSpec) => void, after?: boolean): number;
|
|
144
|
-
connect(signal: string, handler: (...args: any[]) => any, after?: boolean): number;
|
|
145
|
-
}
|