Mercurial > hg > xemacs-beta
comparison src/ui-gtk.h @ 5120:d1247f3cc363 ben-lisp-object
latest work on lisp-object workspace;
more changes eliminating LCRECORD in place of LISP_OBJECT;
now compiles and runs.
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Mon, 28 Dec 2009 01:15:52 -0600 |
parents | e0db3c197671 |
children | b5df3737028a |
comparison
equal
deleted
inserted
replaced
5119:d877c14318b3 | 5120:d1247f3cc363 |
---|---|
35 typedef void (*ffi_marshalling_function) (ffi_actual_function, GtkArg *); | 35 typedef void (*ffi_marshalling_function) (ffi_actual_function, GtkArg *); |
36 | 36 |
37 #define MAX_GTK_ARGS 100 | 37 #define MAX_GTK_ARGS 100 |
38 | 38 |
39 typedef struct { | 39 typedef struct { |
40 struct LCRECORD_HEADER header; | 40 LISP_OBJECT_HEADER header; |
41 GtkType return_type; | 41 GtkType return_type; |
42 GtkType args[MAX_GTK_ARGS]; | 42 GtkType args[MAX_GTK_ARGS]; |
43 gint n_args; | 43 gint n_args; |
44 Lisp_Object function_name; | 44 Lisp_Object function_name; |
45 dll_func function_ptr; | 45 dll_func function_ptr; |
53 #define FFIP(x) RECORDP (x, emacs_ffi) | 53 #define FFIP(x) RECORDP (x, emacs_ffi) |
54 #define CHECK_FFI(x) CHECK_RECORD (x, emacs_ffi) | 54 #define CHECK_FFI(x) CHECK_RECORD (x, emacs_ffi) |
55 | 55 |
56 /* Encapsulate a GtkObject in Lisp */ | 56 /* Encapsulate a GtkObject in Lisp */ |
57 typedef struct { | 57 typedef struct { |
58 struct LCRECORD_HEADER header; | 58 LISP_OBJECT_HEADER header; |
59 gboolean alive_p; | 59 gboolean alive_p; |
60 GtkObject *object; | 60 GtkObject *object; |
61 Lisp_Object plist; | 61 Lisp_Object plist; |
62 } emacs_gtk_object_data; | 62 } emacs_gtk_object_data; |
63 | 63 |
70 | 70 |
71 extern Lisp_Object build_gtk_object (GtkObject *obj); | 71 extern Lisp_Object build_gtk_object (GtkObject *obj); |
72 | 72 |
73 /* Encapsulate a GTK_TYPE_BOXED in lisp */ | 73 /* Encapsulate a GTK_TYPE_BOXED in lisp */ |
74 typedef struct { | 74 typedef struct { |
75 struct LCRECORD_HEADER header; | 75 LISP_OBJECT_HEADER header; |
76 GtkType object_type; | 76 GtkType object_type; |
77 void *object; | 77 void *object; |
78 } emacs_gtk_boxed_data; | 78 } emacs_gtk_boxed_data; |
79 | 79 |
80 DECLARE_LISP_OBJECT (emacs_gtk_boxed, emacs_gtk_boxed_data); | 80 DECLARE_LISP_OBJECT (emacs_gtk_boxed, emacs_gtk_boxed_data); |