Mercurial > hg > xemacs-beta
comparison src/ui-gtk.c @ 5581:56144c8593a8
Mechanically change INT to FIXNUM in our sources.
src/ChangeLog addition:
2011-10-09 Aidan Kehoe <kehoea@parhasard.net>
[...]
Mechanically change INT (where it refers to non-bignum Lisp
integers) to FIXNUM in our sources. Done for the following
functions, enums, and macros: Lisp_Type_Int_Even,
Lisp_Type_Int_Odd, INT_GCBITS, INT_VALBITS, make_int(), INTP(),
XINT(), CHECK_INT(), XREALINT(), INT_PLUS(), INT_MINUS(),
EMACS_INT_MAX (to MOST_POSITIVE_FIXNUM), EMACS_INT_MIN (to
MOST_NEGATIVE_FIXNUM), NUMBER_FITS_IN_AN_EMACS_INT() to
NUMBER_FITS_IN_A_FIXNUM(), XFLOATINT, XCHAR_OR_INT, INT_OR_FLOAT.
The EMACS_INT typedef was not changed, it does not describe
non-bignum Lisp integers.
Script that did the change available in
http://mid.gmane.org/20067.17650.181273.12014@parhasard.net .
modules/ChangeLog addition:
2011-10-09 Aidan Kehoe <kehoea@parhasard.net>
[...]
Mechanically change INT to FIXNUM, where the usage describes non-bignum
Lisp integers. See the src/ChangeLog entry for more details.
man/ChangeLog addition:
2011-10-09 Aidan Kehoe <kehoea@parhasard.net>
* internals/internals.texi (How Lisp Objects Are Represented in C):
* internals/internals.texi (Integers and Characters):
Mechanically change INT to FIXNUM, where the usage describes non-bignum
Lisp integers.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Sun, 09 Oct 2011 09:51:57 +0100 |
parents | 2aa9cd456ae7 |
children |
comparison
equal
deleted
inserted
replaced
5580:a0e81357194e | 5581:56144c8593a8 |
---|---|
250 GtkEnumValue *vals = gtk_type_enum_get_values (the_type); | 250 GtkEnumValue *vals = gtk_type_enum_get_values (the_type); |
251 Lisp_Object assoc = Qnil; | 251 Lisp_Object assoc = Qnil; |
252 | 252 |
253 if (NILP (Venumeration_info)) | 253 if (NILP (Venumeration_info)) |
254 { | 254 { |
255 Venumeration_info = call2 (intern ("make-hashtable"), make_int (100), Qequal); | 255 Venumeration_info = call2 (intern ("make-hashtable"), make_fixnum (100), Qequal); |
256 } | 256 } |
257 | 257 |
258 while (vals && vals->value_name) | 258 while (vals && vals->value_name) |
259 { | 259 { |
260 assoc = Fcons (Fcons (intern (vals->value_nick), make_int (vals->value)), assoc); | 260 assoc = Fcons (Fcons (intern (vals->value_nick), make_fixnum (vals->value)), assoc); |
261 assoc = Fcons (Fcons (intern (vals->value_name), make_int (vals->value)), assoc); | 261 assoc = Fcons (Fcons (intern (vals->value_name), make_fixnum (vals->value)), assoc); |
262 vals++; | 262 vals++; |
263 } | 263 } |
264 | 264 |
265 assoc = Fnreverse (assoc); | 265 assoc = Fnreverse (assoc); |
266 | 266 |
267 Fputhash (make_int (the_type), assoc, Venumeration_info); | 267 Fputhash (make_fixnum (the_type), assoc, Venumeration_info); |
268 } | 268 } |
269 | 269 |
270 static void | 270 static void |
271 import_gtk_type (GtkType t) | 271 import_gtk_type (GtkType t) |
272 { | 272 { |
691 Lisp_Object retval = Qnil; | 691 Lisp_Object retval = Qnil; |
692 | 692 |
693 CHECK_FFI (func); | 693 CHECK_FFI (func); |
694 CHECK_LIST (args); | 694 CHECK_LIST (args); |
695 | 695 |
696 n_args = XINT (Flength (args)); | 696 n_args = XFIXNUM (Flength (args)); |
697 | 697 |
698 #ifdef XEMACS_IS_SMARTER_THAN_THE_PROGRAMMER | 698 #ifdef XEMACS_IS_SMARTER_THAN_THE_PROGRAMMER |
699 /* #### I think this is too dangerous to enable by default. | 699 /* #### I think this is too dangerous to enable by default. |
700 ** #### Genuine program bugs would probably be allowed to | 700 ** #### Genuine program bugs would probably be allowed to |
701 ** #### slip by, and not be very easy to find. | 701 ** #### slip by, and not be very easy to find. |
707 | 707 |
708 /* Signal an error if they pass in too many arguments */ | 708 /* Signal an error if they pass in too many arguments */ |
709 if (n_args > XFFI(func)->n_args) | 709 if (n_args > XFFI(func)->n_args) |
710 { | 710 { |
711 return Fsignal (Qwrong_number_of_arguments, | 711 return Fsignal (Qwrong_number_of_arguments, |
712 list2 (func, make_int (n_args))); | 712 list2 (func, make_fixnum (n_args))); |
713 } | 713 } |
714 | 714 |
715 /* If they did not provide enough arguments, be nice and assume | 715 /* If they did not provide enough arguments, be nice and assume |
716 ** they wanted `nil' in there. | 716 ** they wanted `nil' in there. |
717 */ | 717 */ |
718 for_append[0] = args; | 718 for_append[0] = args; |
719 for_append[1] = Fmake_list (make_int (XFFI(func)->n_args - n_args), Qnil); | 719 for_append[1] = Fmake_list (make_fixnum (XFFI(func)->n_args - n_args), Qnil); |
720 | 720 |
721 args = Fappend (2, for_append); | 721 args = Fappend (2, for_append); |
722 } | 722 } |
723 #else | 723 #else |
724 if (n_args != XFFI(func)->n_args) | 724 if (n_args != XFFI(func)->n_args) |
725 { | 725 { |
726 /* Signal an error if they do not pass in the correct # of arguments */ | 726 /* Signal an error if they do not pass in the correct # of arguments */ |
727 return Fsignal (Qwrong_number_of_arguments, | 727 return Fsignal (Qwrong_number_of_arguments, |
728 list2 (func, make_int (n_args))); | 728 list2 (func, make_fixnum (n_args))); |
729 } | 729 } |
730 #endif | 730 #endif |
731 | 731 |
732 if (!NILP (args)) | 732 if (!NILP (args)) |
733 { | 733 { |
1001 { | 1001 { |
1002 Lisp_Object lisp_data; | 1002 Lisp_Object lisp_data; |
1003 | 1003 |
1004 lisp_data = GET_LISP_FROM_VOID (data); | 1004 lisp_data = GET_LISP_FROM_VOID (data); |
1005 | 1005 |
1006 ungcpro_popup_callbacks (XINT (XCAR (lisp_data))); | 1006 ungcpro_popup_callbacks (XFIXNUM (XCAR (lisp_data))); |
1007 } | 1007 } |
1008 | 1008 |
1009 static void | 1009 static void |
1010 __internal_callback_marshal (GtkObject *obj, gpointer data, guint n_args, GtkArg *args) | 1010 __internal_callback_marshal (GtkObject *obj, gpointer data, guint n_args, GtkArg *args) |
1011 { | 1011 { |
1076 else | 1076 else |
1077 c_after = 1; | 1077 c_after = 1; |
1078 | 1078 |
1079 id = new_gui_id (); | 1079 id = new_gui_id (); |
1080 func = Fcons (cb_data, func); | 1080 func = Fcons (cb_data, func); |
1081 func = Fcons (make_int (id), func); | 1081 func = Fcons (make_fixnum (id), func); |
1082 | 1082 |
1083 gcpro_popup_callbacks (id, func); | 1083 gcpro_popup_callbacks (id, func); |
1084 | 1084 |
1085 gtk_signal_connect_full (XGTK_OBJECT (obj)->object, (char *) XSTRING_DATA (name), | 1085 gtk_signal_connect_full (XGTK_OBJECT (obj)->object, (char *) XSTRING_DATA (name), |
1086 NULL, __internal_callback_marshal, STORE_LISP_IN_VOID (func), | 1086 NULL, __internal_callback_marshal, STORE_LISP_IN_VOID (func), |
1204 | 1204 |
1205 if (t == GTK_TYPE_INVALID) | 1205 if (t == GTK_TYPE_INVALID) |
1206 { | 1206 { |
1207 invalid_argument ("Not a GTK type", type); | 1207 invalid_argument ("Not a GTK type", type); |
1208 } | 1208 } |
1209 return (make_int (GTK_FUNDAMENTAL_TYPE (t))); | 1209 return (make_fixnum (GTK_FUNDAMENTAL_TYPE (t))); |
1210 } | 1210 } |
1211 | 1211 |
1212 DEFUN ("gtk-object-type", Fgtk_object_type, 1, 1, 0, /* | 1212 DEFUN ("gtk-object-type", Fgtk_object_type, 1, 1, 0, /* |
1213 Return the GtkType of OBJECT. | 1213 Return the GtkType of OBJECT. |
1214 */ | 1214 */ |
1215 (object)) | 1215 (object)) |
1216 { | 1216 { |
1217 CHECK_GTK_OBJECT (object); | 1217 CHECK_GTK_OBJECT (object); |
1218 return (make_int (GTK_OBJECT_TYPE (XGTK_OBJECT (object)->object))); | 1218 return (make_fixnum (GTK_OBJECT_TYPE (XGTK_OBJECT (object)->object))); |
1219 } | 1219 } |
1220 | 1220 |
1221 DEFUN ("gtk-describe-type", Fgtk_describe_type, 1, 1, 0, /* | 1221 DEFUN ("gtk-describe-type", Fgtk_describe_type, 1, 1, 0, /* |
1222 Returns a cons of two lists describing the Gtk object TYPE. | 1222 Returns a cons of two lists describing the Gtk object TYPE. |
1223 The car is a list of all the signals that it will emit. | 1223 The car is a list of all the signals that it will emit. |
1243 invalid_argument ("Not a GTK type", type); | 1243 invalid_argument ("Not a GTK type", type); |
1244 } | 1244 } |
1245 } | 1245 } |
1246 else | 1246 else |
1247 { | 1247 { |
1248 CHECK_INT (type); | 1248 CHECK_FIXNUM (type); |
1249 t = XINT (type); | 1249 t = XFIXNUM (type); |
1250 } | 1250 } |
1251 | 1251 |
1252 if (GTK_FUNDAMENTAL_TYPE (t) != GTK_TYPE_OBJECT) | 1252 if (GTK_FUNDAMENTAL_TYPE (t) != GTK_TYPE_OBJECT) |
1253 { | 1253 { |
1254 invalid_argument ("Not a GtkObject", type); | 1254 invalid_argument ("Not a GtkObject", type); |
1471 case GTK_TYPE_UCHAR: | 1471 case GTK_TYPE_UCHAR: |
1472 return (make_char (GTK_VALUE_UCHAR (*arg))); | 1472 return (make_char (GTK_VALUE_UCHAR (*arg))); |
1473 case GTK_TYPE_BOOL: | 1473 case GTK_TYPE_BOOL: |
1474 return (GTK_VALUE_BOOL (*arg) ? Qt : Qnil); | 1474 return (GTK_VALUE_BOOL (*arg) ? Qt : Qnil); |
1475 case GTK_TYPE_INT: | 1475 case GTK_TYPE_INT: |
1476 return (make_int (GTK_VALUE_INT (*arg))); | 1476 return (make_fixnum (GTK_VALUE_INT (*arg))); |
1477 case GTK_TYPE_UINT: | 1477 case GTK_TYPE_UINT: |
1478 return (make_int (GTK_VALUE_INT (*arg))); | 1478 return (make_fixnum (GTK_VALUE_INT (*arg))); |
1479 case GTK_TYPE_LONG: /* I think these are wrong! */ | 1479 case GTK_TYPE_LONG: /* I think these are wrong! */ |
1480 return (make_int (GTK_VALUE_INT (*arg))); | 1480 return (make_fixnum (GTK_VALUE_INT (*arg))); |
1481 case GTK_TYPE_ULONG: /* I think these are wrong! */ | 1481 case GTK_TYPE_ULONG: /* I think these are wrong! */ |
1482 return (make_int (GTK_VALUE_INT (*arg))); | 1482 return (make_fixnum (GTK_VALUE_INT (*arg))); |
1483 case GTK_TYPE_FLOAT: | 1483 case GTK_TYPE_FLOAT: |
1484 return (make_float (GTK_VALUE_FLOAT (*arg))); | 1484 return (make_float (GTK_VALUE_FLOAT (*arg))); |
1485 case GTK_TYPE_DOUBLE: | 1485 case GTK_TYPE_DOUBLE: |
1486 return (make_float (GTK_VALUE_DOUBLE (*arg))); | 1486 return (make_float (GTK_VALUE_DOUBLE (*arg))); |
1487 case GTK_TYPE_STRING: | 1487 case GTK_TYPE_STRING: |
1581 */ | 1581 */ |
1582 GTK_VALUE_INT(*arg) = NILP (obj) ? 0 : 1; | 1582 GTK_VALUE_INT(*arg) = NILP (obj) ? 0 : 1; |
1583 } | 1583 } |
1584 else | 1584 else |
1585 { | 1585 { |
1586 CHECK_INT (obj); | 1586 CHECK_FIXNUM (obj); |
1587 GTK_VALUE_INT(*arg) = XINT (obj); | 1587 GTK_VALUE_INT(*arg) = XFIXNUM (obj); |
1588 } | 1588 } |
1589 break; | 1589 break; |
1590 case GTK_TYPE_LONG: | 1590 case GTK_TYPE_LONG: |
1591 case GTK_TYPE_ULONG: | 1591 case GTK_TYPE_ULONG: |
1592 ABORT(); | 1592 ABORT(); |
1593 case GTK_TYPE_FLOAT: | 1593 case GTK_TYPE_FLOAT: |
1594 CHECK_INT_OR_FLOAT (obj); | 1594 CHECK_FIXNUM_OR_FLOAT (obj); |
1595 GTK_VALUE_FLOAT(*arg) = extract_float (obj); | 1595 GTK_VALUE_FLOAT(*arg) = extract_float (obj); |
1596 break; | 1596 break; |
1597 case GTK_TYPE_DOUBLE: | 1597 case GTK_TYPE_DOUBLE: |
1598 CHECK_INT_OR_FLOAT (obj); | 1598 CHECK_FIXNUM_OR_FLOAT (obj); |
1599 GTK_VALUE_DOUBLE(*arg) = extract_float (obj); | 1599 GTK_VALUE_DOUBLE(*arg) = extract_float (obj); |
1600 break; | 1600 break; |
1601 case GTK_TYPE_STRING: | 1601 case GTK_TYPE_STRING: |
1602 if (NILP (obj)) | 1602 if (NILP (obj)) |
1603 GTK_VALUE_STRING (*arg) = NULL; | 1603 GTK_VALUE_STRING (*arg) = NULL; |
1759 { | 1759 { |
1760 GUI_ID id; | 1760 GUI_ID id; |
1761 | 1761 |
1762 id = new_gui_id (); | 1762 id = new_gui_id (); |
1763 obj = Fcons (Qnil, obj); /* Empty data */ | 1763 obj = Fcons (Qnil, obj); /* Empty data */ |
1764 obj = Fcons (make_int (id), obj); | 1764 obj = Fcons (make_fixnum (id), obj); |
1765 | 1765 |
1766 gcpro_popup_callbacks (id, obj); | 1766 gcpro_popup_callbacks (id, obj); |
1767 | 1767 |
1768 GTK_VALUE_CALLBACK(*arg).marshal = __internal_callback_marshal; | 1768 GTK_VALUE_CALLBACK(*arg).marshal = __internal_callback_marshal; |
1769 GTK_VALUE_CALLBACK(*arg).data = (gpointer) obj; | 1769 GTK_VALUE_CALLBACK(*arg).data = (gpointer) obj; |
1861 */ | 1861 */ |
1862 *(GTK_RETLOC_INT(*arg)) = NILP (obj) ? 0 : 1; | 1862 *(GTK_RETLOC_INT(*arg)) = NILP (obj) ? 0 : 1; |
1863 } | 1863 } |
1864 else | 1864 else |
1865 { | 1865 { |
1866 CHECK_INT (obj); | 1866 CHECK_FIXNUM (obj); |
1867 *(GTK_RETLOC_INT(*arg)) = XINT (obj); | 1867 *(GTK_RETLOC_INT(*arg)) = XFIXNUM (obj); |
1868 } | 1868 } |
1869 break; | 1869 break; |
1870 case GTK_TYPE_LONG: | 1870 case GTK_TYPE_LONG: |
1871 case GTK_TYPE_ULONG: | 1871 case GTK_TYPE_ULONG: |
1872 ABORT(); | 1872 ABORT(); |
1873 case GTK_TYPE_FLOAT: | 1873 case GTK_TYPE_FLOAT: |
1874 CHECK_INT_OR_FLOAT (obj); | 1874 CHECK_FIXNUM_OR_FLOAT (obj); |
1875 *(GTK_RETLOC_FLOAT(*arg)) = extract_float (obj); | 1875 *(GTK_RETLOC_FLOAT(*arg)) = extract_float (obj); |
1876 break; | 1876 break; |
1877 case GTK_TYPE_DOUBLE: | 1877 case GTK_TYPE_DOUBLE: |
1878 CHECK_INT_OR_FLOAT (obj); | 1878 CHECK_FIXNUM_OR_FLOAT (obj); |
1879 *(GTK_RETLOC_DOUBLE(*arg)) = extract_float (obj); | 1879 *(GTK_RETLOC_DOUBLE(*arg)) = extract_float (obj); |
1880 break; | 1880 break; |
1881 case GTK_TYPE_STRING: | 1881 case GTK_TYPE_STRING: |
1882 if (NILP (obj)) | 1882 if (NILP (obj)) |
1883 *(GTK_RETLOC_STRING (*arg)) = NULL; | 1883 *(GTK_RETLOC_STRING (*arg)) = NULL; |
2039 { | 2039 { |
2040 GUI_ID id; | 2040 GUI_ID id; |
2041 | 2041 |
2042 id = new_gui_id (); | 2042 id = new_gui_id (); |
2043 obj = Fcons (Qnil, obj); /* Empty data */ | 2043 obj = Fcons (Qnil, obj); /* Empty data */ |
2044 obj = Fcons (make_int (id), obj); | 2044 obj = Fcons (make_fixnum (id), obj); |
2045 | 2045 |
2046 gcpro_popup_callbacks (id, obj); | 2046 gcpro_popup_callbacks (id, obj); |
2047 | 2047 |
2048 *(GTK_RETLOC_CALLBACK(*arg)).marshal = __internal_callback_marshal; | 2048 *(GTK_RETLOC_CALLBACK(*arg)).marshal = __internal_callback_marshal; |
2049 *(GTK_RETLOC_CALLBACK(*arg)).data = (gpointer) obj; | 2049 *(GTK_RETLOC_CALLBACK(*arg)).data = (gpointer) obj; |
2102 { | 2102 { |
2103 Lisp_Object alist; | 2103 Lisp_Object alist; |
2104 | 2104 |
2105 if (NILP (Venumeration_info)) | 2105 if (NILP (Venumeration_info)) |
2106 { | 2106 { |
2107 Venumeration_info = call2 (intern ("make-hashtable"), make_int (100), Qequal); | 2107 Venumeration_info = call2 (intern ("make-hashtable"), make_fixnum (100), Qequal); |
2108 } | 2108 } |
2109 | 2109 |
2110 alist = Fgethash (make_int (t), Venumeration_info, Qnil); | 2110 alist = Fgethash (make_fixnum (t), Venumeration_info, Qnil); |
2111 | 2111 |
2112 if (NILP (alist)) | 2112 if (NILP (alist)) |
2113 { | 2113 { |
2114 import_gtk_enumeration_internal (t); | 2114 import_gtk_enumeration_internal (t); |
2115 alist = Fgethash (make_int (t), Venumeration_info, Qnil); | 2115 alist = Fgethash (make_fixnum (t), Venumeration_info, Qnil); |
2116 } | 2116 } |
2117 return (alist); | 2117 return (alist); |
2118 } | 2118 } |
2119 | 2119 |
2120 guint | 2120 guint |
2133 if (NILP (value)) | 2133 if (NILP (value)) |
2134 { | 2134 { |
2135 invalid_argument ("Unknown value", obj); | 2135 invalid_argument ("Unknown value", obj); |
2136 } | 2136 } |
2137 | 2137 |
2138 CHECK_INT (XCDR (value)); | 2138 CHECK_FIXNUM (XCDR (value)); |
2139 | 2139 |
2140 return (XINT (XCDR (value))); | 2140 return (XFIXNUM (XCDR (value))); |
2141 } | 2141 } |
2142 | 2142 |
2143 static guint | 2143 static guint |
2144 lisp_to_flag (Lisp_Object obj, GtkType t) | 2144 lisp_to_flag (Lisp_Object obj, GtkType t) |
2145 { | 2145 { |
2174 Lisp_Object rval = Qnil; | 2174 Lisp_Object rval = Qnil; |
2175 Lisp_Object alist = get_enumeration (t); | 2175 Lisp_Object alist = get_enumeration (t); |
2176 | 2176 |
2177 while (!NILP (alist)) | 2177 while (!NILP (alist)) |
2178 { | 2178 { |
2179 if (value & XINT (XCDR (XCAR (alist)))) | 2179 if (value & XFIXNUM (XCDR (XCAR (alist)))) |
2180 { | 2180 { |
2181 rval = Fcons (XCAR (XCAR (alist)), rval); | 2181 rval = Fcons (XCAR (XCAR (alist)), rval); |
2182 value &= ~(XINT (XCDR (XCAR (alist)))); | 2182 value &= ~(XFIXNUM (XCDR (XCAR (alist)))); |
2183 } | 2183 } |
2184 alist = XCDR (alist); | 2184 alist = XCDR (alist); |
2185 } | 2185 } |
2186 return (rval); | 2186 return (rval); |
2187 } | 2187 } |
2195 if (NILP (alist)) | 2195 if (NILP (alist)) |
2196 { | 2196 { |
2197 invalid_argument ("Unknown enumeration", build_cistring (gtk_type_name (t))); | 2197 invalid_argument ("Unknown enumeration", build_cistring (gtk_type_name (t))); |
2198 } | 2198 } |
2199 | 2199 |
2200 cell = Frassq (make_int (value), alist); | 2200 cell = Frassq (make_fixnum (value), alist); |
2201 | 2201 |
2202 return (NILP (cell) ? Qnil : XCAR (cell)); | 2202 return (NILP (cell) ? Qnil : XCAR (cell)); |
2203 } | 2203 } |