Previous: define-vtable, Up: Creating GObjects classes and implementing GInterfaces


4.11.2 register-object-type-implementation

— Macro: register-object-type-implementation
     (register-object-type-implementation name class parent interfaces properties)
name
A string naming the new GObject class.
class
A class name of corresponding CLOS class. It should be inherited from g-object or its descendants.
parent
A string naming the GObject superclass
interfaces
A list of names of interfaces that this class implements.
properties
A list of properties that this class provides. Each property is defined as
          property ::= (property-name property-type accessor property-get-fn property-set-fn)

A macro that creates a new GObject type and registers the Lisp implementation for it.

Example:

     (register-object-type-implementation "LispArrayListStore" array-list-store "GObject" ("GtkTreeModel") nil)