gdk-pixbuf, gdk-pixbuf-animation, gdk-pixbuf-loader, gdk-cursor, gdk-device, gdk-device-manager, gdk-device-pad, gdk-display, gdk-display-manager, gdk-drag-context, gdk-drawing-context, gdk-frame-clock, gdk-gl-context, gdk-keymap, gdk-monitor, gdk-screen, gdk-seat, gdk-visual, gdk-window, g-action, g-action-group, g-action-map, g-app-info, g-app-launch-context, g-icon, g-menu-item, g-menu-model, g-binding, g-initially-unowned, gtk-accel-group, gtk-accel-map, gtk-actionable, gtk-activatable, gtk-app-chooser, gtk-buildable, gtk-builder, gtk-cell-area-context, gtk-cell-editable, gtk-cell-layout, gtk-clipboard, gtk-color-chooser, gtk-editable, gtk-entry-buffer, gtk-event-controller, gtk-file-chooser, gtk-font-chooser, gtk-icon-theme, gtk-im-context, gtk-orientable, gtk-page-setup, gtk-print-backend, gtk-print-context, gtk-print-job, gtk-print-operation-preview, gtk-print-settings, gtk-printer, gtk-rc-style, gtk-recent-chooser, gtk-recent-manager, gtk-scrollable, gtk-settings, gtk-status-icon, gtk-style, gtk-style-context, gtk-style-provider, gtk-text-buffer, gtk-text-child-anchor, gtk-text-mark, gtk-text-tag, gtk-text-tag-table, gtk-theming-engine, gtk-tool-shell, gtk-tooltip, gtk-tree-drag-dest, gtk-tree-drag-source, gtk-tree-model, gtk-tree-selection, gtk-tree-sortable, gtk-window-group, pango-context, pango-font, pango-font-face, pango-font-family, pango-layout, pango-renderer
g-object is the fundamental type providing the common attributes and methods for all object types in GTK+, Pango and other libraries based on g-object. The g-object class provides methods for object construction and destruction, property access methods, and signal support. Signals are described in detail in Signals(3).
In the Lisp implementation three slots are added. The slot pointer holds the pointer to the C instance of the object. The slot signal-handlers stores all signals which are connected to an instance. The slot has-reference is initialized to the value t during creation of an object, but is not in use in the code. See the slot access functions for examples.
The "notify" signal
lambda (gobject pspec) : No HooksThe "notify" signal is emitted on an object when one of its properties has been changed. Note that getting this signal does not guarantee that the value of the property has actually changed, it may also be emitted when the setter for the property is called to reinstate the previous value. This signal is typically used to obtain change notification for a single property, by specifying the property name as a detail in the g-signal-connect call, like this:
(g-signal-connect switch "notify::active" (lambda (widget param) (declare (ignore param)) (if (gtk-switch-active widget) (setf (gtk-label-label label) "The Switch is ON") (setf (gtk-label-label label) "The Switch is OFF"))))It is important to note that you must use canonical parameter names as detail strings for the notify signal.
Slot Access Functions