571 |
{ |
{ |
572 |
if (dpyinfo->bitmaps[id].refcount |
if (dpyinfo->bitmaps[id].refcount |
573 |
&& dpyinfo->bitmaps[id].file |
&& dpyinfo->bitmaps[id].file |
574 |
&& !strcmp (dpyinfo->bitmaps[id].file, (char *) XSTRING (file)->data)) |
&& !strcmp (dpyinfo->bitmaps[id].file, (char *) SDATA (file))) |
575 |
{ |
{ |
576 |
++dpyinfo->bitmaps[id].refcount; |
++dpyinfo->bitmaps[id].refcount; |
577 |
return id + 1; |
return id + 1; |
584 |
return -1; |
return -1; |
585 |
emacs_close (fd); |
emacs_close (fd); |
586 |
|
|
587 |
filename = (char *) XSTRING (found)->data; |
filename = (char *) SDATA (found); |
588 |
|
|
589 |
hinst = LoadLibraryEx (filename, NULL, LOAD_LIBRARY_AS_DATAFILE); |
hinst = LoadLibraryEx (filename, NULL, LOAD_LIBRARY_AS_DATAFILE); |
590 |
|
|
600 |
id = x_allocate_bitmap_record (f); |
id = x_allocate_bitmap_record (f); |
601 |
dpyinfo->bitmaps[id - 1].pixmap = bitmap; |
dpyinfo->bitmaps[id - 1].pixmap = bitmap; |
602 |
dpyinfo->bitmaps[id - 1].refcount = 1; |
dpyinfo->bitmaps[id - 1].refcount = 1; |
603 |
dpyinfo->bitmaps[id - 1].file = (char *) xmalloc (XSTRING (file)->size + 1); |
dpyinfo->bitmaps[id - 1].file = (char *) xmalloc (SCHARS (file) + 1); |
604 |
dpyinfo->bitmaps[id - 1].depth = 1; |
dpyinfo->bitmaps[id - 1].depth = 1; |
605 |
dpyinfo->bitmaps[id - 1].height = height; |
dpyinfo->bitmaps[id - 1].height = height; |
606 |
dpyinfo->bitmaps[id - 1].width = width; |
dpyinfo->bitmaps[id - 1].width = width; |
607 |
strcpy (dpyinfo->bitmaps[id - 1].file, XSTRING (file)->data); |
strcpy (dpyinfo->bitmaps[id - 1].file, SDATA (file)); |
608 |
|
|
609 |
return id; |
return id; |
610 |
#endif /* TODO */ |
#endif /* TODO */ |
1216 |
CHECK_STRING (filename); |
CHECK_STRING (filename); |
1217 |
abspath = Fexpand_file_name (filename, Qnil); |
abspath = Fexpand_file_name (filename, Qnil); |
1218 |
|
|
1219 |
fp = fopen (XSTRING (filename)->data, "rt"); |
fp = fopen (SDATA (filename), "rt"); |
1220 |
if (fp) |
if (fp) |
1221 |
{ |
{ |
1222 |
char buf[512]; |
char buf[512]; |
1556 |
|
|
1557 |
tem = Fcar (elt); |
tem = Fcar (elt); |
1558 |
|
|
1559 |
if (lstrcmpi (XSTRING (tem)->data, colorname) == 0) |
if (lstrcmpi (SDATA (tem), colorname) == 0) |
1560 |
{ |
{ |
1561 |
ret = XUINT (Fcdr (elt)); |
ret = XUINT (Fcdr (elt)); |
1562 |
break; |
break; |
1986 |
|
|
1987 |
CHECK_STRING (arg); |
CHECK_STRING (arg); |
1988 |
|
|
1989 |
if (strcmp (XSTRING (arg)->data, "black") == 0) |
if (strcmp (SDATA (arg), "black") == 0) |
1990 |
return BLACK_PIX_DEFAULT (f); |
return BLACK_PIX_DEFAULT (f); |
1991 |
else if (strcmp (XSTRING (arg)->data, "white") == 0) |
else if (strcmp (SDATA (arg), "white") == 0) |
1992 |
return WHITE_PIX_DEFAULT (f); |
return WHITE_PIX_DEFAULT (f); |
1993 |
|
|
1994 |
if ((FRAME_W32_DISPLAY_INFO (f)->n_planes * FRAME_W32_DISPLAY_INFO (f)->n_cbits) == 1) |
if ((FRAME_W32_DISPLAY_INFO (f)->n_planes * FRAME_W32_DISPLAY_INFO (f)->n_cbits) == 1) |
1996 |
|
|
1997 |
/* w32_defined_color is responsible for coping with failures |
/* w32_defined_color is responsible for coping with failures |
1998 |
by looking for a near-miss. */ |
by looking for a near-miss. */ |
1999 |
if (w32_defined_color (f, XSTRING (arg)->data, &cdef, 1)) |
if (w32_defined_color (f, SDATA (arg), &cdef, 1)) |
2000 |
return cdef.pixel; |
return cdef.pixel; |
2001 |
|
|
2002 |
/* defined_color failed; return an ultimate default. */ |
/* defined_color failed; return an ultimate default. */ |
2476 |
BLOCK_INPUT; |
BLOCK_INPUT; |
2477 |
|
|
2478 |
result = x_text_icon (f, |
result = x_text_icon (f, |
2479 |
(char *) XSTRING ((!NILP (f->icon_name) |
(char *) SDATA ((!NILP (f->icon_name) |
2480 |
? f->icon_name |
? f->icon_name |
2481 |
: !NILP (f->title) |
: !NILP (f->title) |
2482 |
? f->title |
? f->title |
2483 |
: f->name))->data); |
: f->name))); |
2484 |
|
|
2485 |
if (result) |
if (result) |
2486 |
{ |
{ |
2522 |
|
|
2523 |
BLOCK_INPUT; |
BLOCK_INPUT; |
2524 |
result = (STRINGP (fontset_name) |
result = (STRINGP (fontset_name) |
2525 |
? x_new_fontset (f, XSTRING (fontset_name)->data) |
? x_new_fontset (f, SDATA (fontset_name)) |
2526 |
: x_new_font (f, XSTRING (arg)->data)); |
: x_new_font (f, SDATA (arg))); |
2527 |
UNBLOCK_INPUT; |
UNBLOCK_INPUT; |
2528 |
|
|
2529 |
if (EQ (result, Qnil)) |
if (EQ (result, Qnil)) |
2530 |
error ("Font `%s' is not defined", XSTRING (arg)->data); |
error ("Font `%s' is not defined", SDATA (arg)); |
2531 |
else if (EQ (result, Qt)) |
else if (EQ (result, Qt)) |
2532 |
error ("The characters of the given font have varying widths"); |
error ("The characters of the given font have varying widths"); |
2533 |
else if (STRINGP (result)) |
else if (STRINGP (result)) |
2812 |
/* Check for no change needed in this very common case |
/* Check for no change needed in this very common case |
2813 |
before we do any consing. */ |
before we do any consing. */ |
2814 |
if (!strcmp (FRAME_W32_DISPLAY_INFO (f)->w32_id_name, |
if (!strcmp (FRAME_W32_DISPLAY_INFO (f)->w32_id_name, |
2815 |
XSTRING (f->name)->data)) |
SDATA (f->name))) |
2816 |
return; |
return; |
2817 |
name = build_string (FRAME_W32_DISPLAY_INFO (f)->w32_id_name); |
name = build_string (FRAME_W32_DISPLAY_INFO (f)->w32_id_name); |
2818 |
} |
} |
2836 |
name = ENCODE_SYSTEM (name); |
name = ENCODE_SYSTEM (name); |
2837 |
|
|
2838 |
BLOCK_INPUT; |
BLOCK_INPUT; |
2839 |
SetWindowText(FRAME_W32_WINDOW (f), XSTRING (name)->data); |
SetWindowText(FRAME_W32_WINDOW (f), SDATA (name)); |
2840 |
UNBLOCK_INPUT; |
UNBLOCK_INPUT; |
2841 |
} |
} |
2842 |
} |
} |
2896 |
name = ENCODE_SYSTEM (name); |
name = ENCODE_SYSTEM (name); |
2897 |
|
|
2898 |
BLOCK_INPUT; |
BLOCK_INPUT; |
2899 |
SetWindowText(FRAME_W32_WINDOW (f), XSTRING (name)->data); |
SetWindowText(FRAME_W32_WINDOW (f), SDATA (name)); |
2900 |
UNBLOCK_INPUT; |
UNBLOCK_INPUT; |
2901 |
} |
} |
2902 |
} |
} |
3002 |
|
|
3003 |
if (STRINGP (Vx_resource_name)) |
if (STRINGP (Vx_resource_name)) |
3004 |
{ |
{ |
3005 |
unsigned char *p = XSTRING (Vx_resource_name)->data; |
unsigned char *p = SDATA (Vx_resource_name); |
3006 |
int i; |
int i; |
3007 |
|
|
3008 |
len = STRING_BYTES (XSTRING (Vx_resource_name)); |
len = SBYTES (Vx_resource_name); |
3009 |
|
|
3010 |
/* Only letters, digits, - and _ are valid in resource names. |
/* Only letters, digits, - and _ are valid in resource names. |
3011 |
Count the valid characters and count the invalid ones. */ |
Count the valid characters and count the invalid ones. */ |
3044 |
|
|
3045 |
for (i = 0; i < len; i++) |
for (i = 0; i < len; i++) |
3046 |
{ |
{ |
3047 |
int c = XSTRING (new)->data[i]; |
int c = SREF (new, i); |
3048 |
if (! ((c >= 'a' && c <= 'z') |
if (! ((c >= 'a' && c <= 'z') |
3049 |
|| (c >= 'A' && c <= 'Z') |
|| (c >= 'A' && c <= 'Z') |
3050 |
|| (c >= '0' && c <= '9') |
|| (c >= '0' && c <= '9') |
3051 |
|| c == '-' || c == '_')) |
|| c == '-' || c == '_')) |
3052 |
XSTRING (new)->data[i] = '_'; |
SREF (new, i) = '_'; |
3053 |
} |
} |
3054 |
} |
} |
3055 |
|
|
3087 |
|
|
3088 |
/* Allocate space for the components, the dots which separate them, |
/* Allocate space for the components, the dots which separate them, |
3089 |
and the final '\0'. Make them big enough for the worst case. */ |
and the final '\0'. Make them big enough for the worst case. */ |
3090 |
name_key = (char *) alloca (STRING_BYTES (XSTRING (Vx_resource_name)) |
name_key = (char *) alloca (SBYTES (Vx_resource_name) |
3091 |
+ (STRINGP (component) |
+ (STRINGP (component) |
3092 |
? STRING_BYTES (XSTRING (component)) : 0) |
? SBYTES (component) : 0) |
3093 |
+ STRING_BYTES (XSTRING (attribute)) |
+ SBYTES (attribute) |
3094 |
+ 3); |
+ 3); |
3095 |
|
|
3096 |
class_key = (char *) alloca ((sizeof (EMACS_CLASS) - 1) |
class_key = (char *) alloca ((sizeof (EMACS_CLASS) - 1) |
3097 |
+ STRING_BYTES (XSTRING (class)) |
+ SBYTES (class) |
3098 |
+ (STRINGP (subclass) |
+ (STRINGP (subclass) |
3099 |
? STRING_BYTES (XSTRING (subclass)) : 0) |
? SBYTES (subclass) : 0) |
3100 |
+ 3); |
+ 3); |
3101 |
|
|
3102 |
/* Start with emacs.FRAMENAME for the name (the specific one) |
/* Start with emacs.FRAMENAME for the name (the specific one) |
3103 |
and with `Emacs' for the class key (the general one). */ |
and with `Emacs' for the class key (the general one). */ |
3104 |
strcpy (name_key, XSTRING (Vx_resource_name)->data); |
strcpy (name_key, SDATA (Vx_resource_name)); |
3105 |
strcpy (class_key, EMACS_CLASS); |
strcpy (class_key, EMACS_CLASS); |
3106 |
|
|
3107 |
strcat (class_key, "."); |
strcat (class_key, "."); |
3108 |
strcat (class_key, XSTRING (class)->data); |
strcat (class_key, SDATA (class)); |
3109 |
|
|
3110 |
if (!NILP (component)) |
if (!NILP (component)) |
3111 |
{ |
{ |
3112 |
strcat (class_key, "."); |
strcat (class_key, "."); |
3113 |
strcat (class_key, XSTRING (subclass)->data); |
strcat (class_key, SDATA (subclass)); |
3114 |
|
|
3115 |
strcat (name_key, "."); |
strcat (name_key, "."); |
3116 |
strcat (name_key, XSTRING (component)->data); |
strcat (name_key, SDATA (component)); |
3117 |
} |
} |
3118 |
|
|
3119 |
strcat (name_key, "."); |
strcat (name_key, "."); |
3120 |
strcat (name_key, XSTRING (attribute)->data); |
strcat (name_key, SDATA (attribute)); |
3121 |
|
|
3122 |
value = x_get_string_resource (Qnil, |
value = x_get_string_resource (Qnil, |
3123 |
name_key, class_key); |
name_key, class_key); |
3140 |
|
|
3141 |
/* Allocate space for the components, the dots which separate them, |
/* Allocate space for the components, the dots which separate them, |
3142 |
and the final '\0'. */ |
and the final '\0'. */ |
3143 |
name_key = (char *) alloca (STRING_BYTES (XSTRING (Vinvocation_name)) |
name_key = (char *) alloca (SBYTES (Vinvocation_name) |
3144 |
+ strlen (attribute) + 2); |
+ strlen (attribute) + 2); |
3145 |
class_key = (char *) alloca ((sizeof (EMACS_CLASS) - 1) |
class_key = (char *) alloca ((sizeof (EMACS_CLASS) - 1) |
3146 |
+ strlen (class) + 2); |
+ strlen (class) + 2); |
3147 |
|
|
3148 |
sprintf (name_key, "%s.%s", |
sprintf (name_key, "%s.%s", |
3149 |
XSTRING (Vinvocation_name)->data, |
SDATA (Vinvocation_name), |
3150 |
attribute); |
attribute); |
3151 |
sprintf (class_key, "%s.%s", EMACS_CLASS, class); |
sprintf (class_key, "%s.%s", EMACS_CLASS, class); |
3152 |
|
|
3201 |
switch (type) |
switch (type) |
3202 |
{ |
{ |
3203 |
case RES_TYPE_NUMBER: |
case RES_TYPE_NUMBER: |
3204 |
return make_number (atoi (XSTRING (tem)->data)); |
return make_number (atoi (SDATA (tem))); |
3205 |
|
|
3206 |
case RES_TYPE_FLOAT: |
case RES_TYPE_FLOAT: |
3207 |
return make_float (atof (XSTRING (tem)->data)); |
return make_float (atof (SDATA (tem))); |
3208 |
|
|
3209 |
case RES_TYPE_BOOLEAN: |
case RES_TYPE_BOOLEAN: |
3210 |
tem = Fdowncase (tem); |
tem = Fdowncase (tem); |
3211 |
if (!strcmp (XSTRING (tem)->data, "on") |
if (!strcmp (SDATA (tem), "on") |
3212 |
|| !strcmp (XSTRING (tem)->data, "true")) |
|| !strcmp (SDATA (tem), "true")) |
3213 |
return Qt; |
return Qt; |
3214 |
else |
else |
3215 |
return Qnil; |
return Qnil; |
3223 |
{ |
{ |
3224 |
Lisp_Object lower; |
Lisp_Object lower; |
3225 |
lower = Fdowncase (tem); |
lower = Fdowncase (tem); |
3226 |
if (!strcmp (XSTRING (lower)->data, "on") |
if (!strcmp (SDATA (lower), "on") |
3227 |
|| !strcmp (XSTRING (lower)->data, "true")) |
|| !strcmp (SDATA (lower), "true")) |
3228 |
return Qt; |
return Qt; |
3229 |
else if (!strcmp (XSTRING (lower)->data, "off") |
else if (!strcmp (SDATA (lower), "off") |
3230 |
|| !strcmp (XSTRING (lower)->data, "false")) |
|| !strcmp (SDATA (lower), "false")) |
3231 |
return Qnil; |
return Qnil; |
3232 |
else |
else |
3233 |
return Fintern (tem, Qnil); |
return Fintern (tem, Qnil); |
3284 |
|
|
3285 |
CHECK_STRING (string); |
CHECK_STRING (string); |
3286 |
|
|
3287 |
geometry = XParseGeometry ((char *) XSTRING (string)->data, |
geometry = XParseGeometry ((char *) SDATA (string), |
3288 |
&x, &y, &width, &height); |
&x, &y, &width, &height); |
3289 |
|
|
3290 |
result = Qnil; |
result = Qnil; |
5342 |
Elsewhere we specify the window name for the window manager. */ |
Elsewhere we specify the window name for the window manager. */ |
5343 |
|
|
5344 |
{ |
{ |
5345 |
char *str = (char *) XSTRING (Vx_resource_name)->data; |
char *str = (char *) SDATA (Vx_resource_name); |
5346 |
f->namebuf = (char *) xmalloc (strlen (str) + 1); |
f->namebuf = (char *) xmalloc (strlen (str) + 1); |
5347 |
strcpy (f->namebuf, str); |
strcpy (f->namebuf, str); |
5348 |
} |
} |
5409 |
? IconicState |
? IconicState |
5410 |
: NormalState)); |
: NormalState)); |
5411 |
|
|
5412 |
x_text_icon (f, (char *) XSTRING ((!NILP (f->icon_name) |
x_text_icon (f, (char *) SDATA ((!NILP (f->icon_name) |
5413 |
? f->icon_name |
? f->icon_name |
5414 |
: f->name))->data); |
: f->name))); |
5415 |
#endif |
#endif |
5416 |
|
|
5417 |
UNBLOCK_INPUT; |
UNBLOCK_INPUT; |
5621 |
{ |
{ |
5622 |
tem = Fquery_fontset (font, Qnil); |
tem = Fquery_fontset (font, Qnil); |
5623 |
if (STRINGP (tem)) |
if (STRINGP (tem)) |
5624 |
font = x_new_fontset (f, XSTRING (tem)->data); |
font = x_new_fontset (f, SDATA (tem)); |
5625 |
else |
else |
5626 |
font = x_new_font (f, XSTRING (font)->data); |
font = x_new_font (f, SDATA (font)); |
5627 |
} |
} |
5628 |
/* Try out a font which we hope has bold and italic variations. */ |
/* Try out a font which we hope has bold and italic variations. */ |
5629 |
if (!STRINGP (font)) |
if (!STRINGP (font)) |
5912 |
for (tail = font_names; CONSP (tail); tail = XCDR (tail)) |
for (tail = font_names; CONSP (tail); tail = XCDR (tail)) |
5913 |
if (dpyinfo->font_table[i].name |
if (dpyinfo->font_table[i].name |
5914 |
&& (!strcmp (dpyinfo->font_table[i].name, |
&& (!strcmp (dpyinfo->font_table[i].name, |
5915 |
XSTRING (XCAR (tail))->data) |
SDATA (XCAR (tail))) |
5916 |
|| !strcmp (dpyinfo->font_table[i].full_name, |
|| !strcmp (dpyinfo->font_table[i].full_name, |
5917 |
XSTRING (XCAR (tail))->data))) |
SDATA (XCAR (tail))))) |
5918 |
return (dpyinfo->font_table + i); |
return (dpyinfo->font_table + i); |
5919 |
|
|
5920 |
fontname = (char *) XSTRING (XCAR (font_names))->data; |
fontname = (char *) SDATA (XCAR (font_names)); |
5921 |
} |
} |
5922 |
else if (w32_strict_fontnames) |
else if (w32_strict_fontnames) |
5923 |
{ |
{ |
6125 |
char *bdf_name, *bdf_file; |
char *bdf_name, *bdf_file; |
6126 |
Lisp_Object bdf_pair; |
Lisp_Object bdf_pair; |
6127 |
|
|
6128 |
bdf_name = XSTRING (XCAR (bdf_fonts))->data; |
bdf_name = SDATA (XCAR (bdf_fonts)); |
6129 |
bdf_pair = Fassoc (XCAR (bdf_fonts), Vw32_bdf_filename_alist); |
bdf_pair = Fassoc (XCAR (bdf_fonts), Vw32_bdf_filename_alist); |
6130 |
bdf_file = XSTRING (XCDR (bdf_pair))->data; |
bdf_file = SDATA (XCDR (bdf_pair)); |
6131 |
|
|
6132 |
retval = w32_load_bdf_font (f, bdf_name, size, bdf_file); |
retval = w32_load_bdf_font (f, bdf_name, size, bdf_file); |
6133 |
|
|
6413 |
|| !SYMBOLP (XCAR (XCDR (this_entry)))) |
|| !SYMBOLP (XCAR (XCDR (this_entry)))) |
6414 |
continue; |
continue; |
6415 |
|
|
6416 |
x_charset = XSTRING (XCAR (this_entry))->data; |
x_charset = SDATA (XCAR (this_entry)); |
6417 |
w32_charset = XCAR (XCDR (this_entry)); |
w32_charset = XCAR (XCDR (this_entry)); |
6418 |
codepage = XCDR (XCDR (this_entry)); |
codepage = XCDR (XCDR (this_entry)); |
6419 |
|
|
7196 |
|
|
7197 |
if (!NILP (lpef->pattern)) |
if (!NILP (lpef->pattern)) |
7198 |
{ |
{ |
7199 |
charset = xlfd_charset_of_font (XSTRING(lpef->pattern)->data); |
charset = xlfd_charset_of_font (SDATA (lpef->pattern)); |
7200 |
|
|
7201 |
/* We already checked charsets above, but DEFAULT_CHARSET |
/* We already checked charsets above, but DEFAULT_CHARSET |
7202 |
slipped through. So only allow exact matches for DEFAULT_CHARSET. */ |
slipped through. So only allow exact matches for DEFAULT_CHARSET. */ |
7216 |
for ( ; CONSP (charset_list); charset_list = Fcdr (charset_list)) |
for ( ; CONSP (charset_list); charset_list = Fcdr (charset_list)) |
7217 |
{ |
{ |
7218 |
Lisp_Object this_charset = Fcar (charset_list); |
Lisp_Object this_charset = Fcar (charset_list); |
7219 |
charset = XSTRING (this_charset)->data; |
charset = SDATA (this_charset); |
7220 |
|
|
7221 |
/* List bold and italic variations if w32-enable-synthesized-fonts |
/* List bold and italic variations if w32-enable-synthesized-fonts |
7222 |
is non-nil and this is a plain font. */ |
is non-nil and this is a plain font. */ |
7261 |
return; |
return; |
7262 |
|
|
7263 |
if (NILP (lpef->pattern) |
if (NILP (lpef->pattern) |
7264 |
|| w32_font_match (buf, XSTRING (lpef->pattern)->data)) |
|| w32_font_match (buf, SDATA (lpef->pattern))) |
7265 |
{ |
{ |
7266 |
/* Check if we already listed this font. This may happen if |
/* Check if we already listed this font. This may happen if |
7267 |
w32_enable_synthesized_fonts is non-nil, and there are real |
w32_enable_synthesized_fonts is non-nil, and there are real |
7335 |
int n_fonts = 0; |
int n_fonts = 0; |
7336 |
|
|
7337 |
list = Vw32_bdf_filename_alist; |
list = Vw32_bdf_filename_alist; |
7338 |
ptnstr = XSTRING (pattern)->data; |
ptnstr = SDATA (pattern); |
7339 |
|
|
7340 |
for ( ; CONSP (list); list = XCDR (list)) |
for ( ; CONSP (list); list = XCDR (list)) |
7341 |
{ |
{ |
7342 |
tem = XCAR (list); |
tem = XCAR (list); |
7343 |
if (CONSP (tem)) |
if (CONSP (tem)) |
7344 |
fontname = XSTRING (XCAR (tem))->data; |
fontname = SDATA (XCAR (tem)); |
7345 |
else if (STRINGP (tem)) |
else if (STRINGP (tem)) |
7346 |
fontname = XSTRING (tem)->data; |
fontname = SDATA (tem); |
7347 |
else |
else |
7348 |
continue; |
continue; |
7349 |
|
|
7395 |
|
|
7396 |
/* Avoid expensive EnumFontFamilies functions if we are not |
/* Avoid expensive EnumFontFamilies functions if we are not |
7397 |
going to be able to output one of these anyway. */ |
going to be able to output one of these anyway. */ |
7398 |
codepage = w32_codepage_for_font (XSTRING (tpat)->data); |
codepage = w32_codepage_for_font (SDATA (tpat)); |
7399 |
if (codepage != CP_8BIT && codepage != CP_UNICODE |
if (codepage != CP_8BIT && codepage != CP_UNICODE |
7400 |
&& codepage != CP_DEFAULT && codepage != CP_UNKNOWN |
&& codepage != CP_DEFAULT && codepage != CP_UNKNOWN |
7401 |
&& !IsValidCodePage(codepage)) |
&& !IsValidCodePage(codepage)) |
7422 |
/* Use EnumFontFamiliesEx where it is available, as it knows |
/* Use EnumFontFamiliesEx where it is available, as it knows |
7423 |
about character sets. Fall back to EnumFontFamilies for |
about character sets. Fall back to EnumFontFamilies for |
7424 |
older versions of NT that don't support the 'Ex function. */ |
older versions of NT that don't support the 'Ex function. */ |
7425 |
x_to_w32_font (XSTRING (tpat)->data, &ef.logfont); |
x_to_w32_font (SDATA (tpat), &ef.logfont); |
7426 |
{ |
{ |
7427 |
LOGFONT font_match_pattern; |
LOGFONT font_match_pattern; |
7428 |
HMODULE gdi32 = GetModuleHandle ("gdi32.dll"); |
HMODULE gdi32 = GetModuleHandle ("gdi32.dll"); |
7492 |
HDC hdc; |
HDC hdc; |
7493 |
HANDLE oldobj; |
HANDLE oldobj; |
7494 |
|
|
7495 |
if (!x_to_w32_font (XSTRING (XCAR (tem))->data, &lf)) |
if (!x_to_w32_font (SDATA (XCAR (tem)), &lf)) |
7496 |
continue; |
continue; |
7497 |
|
|
7498 |
BLOCK_INPUT; |
BLOCK_INPUT; |
7639 |
for ( ; CONSP(filelist); filelist = XCDR (filelist)) |
for ( ; CONSP(filelist); filelist = XCDR (filelist)) |
7640 |
{ |
{ |
7641 |
Lisp_Object filename = XCAR (filelist); |
Lisp_Object filename = XCAR (filelist); |
7642 |
if (w32_BDF_to_x_font (XSTRING (filename)->data, fontname, 100)) |
if (w32_BDF_to_x_font (SDATA (filename), fontname, 100)) |
7643 |
store_in_alist (&list, build_string (fontname), filename); |
store_in_alist (&list, build_string (fontname), filename); |
7644 |
} |
} |
7645 |
return list; |
return list; |
7684 |
|
|
7685 |
CHECK_STRING (color); |
CHECK_STRING (color); |
7686 |
|
|
7687 |
if (w32_defined_color (f, XSTRING (color)->data, &foo, 0)) |
if (w32_defined_color (f, SDATA (color), &foo, 0)) |
7688 |
return Qt; |
return Qt; |
7689 |
else |
else |
7690 |
return Qnil; |
return Qnil; |
7700 |
|
|
7701 |
CHECK_STRING (color); |
CHECK_STRING (color); |
7702 |
|
|
7703 |
if (w32_defined_color (f, XSTRING (color)->data, &foo, 0)) |
if (w32_defined_color (f, SDATA (color), &foo, 0)) |
7704 |
{ |
{ |
7705 |
Lisp_Object rgb[3]; |
Lisp_Object rgb[3]; |
7706 |
|
|
8031 |
validate_x_resource_name (); |
validate_x_resource_name (); |
8032 |
|
|
8033 |
dpyinfo = w32_term_init (name, (unsigned char *)0, |
dpyinfo = w32_term_init (name, (unsigned char *)0, |
8034 |
(char *) XSTRING (Vx_resource_name)->data); |
(char *) SDATA (Vx_resource_name)); |
8035 |
|
|
8036 |
if (dpyinfo == 0) |
if (dpyinfo == 0) |
8037 |
error ("Cannot connect to server %s", XSTRING (name)->data); |
error ("Cannot connect to server %s", SDATA (name)); |
8038 |
|
|
8039 |
w32_in_use = 1; |
w32_in_use = 1; |
8040 |
XSETFASTINT (Vwindow_system_version, 3); |
XSETFASTINT (Vwindow_system_version, 3); |
8089 |
Vw32_color_map = Fw32_default_color_map (); |
Vw32_color_map = Fw32_default_color_map (); |
8090 |
|
|
8091 |
if (! NILP (xrm_string)) |
if (! NILP (xrm_string)) |
8092 |
xrm_option = (unsigned char *) XSTRING (xrm_string)->data; |
xrm_option = (unsigned char *) SDATA (xrm_string); |
8093 |
else |
else |
8094 |
xrm_option = (unsigned char *) 0; |
xrm_option = (unsigned char *) 0; |
8095 |
|
|
8098 |
{ |
{ |
8099 |
char basename[ MAX_PATH ], *str; |
char basename[ MAX_PATH ], *str; |
8100 |
|
|
8101 |
strcpy (basename, XSTRING (Vinvocation_name)->data); |
strcpy (basename, SDATA (Vinvocation_name)); |
8102 |
str = strrchr (basename, '.'); |
str = strrchr (basename, '.'); |
8103 |
if (str) *str = 0; |
if (str) *str = 0; |
8104 |
Vinvocation_name = build_string (basename); |
Vinvocation_name = build_string (basename); |
8110 |
/* This is what opens the connection and sets x_current_display. |
/* This is what opens the connection and sets x_current_display. |
8111 |
This also initializes many symbols, such as those used for input. */ |
This also initializes many symbols, such as those used for input. */ |
8112 |
dpyinfo = w32_term_init (display, xrm_option, |
dpyinfo = w32_term_init (display, xrm_option, |
8113 |
(char *) XSTRING (Vx_resource_name)->data); |
(char *) SDATA (Vx_resource_name)); |
8114 |
|
|
8115 |
if (dpyinfo == 0) |
if (dpyinfo == 0) |
8116 |
{ |
{ |
8117 |
if (!NILP (must_succeed)) |
if (!NILP (must_succeed)) |
8118 |
fatal ("Cannot connect to server %s.\n", |
fatal ("Cannot connect to server %s.\n", |
8119 |
XSTRING (display)->data); |
SDATA (display)); |
8120 |
else |
else |
8121 |
error ("Cannot connect to server %s", XSTRING (display)->data); |
error ("Cannot connect to server %s", SDATA (display)); |
8122 |
} |
} |
8123 |
|
|
8124 |
w32_in_use = 1; |
w32_in_use = 1; |
8402 |
|
|
8403 |
/* Find key in KEYWORDS. Error if not found. */ |
/* Find key in KEYWORDS. Error if not found. */ |
8404 |
for (i = 0; i < nkeywords; ++i) |
for (i = 0; i < nkeywords; ++i) |
8405 |
if (strcmp (keywords[i].name, XSTRING (SYMBOL_NAME (key))->data) == 0) |
if (strcmp (keywords[i].name, SDATA (SYMBOL_NAME (key))) == 0) |
8406 |
break; |
break; |
8407 |
|
|
8408 |
if (i == nkeywords) |
if (i == nkeywords) |
8916 |
|
|
8917 |
xassert (STRINGP (color_name)); |
xassert (STRINGP (color_name)); |
8918 |
|
|
8919 |
if (w32_defined_color (f, XSTRING (color_name)->data, &color, 1)) |
if (w32_defined_color (f, SDATA (color_name), &color, 1)) |
8920 |
{ |
{ |
8921 |
/* This isn't called frequently so we get away with simply |
/* This isn't called frequently so we get away with simply |
8922 |
reallocating the color vector to the needed size, here. */ |
reallocating the color vector to the needed size, here. */ |
9694 |
|
|
9695 |
if (STRINGP (elt)) |
if (STRINGP (elt)) |
9696 |
{ |
{ |
9697 |
if (XSTRING (elt)->size |
if (SCHARS (elt) |
9698 |
< (width + BITS_PER_CHAR - 1) / BITS_PER_CHAR) |
< (width + BITS_PER_CHAR - 1) / BITS_PER_CHAR) |
9699 |
return 0; |
return 0; |
9700 |
} |
} |
9709 |
} |
} |
9710 |
else if (STRINGP (data)) |
else if (STRINGP (data)) |
9711 |
{ |
{ |
9712 |
if (XSTRING (data)->size |
if (SCHARS (data) |
9713 |
< (width + BITS_PER_CHAR - 1) / BITS_PER_CHAR * height) |
< (width + BITS_PER_CHAR - 1) / BITS_PER_CHAR * height) |
9714 |
return 0; |
return 0; |
9715 |
} |
} |
10073 |
{ |
{ |
10074 |
int w, h; |
int w, h; |
10075 |
return (STRINGP (data) |
return (STRINGP (data) |
10076 |
&& xbm_read_bitmap_data (XSTRING (data)->data, |
&& xbm_read_bitmap_data (SDATA (data), |
10077 |
(XSTRING (data)->data |
(SDATA (data) |
10078 |
+ STRING_BYTES (XSTRING (data))), |
+ SBYTES (data)), |
10079 |
&w, &h, NULL)); |
&w, &h, NULL)); |
10080 |
} |
} |
10081 |
|
|
10111 |
return 0; |
return 0; |
10112 |
} |
} |
10113 |
|
|
10114 |
contents = slurp_file (XSTRING (file)->data, &size); |
contents = slurp_file (SDATA (file), &size); |
10115 |
if (contents == NULL) |
if (contents == NULL) |
10116 |
{ |
{ |
10117 |
image_error ("Error loading XBM image `%s'", img->spec, Qnil); |
image_error ("Error loading XBM image `%s'", img->spec, Qnil); |
10161 |
background); |
background); |
10162 |
|
|
10163 |
if (in_memory_file_p) |
if (in_memory_file_p) |
10164 |
success_p = xbm_load_image (f, img, XSTRING (data)->data, |
success_p = xbm_load_image (f, img, SDATA (data), |
10165 |
(XSTRING (data)->data |
(SDATA (data) |
10166 |
+ STRING_BYTES (XSTRING (data)))); |
+ SBYTES (data))); |
10167 |
else |
else |
10168 |
{ |
{ |
10169 |
if (VECTORP (data)) |
if (VECTORP (data)) |
10177 |
{ |
{ |
10178 |
Lisp_Object line = XVECTOR (data)->contents[i]; |
Lisp_Object line = XVECTOR (data)->contents[i]; |
10179 |
if (STRINGP (line)) |
if (STRINGP (line)) |
10180 |
bcopy (XSTRING (line)->data, p, nbytes); |
bcopy (SDATA (line), p, nbytes); |
10181 |
else |
else |
10182 |
bcopy (XBOOL_VECTOR (line)->data, p, nbytes); |
bcopy (XBOOL_VECTOR (line)->data, p, nbytes); |
10183 |
} |
} |
10184 |
} |
} |
10185 |
else if (STRINGP (data)) |
else if (STRINGP (data)) |
10186 |
bits = XSTRING (data)->data; |
bits = SDATA (data); |
10187 |
else |
else |
10188 |
bits = XBOOL_VECTOR (data)->data; |
bits = XBOOL_VECTOR (data)->data; |
10189 |
|
|
10372 |
{ |
{ |
10373 |
Lisp_Object name = XCAR (XCAR (tail)); |
Lisp_Object name = XCAR (XCAR (tail)); |
10374 |
Lisp_Object color = XCDR (XCAR (tail)); |
Lisp_Object color = XCDR (XCAR (tail)); |
10375 |
xpm_syms[i].name = (char *) alloca (XSTRING (name)->size + 1); |
xpm_syms[i].name = (char *) alloca (SCHARS (name) + 1); |
10376 |
strcpy (xpm_syms[i].name, XSTRING (name)->data); |
strcpy (xpm_syms[i].name, SDATA (name)); |
10377 |
xpm_syms[i].value = (char *) alloca (XSTRING (color)->size + 1); |
xpm_syms[i].value = (char *) alloca (SCHARS (color) + 1); |
10378 |
strcpy (xpm_syms[i].value, XSTRING (color)->data); |
strcpy (xpm_syms[i].value, SDATA (color)); |
10379 |
} |
} |
10380 |
} |
} |
10381 |
|
|
10394 |
} |
} |
10395 |
|
|
10396 |
rc = XpmReadFileToPixmap (NULL, FRAME_W32_WINDOW (f), |
rc = XpmReadFileToPixmap (NULL, FRAME_W32_WINDOW (f), |
10397 |
XSTRING (file)->data, &img->pixmap, &img->mask, |
SDATA (file), &img->pixmap, &img->mask, |
10398 |
&attrs); |
&attrs); |
10399 |
} |
} |
10400 |
else |
else |
10401 |
{ |
{ |
10402 |
Lisp_Object buffer = image_spec_value (img->spec, QCdata, NULL); |
Lisp_Object buffer = image_spec_value (img->spec, QCdata, NULL); |
10403 |
rc = XpmCreatePixmapFromBuffer (NULL, FRAME_W32_WINDOW (f), |
rc = XpmCreatePixmapFromBuffer (NULL, FRAME_W32_WINDOW (f), |
10404 |
XSTRING (buffer)->data, |
SDATA (buffer), |
10405 |
&img->pixmap, &img->mask, |
&img->pixmap, &img->mask, |
10406 |
&attrs); |
&attrs); |
10407 |
} |
} |
11218 |
char *buf = NULL; |
char *buf = NULL; |
11219 |
struct stat st; |
struct stat st; |
11220 |
|
|
11221 |
if (stat (XSTRING (file)->data, &st) == 0 |
if (stat (SDATA (file), &st) == 0 |
11222 |
&& (fp = fopen (XSTRING (file)->data, "r")) != NULL |
&& (fp = fopen (SDATA (file), "r")) != NULL |
11223 |
&& (buf = (char *) xmalloc (st.st_size), |
&& (buf = (char *) xmalloc (st.st_size), |
11224 |
fread (buf, 1, st.st_size, fp) == st.st_size)) |
fread (buf, 1, st.st_size, fp) == st.st_size)) |
11225 |
{ |
{ |
11272 |
return 0; |
return 0; |
11273 |
} |
} |
11274 |
|
|
11275 |
contents = slurp_file (XSTRING (file)->data, &size); |
contents = slurp_file (SDATA (file), &size); |
11276 |
if (contents == NULL) |
if (contents == NULL) |
11277 |
{ |
{ |
11278 |
image_error ("Error reading `%s'", file, Qnil); |
image_error ("Error reading `%s'", file, Qnil); |
11287 |
{ |
{ |
11288 |
Lisp_Object data; |
Lisp_Object data; |
11289 |
data = image_spec_value (img->spec, QCdata, NULL); |
data = image_spec_value (img->spec, QCdata, NULL); |
11290 |
p = XSTRING (data)->data; |
p = SDATA (data); |
11291 |
end = p + STRING_BYTES (XSTRING (data)); |
end = p + SBYTES (data); |
11292 |
} |
} |
11293 |
|
|
11294 |
/* Check magic number. */ |
/* Check magic number. */ |
11644 |
} |
} |
11645 |
|
|
11646 |
/* Open the image file. */ |
/* Open the image file. */ |
11647 |
fp = fopen (XSTRING (file)->data, "rb"); |
fp = fopen (SDATA (file), "rb"); |
11648 |
if (!fp) |
if (!fp) |
11649 |
{ |
{ |
11650 |
image_error ("Cannot open image file `%s'", file, Qnil); |
image_error ("Cannot open image file `%s'", file, Qnil); |
11666 |
else |
else |
11667 |
{ |
{ |
11668 |
/* Read from memory. */ |
/* Read from memory. */ |
11669 |
tbr.bytes = XSTRING (specified_data)->data; |
tbr.bytes = SDATA (specified_data); |
11670 |
tbr.len = STRING_BYTES (XSTRING (specified_data)); |
tbr.len = SBYTES (specified_data); |
11671 |
tbr.index = 0; |
tbr.index = 0; |
11672 |
|
|
11673 |
/* Check PNG signature. */ |
/* Check PNG signature. */ |
11793 |
/* The user specified `:background', use that. */ |
/* The user specified `:background', use that. */ |
11794 |
{ |
{ |
11795 |
COLORREF color; |
COLORREF color; |
11796 |
if (w32_defined_color (f, XSTRING (specified_bg)->data, &color, 0)) |
if (w32_defined_color (f, SDATA (specified_bg), &color, 0)) |
11797 |
{ |
{ |
11798 |
png_color_16 user_bg; |
png_color_16 user_bg; |
11799 |
|
|
12213 |
return 0; |
return 0; |
12214 |
} |
} |
12215 |
|
|
12216 |
fp = fopen (XSTRING (file)->data, "r"); |
fp = fopen (SDATA (file), "r"); |
12217 |
if (fp == NULL) |
if (fp == NULL) |
12218 |
{ |
{ |
12219 |
image_error ("Cannot open `%s'", file, Qnil); |
image_error ("Cannot open `%s'", file, Qnil); |
12260 |
if (NILP (specified_data)) |
if (NILP (specified_data)) |
12261 |
jpeg_stdio_src (&cinfo, fp); |
jpeg_stdio_src (&cinfo, fp); |
12262 |
else |
else |
12263 |
jpeg_memory_src (&cinfo, XSTRING (specified_data)->data, |
jpeg_memory_src (&cinfo, SDATA (specified_data), |
12264 |
STRING_BYTES (XSTRING (specified_data))); |
SBYTES (specified_data)); |
12265 |
|
|
12266 |
jpeg_read_header (&cinfo, TRUE); |
jpeg_read_header (&cinfo, TRUE); |
12267 |
|
|
12604 |
} |
} |
12605 |
|
|
12606 |
/* Try to open the image file. */ |
/* Try to open the image file. */ |
12607 |
tiff = TIFFOpen (XSTRING (file)->data, "r"); |
tiff = TIFFOpen (SDATA (file), "r"); |
12608 |
if (tiff == NULL) |
if (tiff == NULL) |
12609 |
{ |
{ |
12610 |
image_error ("Cannot open `%s'", file, Qnil); |
image_error ("Cannot open `%s'", file, Qnil); |
12615 |
else |
else |
12616 |
{ |
{ |
12617 |
/* Memory source! */ |
/* Memory source! */ |
12618 |
memsrc.bytes = XSTRING (specified_data)->data; |
memsrc.bytes = SDATA (specified_data); |
12619 |
memsrc.len = STRING_BYTES (XSTRING (specified_data)); |
memsrc.len = SBYTES (specified_data); |
12620 |
memsrc.index = 0; |
memsrc.index = 0; |
12621 |
|
|
12622 |
tiff = TIFFClientOpen ("memory_source", "r", &memsrc, |
tiff = TIFFClientOpen ("memory_source", "r", &memsrc, |
12852 |
} |
} |
12853 |
|
|
12854 |
/* Open the GIF file. */ |
/* Open the GIF file. */ |
12855 |
gif = DGifOpenFileName (XSTRING (file)->data); |
gif = DGifOpenFileName (SDATA (file)); |
12856 |
if (gif == NULL) |
if (gif == NULL) |
12857 |
{ |
{ |
12858 |
image_error ("Cannot open `%s'", file, Qnil); |
image_error ("Cannot open `%s'", file, Qnil); |
12864 |
{ |
{ |
12865 |
/* Read from memory! */ |
/* Read from memory! */ |
12866 |
current_gif_memory_src = &memsrc; |
current_gif_memory_src = &memsrc; |
12867 |
memsrc.bytes = XSTRING (specified_data)->data; |
memsrc.bytes = SDATA (specified_data); |
12868 |
memsrc.len = STRING_BYTES (XSTRING (specified_data)); |
memsrc.len = SBYTES (specified_data); |
12869 |
memsrc.index = 0; |
memsrc.index = 0; |
12870 |
|
|
12871 |
gif = DGifOpen(&memsrc, gif_read_from_memory); |
gif = DGifOpen(&memsrc, gif_read_from_memory); |
13323 |
CHECK_STRING (value); |
CHECK_STRING (value); |
13324 |
|
|
13325 |
BLOCK_INPUT; |
BLOCK_INPUT; |
13326 |
prop_atom = XInternAtom (FRAME_W32_DISPLAY (f), XSTRING (prop)->data, False); |
prop_atom = XInternAtom (FRAME_W32_DISPLAY (f), SDATA (prop), False); |
13327 |
XChangeProperty (FRAME_W32_DISPLAY (f), FRAME_W32_WINDOW (f), |
XChangeProperty (FRAME_W32_DISPLAY (f), FRAME_W32_WINDOW (f), |
13328 |
prop_atom, XA_STRING, 8, PropModeReplace, |
prop_atom, XA_STRING, 8, PropModeReplace, |
13329 |
XSTRING (value)->data, XSTRING (value)->size); |
SDATA (value), SCHARS (value)); |
13330 |
|
|
13331 |
/* Make sure the property is set when we return. */ |
/* Make sure the property is set when we return. */ |
13332 |
XFlush (FRAME_W32_DISPLAY (f)); |
XFlush (FRAME_W32_DISPLAY (f)); |
13352 |
|
|
13353 |
CHECK_STRING (prop); |
CHECK_STRING (prop); |
13354 |
BLOCK_INPUT; |
BLOCK_INPUT; |
13355 |
prop_atom = XInternAtom (FRAME_W32_DISPLAY (f), XSTRING (prop)->data, False); |
prop_atom = XInternAtom (FRAME_W32_DISPLAY (f), SDATA (prop), False); |
13356 |
XDeleteProperty (FRAME_W32_DISPLAY (f), FRAME_W32_WINDOW (f), prop_atom); |
XDeleteProperty (FRAME_W32_DISPLAY (f), FRAME_W32_WINDOW (f), prop_atom); |
13357 |
|
|
13358 |
/* Make sure the property is removed when we return. */ |
/* Make sure the property is removed when we return. */ |
13386 |
|
|
13387 |
CHECK_STRING (prop); |
CHECK_STRING (prop); |
13388 |
BLOCK_INPUT; |
BLOCK_INPUT; |
13389 |
prop_atom = XInternAtom (FRAME_W32_DISPLAY (f), XSTRING (prop)->data, False); |
prop_atom = XInternAtom (FRAME_W32_DISPLAY (f), SDATA (prop), False); |
13390 |
rc = XGetWindowProperty (FRAME_W32_DISPLAY (f), FRAME_W32_WINDOW (f), |
rc = XGetWindowProperty (FRAME_W32_DISPLAY (f), FRAME_W32_WINDOW (f), |
13391 |
prop_atom, 0, 0, False, XA_STRING, |
prop_atom, 0, 0, False, XA_STRING, |
13392 |
&actual_type, &actual_format, &actual_size, |
&actual_type, &actual_format, &actual_size, |
13753 |
{ |
{ |
13754 |
tem = Fquery_fontset (font, Qnil); |
tem = Fquery_fontset (font, Qnil); |
13755 |
if (STRINGP (tem)) |
if (STRINGP (tem)) |
13756 |
font = x_new_fontset (f, XSTRING (tem)->data); |
font = x_new_fontset (f, SDATA (tem)); |
13757 |
else |
else |
13758 |
font = x_new_font (f, XSTRING (font)->data); |
font = x_new_font (f, SDATA (font)); |
13759 |
} |
} |
13760 |
|
|
13761 |
/* Try out a font which we hope has bold and italic variations. */ |
/* Try out a font which we hope has bold and italic variations. */ |
14313 |
/* Create the dialog with PROMPT as title, using DIR as initial |
/* Create the dialog with PROMPT as title, using DIR as initial |
14314 |
directory and using "*" as pattern. */ |
directory and using "*" as pattern. */ |
14315 |
dir = Fexpand_file_name (dir, Qnil); |
dir = Fexpand_file_name (dir, Qnil); |
14316 |
strncpy (init_dir, XSTRING (dir)->data, MAX_PATH); |
strncpy (init_dir, SDATA (dir), MAX_PATH); |
14317 |
init_dir[MAX_PATH] = '\0'; |
init_dir[MAX_PATH] = '\0'; |
14318 |
unixtodos_filename (init_dir); |
unixtodos_filename (init_dir); |
14319 |
|
|
14320 |
if (STRINGP (default_filename)) |
if (STRINGP (default_filename)) |
14321 |
{ |
{ |
14322 |
char *file_name_only; |
char *file_name_only; |
14323 |
char *full_path_name = XSTRING (default_filename)->data; |
char *full_path_name = SDATA (default_filename); |
14324 |
|
|
14325 |
unixtodos_filename (full_path_name); |
unixtodos_filename (full_path_name); |
14326 |
|
|
14354 |
file_details.lpstrFile = filename; |
file_details.lpstrFile = filename; |
14355 |
file_details.nMaxFile = sizeof (filename); |
file_details.nMaxFile = sizeof (filename); |
14356 |
file_details.lpstrInitialDir = init_dir; |
file_details.lpstrInitialDir = init_dir; |
14357 |
file_details.lpstrTitle = XSTRING (prompt)->data; |
file_details.lpstrTitle = SDATA (prompt); |
14358 |
file_details.Flags = (OFN_HIDEREADONLY | OFN_NOCHANGEDIR |
file_details.Flags = (OFN_HIDEREADONLY | OFN_NOCHANGEDIR |
14359 |
| OFN_EXPLORER | OFN_ENABLEHOOK); |
| OFN_EXPLORER | OFN_ENABLEHOOK); |
14360 |
if (!NILP (mustmatch)) |
if (!NILP (mustmatch)) |
14507 |
document = ENCODE_FILE (document); |
document = ENCODE_FILE (document); |
14508 |
if ((int) ShellExecute (NULL, |
if ((int) ShellExecute (NULL, |
14509 |
(STRINGP (operation) ? |
(STRINGP (operation) ? |
14510 |
XSTRING (operation)->data : NULL), |
SDATA (operation) : NULL), |
14511 |
XSTRING (document)->data, |
SDATA (document), |
14512 |
(STRINGP (parameters) ? |
(STRINGP (parameters) ? |
14513 |
XSTRING (parameters)->data : NULL), |
SDATA (parameters) : NULL), |
14514 |
XSTRING (current_dir)->data, |
SDATA (current_dir), |
14515 |
(INTEGERP (show_flag) ? |
(INTEGERP (show_flag) ? |
14516 |
XINT (show_flag) : SW_SHOWDEFAULT)) |
XINT (show_flag) : SW_SHOWDEFAULT)) |
14517 |
> 32) |
> 32) |
14573 |
c = Fcar (c); |
c = Fcar (c); |
14574 |
if (!SYMBOLP (c)) |
if (!SYMBOLP (c)) |
14575 |
abort (); |
abort (); |
14576 |
vk_code = lookup_vk_code (XSTRING (SYMBOL_NAME (c))->data); |
vk_code = lookup_vk_code (SDATA (SYMBOL_NAME (c))); |
14577 |
} |
} |
14578 |
else if (INTEGERP (c)) |
else if (INTEGERP (c)) |
14579 |
{ |
{ |
14777 |
/* On Windows, we may need to specify the root directory of the |
/* On Windows, we may need to specify the root directory of the |
14778 |
volume holding FILENAME. */ |
volume holding FILENAME. */ |
14779 |
char rootname[MAX_PATH]; |
char rootname[MAX_PATH]; |
14780 |
char *name = XSTRING (encoded)->data; |
char *name = SDATA (encoded); |
14781 |
|
|
14782 |
/* find the root name of the volume if given */ |
/* find the root name of the volume if given */ |
14783 |
if (isalpha (name[0]) && name[1] == ':') |
if (isalpha (name[0]) && name[1] == ':') |