/[emacs]/emacs/src/xfns.c
ViewVC logotype

Diff of /emacs/src/xfns.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.552 by lektu, Thu Jul 11 15:23:58 2002 UTC revision 1.553 by raeburn, Mon Jul 15 00:00:38 2002 UTC
# Line 636  x_create_bitmap_from_file (f, file) Line 636  x_create_bitmap_from_file (f, file)
636      {      {
637        if (dpyinfo->bitmaps[id].refcount        if (dpyinfo->bitmaps[id].refcount
638            && dpyinfo->bitmaps[id].file            && dpyinfo->bitmaps[id].file
639            && !strcmp (dpyinfo->bitmaps[id].file, (char *) XSTRING (file)->data))            && !strcmp (dpyinfo->bitmaps[id].file, (char *) SDATA (file)))
640          {          {
641            ++dpyinfo->bitmaps[id].refcount;            ++dpyinfo->bitmaps[id].refcount;
642            return id + 1;            return id + 1;
# Line 649  x_create_bitmap_from_file (f, file) Line 649  x_create_bitmap_from_file (f, file)
649      return -1;      return -1;
650    emacs_close (fd);    emacs_close (fd);
651    
652    filename = (char *) XSTRING (found)->data;    filename = (char *) SDATA (found);
653    
654    result = XReadBitmapFile (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),    result = XReadBitmapFile (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
655                              filename, &width, &height, &bitmap, &xhot, &yhot);                              filename, &width, &height, &bitmap, &xhot, &yhot);
# Line 660  x_create_bitmap_from_file (f, file) Line 660  x_create_bitmap_from_file (f, file)
660    dpyinfo->bitmaps[id - 1].pixmap = bitmap;    dpyinfo->bitmaps[id - 1].pixmap = bitmap;
661    dpyinfo->bitmaps[id - 1].refcount = 1;    dpyinfo->bitmaps[id - 1].refcount = 1;
662    dpyinfo->bitmaps[id - 1].file    dpyinfo->bitmaps[id - 1].file
663      = (char *) xmalloc (STRING_BYTES (XSTRING (file)) + 1);      = (char *) xmalloc (SBYTES (file) + 1);
664    dpyinfo->bitmaps[id - 1].depth = 1;    dpyinfo->bitmaps[id - 1].depth = 1;
665    dpyinfo->bitmaps[id - 1].height = height;    dpyinfo->bitmaps[id - 1].height = height;
666    dpyinfo->bitmaps[id - 1].width = width;    dpyinfo->bitmaps[id - 1].width = width;
667    strcpy (dpyinfo->bitmaps[id - 1].file, XSTRING (file)->data);    strcpy (dpyinfo->bitmaps[id - 1].file, SDATA (file));
668    
669    return id;    return id;
670  }  }
# Line 1385  x_decode_color (f, color_name, mono_colo Line 1385  x_decode_color (f, color_name, mono_colo
1385  #if 0 /* Don't do this.  It's wrong when we're not using the default  #if 0 /* Don't do this.  It's wrong when we're not using the default
1386           colormap, it makes freeing difficult, and it's probably not           colormap, it makes freeing difficult, and it's probably not
1387           an important optimization.  */           an important optimization.  */
1388    if (strcmp (XSTRING (color_name)->data, "black") == 0)    if (strcmp (SDATA (color_name), "black") == 0)
1389      return BLACK_PIX_DEFAULT (f);      return BLACK_PIX_DEFAULT (f);
1390    else if (strcmp (XSTRING (color_name)->data, "white") == 0)    else if (strcmp (SDATA (color_name), "white") == 0)
1391      return WHITE_PIX_DEFAULT (f);      return WHITE_PIX_DEFAULT (f);
1392  #endif  #endif
1393    
# Line 1397  x_decode_color (f, color_name, mono_colo Line 1397  x_decode_color (f, color_name, mono_colo
1397    
1398    /* x_defined_color is responsible for coping with failures    /* x_defined_color is responsible for coping with failures
1399       by looking for a near-miss.  */       by looking for a near-miss.  */
1400    if (x_defined_color (f, XSTRING (color_name)->data, &cdef, 1))    if (x_defined_color (f, SDATA (color_name), &cdef, 1))
1401      return cdef.pixel;      return cdef.pixel;
1402    
1403    Fsignal (Qerror, Fcons (build_string ("Undefined color"),    Fsignal (Qerror, Fcons (build_string ("Undefined color"),
# Line 1914  x_set_icon_type (f, arg, oldval) Line 1914  x_set_icon_type (f, arg, oldval)
1914    BLOCK_INPUT;    BLOCK_INPUT;
1915    if (NILP (arg))    if (NILP (arg))
1916      result = x_text_icon (f,      result = x_text_icon (f,
1917                            (char *) XSTRING ((!NILP (f->icon_name)                            (char *) SDATA ((!NILP (f->icon_name)
1918                                               ? f->icon_name                                               ? f->icon_name
1919                                               : f->name))->data);                                               : f->name)));
1920    else    else
1921      result = x_bitmap_icon (f, arg);      result = x_bitmap_icon (f, arg);
1922    
# Line 1968  x_set_icon_name (f, arg, oldval) Line 1968  x_set_icon_name (f, arg, oldval)
1968    BLOCK_INPUT;    BLOCK_INPUT;
1969    
1970    result = x_text_icon (f,    result = x_text_icon (f,
1971                          (char *) XSTRING ((!NILP (f->icon_name)                          (char *) SDATA ((!NILP (f->icon_name)
1972                                             ? f->icon_name                                           ? f->icon_name
1973                                             : !NILP (f->title)                                           : !NILP (f->title)
1974                                             ? f->title                                           ? f->title
1975                                             : f->name))->data);                                           : f->name)));
1976    
1977    if (result)    if (result)
1978      {      {
# Line 2000  x_set_font (f, arg, oldval) Line 2000  x_set_font (f, arg, oldval)
2000    
2001    BLOCK_INPUT;    BLOCK_INPUT;
2002    result = (STRINGP (fontset_name)    result = (STRINGP (fontset_name)
2003              ? x_new_fontset (f, XSTRING (fontset_name)->data)              ? x_new_fontset (f, SDATA (fontset_name))
2004              : x_new_font (f, XSTRING (arg)->data));              : x_new_font (f, SDATA (arg)));
2005    UNBLOCK_INPUT;    UNBLOCK_INPUT;
2006        
2007    if (EQ (result, Qnil))    if (EQ (result, Qnil))
2008      error ("Font `%s' is not defined", XSTRING (arg)->data);      error ("Font `%s' is not defined", SDATA (arg));
2009    else if (EQ (result, Qt))    else if (EQ (result, Qt))
2010      error ("The characters of the given font have varying widths");      error ("The characters of the given font have varying widths");
2011    else if (STRINGP (result))    else if (STRINGP (result))
# Line 2375  x_encode_text (string, coding_system, se Line 2375  x_encode_text (string, coding_system, se
2375       int *text_bytes, *stringp;       int *text_bytes, *stringp;
2376       int selectionp;       int selectionp;
2377  {  {
2378    unsigned char *str = XSTRING (string)->data;    unsigned char *str = SDATA (string);
2379    int chars = XSTRING (string)->size;    int chars = SCHARS (string);
2380    int bytes = STRING_BYTES (XSTRING (string));    int bytes = SBYTES (string);
2381    int charset_info;    int charset_info;
2382    int bufsize;    int bufsize;
2383    unsigned char *buf;    unsigned char *buf;
# Line 2399  x_encode_text (string, coding_system, se Line 2399  x_encode_text (string, coding_system, se
2399        && !NILP (Ffboundp (coding.pre_write_conversion)))        && !NILP (Ffboundp (coding.pre_write_conversion)))
2400      {      {
2401        string = run_pre_post_conversion_on_str (string, &coding, 1);        string = run_pre_post_conversion_on_str (string, &coding, 1);
2402        str = XSTRING (string)->data;        str = SDATA (string);
2403        chars = XSTRING (string)->size;        chars = SCHARS (string);
2404        bytes = STRING_BYTES (XSTRING (string));        bytes = SBYTES (string);
2405      }      }
2406    coding.src_multibyte = 1;    coding.src_multibyte = 1;
2407    coding.dst_multibyte = 0;    coding.dst_multibyte = 0;
# Line 2458  x_set_name (f, name, explicit) Line 2458  x_set_name (f, name, explicit)
2458        /* Check for no change needed in this very common case        /* Check for no change needed in this very common case
2459           before we do any consing.  */           before we do any consing.  */
2460        if (!strcmp (FRAME_X_DISPLAY_INFO (f)->x_id_name,        if (!strcmp (FRAME_X_DISPLAY_INFO (f)->x_id_name,
2461                     XSTRING (f->name)->data))                     SDATA (f->name)))
2462          return;          return;
2463        name = build_string (FRAME_X_DISPLAY_INFO (f)->x_id_name);        name = build_string (FRAME_X_DISPLAY_INFO (f)->x_id_name);
2464      }      }
# Line 2517  x_set_name (f, name, explicit) Line 2517  x_set_name (f, name, explicit)
2517          XSetWMIconName (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f), &icon);          XSetWMIconName (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f), &icon);
2518  #endif /* not USE_X_TOOLKIT */  #endif /* not USE_X_TOOLKIT */
2519          if (!NILP (f->icon_name)          if (!NILP (f->icon_name)
2520              && icon.value != XSTRING (f->icon_name)->data)              && icon.value != SDATA (f->icon_name))
2521            xfree (icon.value);            xfree (icon.value);
2522          if (text.value != XSTRING (name)->data)          if (text.value != SDATA (name))
2523            xfree (text.value);            xfree (text.value);
2524        }        }
2525  #else /* not HAVE_X11R4 */  #else /* not HAVE_X11R4 */
2526        XSetIconName (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),        XSetIconName (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
2527                      XSTRING (name)->data);                      SDATA (name));
2528        XStoreName (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),        XStoreName (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
2529                    XSTRING (name)->data);                    SDATA (name));
2530  #endif /* not HAVE_X11R4 */  #endif /* not HAVE_X11R4 */
2531        UNBLOCK_INPUT;        UNBLOCK_INPUT;
2532      }      }
# Line 2624  x_set_title (f, name, old_name) Line 2624  x_set_title (f, name, old_name)
2624          XSetWMIconName (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f), &icon);          XSetWMIconName (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f), &icon);
2625  #endif /* not USE_X_TOOLKIT */  #endif /* not USE_X_TOOLKIT */
2626          if (!NILP (f->icon_name)          if (!NILP (f->icon_name)
2627              && icon.value != XSTRING (f->icon_name)->data)              && icon.value != SDATA (f->icon_name))
2628            xfree (icon.value);            xfree (icon.value);
2629          if (text.value != XSTRING (name)->data)          if (text.value != SDATA (name))
2630            xfree (text.value);            xfree (text.value);
2631        }        }
2632  #else /* not HAVE_X11R4 */  #else /* not HAVE_X11R4 */
2633        XSetIconName (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),        XSetIconName (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
2634                      XSTRING (name)->data);                      SDATA (name));
2635        XStoreName (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),        XStoreName (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
2636                    XSTRING (name)->data);                    SDATA (name));
2637  #endif /* not HAVE_X11R4 */  #endif /* not HAVE_X11R4 */
2638        UNBLOCK_INPUT;        UNBLOCK_INPUT;
2639      }      }
# Line 2758  validate_x_resource_name () Line 2758  validate_x_resource_name ()
2758    
2759    if (STRINGP (Vx_resource_name))    if (STRINGP (Vx_resource_name))
2760      {      {
2761        unsigned char *p = XSTRING (Vx_resource_name)->data;        unsigned char *p = SDATA (Vx_resource_name);
2762        int i;        int i;
2763    
2764        len = STRING_BYTES (XSTRING (Vx_resource_name));        len = SBYTES (Vx_resource_name);
2765    
2766        /* Only letters, digits, - and _ are valid in resource names.        /* Only letters, digits, - and _ are valid in resource names.
2767           Count the valid characters and count the invalid ones.  */           Count the valid characters and count the invalid ones.  */
# Line 2800  validate_x_resource_name () Line 2800  validate_x_resource_name ()
2800    
2801    for (i = 0; i < len; i++)    for (i = 0; i < len; i++)
2802      {      {
2803        int c = XSTRING (new)->data[i];        int c = SREF (new, i);
2804        if (! ((c >= 'a' && c <= 'z')        if (! ((c >= 'a' && c <= 'z')
2805               || (c >= 'A' && c <= 'Z')               || (c >= 'A' && c <= 'Z')
2806               || (c >= '0' && c <= '9')               || (c >= '0' && c <= '9')
2807               || c == '-' || c == '_'))               || c == '-' || c == '_'))
2808          XSTRING (new)->data[i] = '_';          SREF (new, i) = '_';
2809      }      }
2810  }  }
2811    
# Line 2845  and the class is `Emacs.CLASS.SUBCLASS'. Line 2845  and the class is `Emacs.CLASS.SUBCLASS'.
2845    
2846    /* Allocate space for the components, the dots which separate them,    /* Allocate space for the components, the dots which separate them,
2847       and the final '\0'.  Make them big enough for the worst case.  */       and the final '\0'.  Make them big enough for the worst case.  */
2848    name_key = (char *) alloca (STRING_BYTES (XSTRING (Vx_resource_name))    name_key = (char *) alloca (SBYTES (Vx_resource_name)
2849                                + (STRINGP (component)                                + (STRINGP (component)
2850                                   ? STRING_BYTES (XSTRING (component)) : 0)                                   ? SBYTES (component) : 0)
2851                                + STRING_BYTES (XSTRING (attribute))                                + SBYTES (attribute)
2852                                + 3);                                + 3);
2853    
2854    class_key = (char *) alloca (STRING_BYTES (XSTRING (Vx_resource_class))    class_key = (char *) alloca (SBYTES (Vx_resource_class)
2855                                 + STRING_BYTES (XSTRING (class))                                 + SBYTES (class)
2856                                 + (STRINGP (subclass)                                 + (STRINGP (subclass)
2857                                    ? STRING_BYTES (XSTRING (subclass)) : 0)                                    ? SBYTES (subclass) : 0)
2858                                 + 3);                                 + 3);
2859    
2860    /* Start with emacs.FRAMENAME for the name (the specific one)    /* Start with emacs.FRAMENAME for the name (the specific one)
2861       and with `Emacs' for the class key (the general one).  */       and with `Emacs' for the class key (the general one).  */
2862    strcpy (name_key, XSTRING (Vx_resource_name)->data);    strcpy (name_key, SDATA (Vx_resource_name));
2863    strcpy (class_key, XSTRING (Vx_resource_class)->data);    strcpy (class_key, SDATA (Vx_resource_class));
2864    
2865    strcat (class_key, ".");    strcat (class_key, ".");
2866    strcat (class_key, XSTRING (class)->data);    strcat (class_key, SDATA (class));
2867    
2868    if (!NILP (component))    if (!NILP (component))
2869      {      {
2870        strcat (class_key, ".");        strcat (class_key, ".");
2871        strcat (class_key, XSTRING (subclass)->data);        strcat (class_key, SDATA (subclass));
2872    
2873        strcat (name_key, ".");        strcat (name_key, ".");
2874        strcat (name_key, XSTRING (component)->data);        strcat (name_key, SDATA (component));
2875      }      }
2876    
2877    strcat (name_key, ".");    strcat (name_key, ".");
2878    strcat (name_key, XSTRING (attribute)->data);    strcat (name_key, SDATA (attribute));
2879    
2880    value = x_get_string_resource (check_x_display_info (Qnil)->xrdb,    value = x_get_string_resource (check_x_display_info (Qnil)->xrdb,
2881                                   name_key, class_key);                                   name_key, class_key);
# Line 2911  display_x_get_resource (dpyinfo, attribu Line 2911  display_x_get_resource (dpyinfo, attribu
2911    
2912    /* Allocate space for the components, the dots which separate them,    /* Allocate space for the components, the dots which separate them,
2913       and the final '\0'.  Make them big enough for the worst case.  */       and the final '\0'.  Make them big enough for the worst case.  */
2914    name_key = (char *) alloca (STRING_BYTES (XSTRING (Vx_resource_name))    name_key = (char *) alloca (SBYTES (Vx_resource_name)
2915                                + (STRINGP (component)                                + (STRINGP (component)
2916                                   ? STRING_BYTES (XSTRING (component)) : 0)                                   ? SBYTES (component) : 0)
2917                                + STRING_BYTES (XSTRING (attribute))                                + SBYTES (attribute)
2918                                + 3);                                + 3);
2919    
2920    class_key = (char *) alloca (STRING_BYTES (XSTRING (Vx_resource_class))    class_key = (char *) alloca (SBYTES (Vx_resource_class)
2921                                 + STRING_BYTES (XSTRING (class))                                 + SBYTES (class)
2922                                 + (STRINGP (subclass)                                 + (STRINGP (subclass)
2923                                    ? STRING_BYTES (XSTRING (subclass)) : 0)                                    ? SBYTES (subclass) : 0)
2924                                 + 3);                                 + 3);
2925    
2926    /* Start with emacs.FRAMENAME for the name (the specific one)    /* Start with emacs.FRAMENAME for the name (the specific one)
2927       and with `Emacs' for the class key (the general one).  */       and with `Emacs' for the class key (the general one).  */
2928    strcpy (name_key, XSTRING (Vx_resource_name)->data);    strcpy (name_key, SDATA (Vx_resource_name));
2929    strcpy (class_key, XSTRING (Vx_resource_class)->data);    strcpy (class_key, SDATA (Vx_resource_class));
2930    
2931    strcat (class_key, ".");    strcat (class_key, ".");
2932    strcat (class_key, XSTRING (class)->data);    strcat (class_key, SDATA (class));
2933    
2934    if (!NILP (component))    if (!NILP (component))
2935      {      {
2936        strcat (class_key, ".");        strcat (class_key, ".");
2937        strcat (class_key, XSTRING (subclass)->data);        strcat (class_key, SDATA (subclass));
2938    
2939        strcat (name_key, ".");        strcat (name_key, ".");
2940        strcat (name_key, XSTRING (component)->data);        strcat (name_key, SDATA (component));
2941      }      }
2942    
2943    strcat (name_key, ".");    strcat (name_key, ".");
2944    strcat (name_key, XSTRING (attribute)->data);    strcat (name_key, SDATA (attribute));
2945    
2946    value = x_get_string_resource (dpyinfo->xrdb, name_key, class_key);    value = x_get_string_resource (dpyinfo->xrdb, name_key, class_key);
2947    
# Line 2963  x_get_resource_string (attribute, class) Line 2963  x_get_resource_string (attribute, class)
2963    
2964    /* Allocate space for the components, the dots which separate them,    /* Allocate space for the components, the dots which separate them,
2965       and the final '\0'.  */       and the final '\0'.  */
2966    name_key = (char *) alloca (STRING_BYTES (XSTRING (Vinvocation_name))    name_key = (char *) alloca (SBYTES (Vinvocation_name)
2967                                + strlen (attribute) + 2);                                + strlen (attribute) + 2);
2968    class_key = (char *) alloca ((sizeof (EMACS_CLASS) - 1)    class_key = (char *) alloca ((sizeof (EMACS_CLASS) - 1)
2969                                 + strlen (class) + 2);                                 + strlen (class) + 2);
2970    
2971    sprintf (name_key, "%s.%s",    sprintf (name_key, "%s.%s",
2972             XSTRING (Vinvocation_name)->data,             SDATA (Vinvocation_name),
2973             attribute);             attribute);
2974    sprintf (class_key, "%s.%s", EMACS_CLASS, class);    sprintf (class_key, "%s.%s", EMACS_CLASS, class);
2975    
# Line 3027  x_get_arg (dpyinfo, alist, param, attrib Line 3027  x_get_arg (dpyinfo, alist, param, attrib
3027            switch (type)            switch (type)
3028              {              {
3029              case RES_TYPE_NUMBER:              case RES_TYPE_NUMBER:
3030                return make_number (atoi (XSTRING (tem)->data));                return make_number (atoi (SDATA (tem)));
3031    
3032              case RES_TYPE_FLOAT:              case RES_TYPE_FLOAT:
3033                return make_float (atof (XSTRING (tem)->data));                return make_float (atof (SDATA (tem)));
3034    
3035              case RES_TYPE_BOOLEAN:              case RES_TYPE_BOOLEAN:
3036                tem = Fdowncase (tem);                tem = Fdowncase (tem);
3037                if (!strcmp (XSTRING (tem)->data, "on")                if (!strcmp (SDATA (tem), "on")
3038                    || !strcmp (XSTRING (tem)->data, "true"))                    || !strcmp (SDATA (tem), "true"))
3039                  return Qt;                  return Qt;
3040                else                else
3041                  return Qnil;                  return Qnil;
# Line 3049  x_get_arg (dpyinfo, alist, param, attrib Line 3049  x_get_arg (dpyinfo, alist, param, attrib
3049                {                {
3050                  Lisp_Object lower;                  Lisp_Object lower;
3051                  lower = Fdowncase (tem);                  lower = Fdowncase (tem);
3052                  if (!strcmp (XSTRING (lower)->data, "on")                  if (!strcmp (SDATA (lower), "on")
3053                      || !strcmp (XSTRING (lower)->data, "true"))                      || !strcmp (SDATA (lower), "true"))
3054                    return Qt;                    return Qt;
3055                  else if (!strcmp (XSTRING (lower)->data, "off")                  else if (!strcmp (SDATA (lower), "off")
3056                        || !strcmp (XSTRING (lower)->data, "false"))                        || !strcmp (SDATA (lower), "false"))
3057                    return Qnil;                    return Qnil;
3058                  else                  else
3059                    return Fintern (tem, Qnil);                    return Fintern (tem, Qnil);
# Line 3186  or a list (- N) meaning -N pixels relati Line 3186  or a list (- N) meaning -N pixels relati
3186    
3187    CHECK_STRING (string);    CHECK_STRING (string);
3188    
3189    geometry = XParseGeometry ((char *) XSTRING (string)->data,    geometry = XParseGeometry ((char *) SDATA (string),
3190                               &x, &y, &width, &height);                               &x, &y, &width, &height);
3191    
3192  #if 0  #if 0
# Line 3559  create_frame_xic (f) Line 3559  create_frame_xic (f)
3559          {          {
3560            /* Determine the base fontname from the ASCII font name of            /* Determine the base fontname from the ASCII font name of
3561               FONTSET.  */               FONTSET.  */
3562            char *ascii_font = (char *) XSTRING (fontset_ascii (fontset))->data;            char *ascii_font = (char *) SDATA (fontset_ascii (fontset));
3563            char *p = ascii_font;            char *p = ascii_font;
3564            int i;            int i;
3565    
# Line 3780  x_window (f, window_prompting, minibuffe Line 3780  x_window (f, window_prompting, minibuffe
3780       Elsewhere we specify the window name for the window manager.  */       Elsewhere we specify the window name for the window manager.  */
3781            
3782    {    {
3783      char *str = (char *) XSTRING (Vx_resource_name)->data;      char *str = (char *) SDATA (Vx_resource_name);
3784      f->namebuf = (char *) xmalloc (strlen (str) + 1);      f->namebuf = (char *) xmalloc (strlen (str) + 1);
3785      strcpy (f->namebuf, str);      strcpy (f->namebuf, str);
3786    }    }
# Line 3913  x_window (f, window_prompting, minibuffe Line 3913  x_window (f, window_prompting, minibuffe
3913    
3914    validate_x_resource_name ();    validate_x_resource_name ();
3915    
3916    class_hints.res_name = (char *) XSTRING (Vx_resource_name)->data;    class_hints.res_name = (char *) SDATA (Vx_resource_name);
3917    class_hints.res_class = (char *) XSTRING (Vx_resource_class)->data;    class_hints.res_class = (char *) SDATA (Vx_resource_class);
3918    XSetClassHint (FRAME_X_DISPLAY (f), XtWindow (shell_widget), &class_hints);    XSetClassHint (FRAME_X_DISPLAY (f), XtWindow (shell_widget), &class_hints);
3919    
3920  #ifdef HAVE_X_I18N  #ifdef HAVE_X_I18N
# Line 4041  x_window (f) Line 4041  x_window (f)
4041        
4042    validate_x_resource_name ();    validate_x_resource_name ();
4043    
4044    class_hints.res_name = (char *) XSTRING (Vx_resource_name)->data;    class_hints.res_name = (char *) SDATA (Vx_resource_name);
4045    class_hints.res_class = (char *) XSTRING (Vx_resource_class)->data;    class_hints.res_class = (char *) SDATA (Vx_resource_class);
4046    XSetClassHint (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f), &class_hints);    XSetClassHint (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f), &class_hints);
4047    
4048    /* The menubar is part of the ordinary display;    /* The menubar is part of the ordinary display;
# Line 4129  x_icon (f, parms) Line 4129  x_icon (f, parms)
4129           ? IconicState           ? IconicState
4130           : NormalState));           : NormalState));
4131    
4132    x_text_icon (f, (char *) XSTRING ((!NILP (f->icon_name)    x_text_icon (f, (char *) SDATA ((!NILP (f->icon_name)
4133                                       ? f->icon_name                                       ? f->icon_name
4134                                       : f->name))->data);                                       : f->name)));
4135    
4136    UNBLOCK_INPUT;    UNBLOCK_INPUT;
4137  }  }
# Line 4464  This function is an internal primitive-- Line 4464  This function is an internal primitive--
4464        {        {
4465          tem = Fquery_fontset (font, Qnil);          tem = Fquery_fontset (font, Qnil);
4466          if (STRINGP (tem))          if (STRINGP (tem))
4467            font = x_new_fontset (f, XSTRING (tem)->data);            font = x_new_fontset (f, SDATA (tem));
4468          else          else
4469            font = x_new_font (f, XSTRING (font)->data);            font = x_new_font (f, SDATA (font));
4470        }        }
4471            
4472      /* Try out a font which we hope has bold and italic variations.  */      /* Try out a font which we hope has bold and italic variations.  */
# Line 4780  DEFUN ("xw-color-defined-p", Fxw_color_d Line 4780  DEFUN ("xw-color-defined-p", Fxw_color_d
4780    
4781    CHECK_STRING (color);    CHECK_STRING (color);
4782    
4783    if (x_defined_color (f, XSTRING (color)->data, &foo, 0))    if (x_defined_color (f, SDATA (color), &foo, 0))
4784      return Qt;      return Qt;
4785    else    else
4786      return Qnil;      return Qnil;
# Line 4796  DEFUN ("xw-color-values", Fxw_color_valu Line 4796  DEFUN ("xw-color-values", Fxw_color_valu
4796    
4797    CHECK_STRING (color);    CHECK_STRING (color);
4798    
4799    if (x_defined_color (f, XSTRING (color)->data, &foo, 0))    if (x_defined_color (f, SDATA (color), &foo, 0))
4800      {      {
4801        Lisp_Object rgb[3];        Lisp_Object rgb[3];
4802    
# Line 5207  select_visual (dpyinfo) Line 5207  select_visual (dpyinfo)
5207        /* VALUE should be of the form CLASS-DEPTH, where CLASS is one        /* VALUE should be of the form CLASS-DEPTH, where CLASS is one
5208           of `PseudoColor', `TrueColor' etc. and DEPTH is the color           of `PseudoColor', `TrueColor' etc. and DEPTH is the color
5209           depth, a decimal number.  NAME is compared with case ignored.  */           depth, a decimal number.  NAME is compared with case ignored.  */
5210        char *s = (char *) alloca (STRING_BYTES (XSTRING (value)) + 1);        char *s = (char *) alloca (SBYTES (value) + 1);
5211        char *dash;        char *dash;
5212        int i, class = -1;        int i, class = -1;
5213        XVisualInfo vinfo;        XVisualInfo vinfo;
5214    
5215        strcpy (s, XSTRING (value)->data);        strcpy (s, SDATA (value));
5216        dash = index (s, '-');        dash = index (s, '-');
5217        if (dash)        if (dash)
5218          {          {
# Line 5236  select_visual (dpyinfo) Line 5236  select_visual (dpyinfo)
5236        if (class == -1        if (class == -1
5237            || !XMatchVisualInfo (dpy, XScreenNumberOfScreen (screen),            || !XMatchVisualInfo (dpy, XScreenNumberOfScreen (screen),
5238                                  dpyinfo->n_planes, class, &vinfo))                                  dpyinfo->n_planes, class, &vinfo))
5239          fatal ("Invalid visual specification `%s'", XSTRING (value)->data);          fatal ("Invalid visual specification `%s'", SDATA (value));
5240                
5241        dpyinfo->visual = vinfo.visual;        dpyinfo->visual = vinfo.visual;
5242      }      }
# Line 5295  x_display_info_for_name (name) Line 5295  x_display_info_for_name (name)
5295    validate_x_resource_name ();    validate_x_resource_name ();
5296    
5297    dpyinfo = x_term_init (name, (char *)0,    dpyinfo = x_term_init (name, (char *)0,
5298                           (char *) XSTRING (Vx_resource_name)->data);                           (char *) SDATA (Vx_resource_name));
5299    
5300    if (dpyinfo == 0)    if (dpyinfo == 0)
5301      error ("Cannot connect to X server %s", XSTRING (name)->data);      error ("Cannot connect to X server %s", SDATA (name));
5302    
5303    x_in_use = 1;    x_in_use = 1;
5304    XSETFASTINT (Vwindow_system_version, 11);    XSETFASTINT (Vwindow_system_version, 11);
# Line 5328  terminate Emacs if we can't open the con Line 5328  terminate Emacs if we can't open the con
5328      error ("Not using X Windows");      error ("Not using X Windows");
5329    
5330    if (! NILP (xrm_string))    if (! NILP (xrm_string))
5331      xrm_option = (unsigned char *) XSTRING (xrm_string)->data;      xrm_option = (unsigned char *) SDATA (xrm_string);
5332    else    else
5333      xrm_option = (unsigned char *) 0;      xrm_option = (unsigned char *) 0;
5334    
# Line 5337  terminate Emacs if we can't open the con Line 5337  terminate Emacs if we can't open the con
5337    /* This is what opens the connection and sets x_current_display.    /* This is what opens the connection and sets x_current_display.
5338       This also initializes many symbols, such as those used for input.  */       This also initializes many symbols, such as those used for input.  */
5339    dpyinfo = x_term_init (display, xrm_option,    dpyinfo = x_term_init (display, xrm_option,
5340                           (char *) XSTRING (Vx_resource_name)->data);                           (char *) SDATA (Vx_resource_name));
5341    
5342    if (dpyinfo == 0)    if (dpyinfo == 0)
5343      {      {
# Line 5346  terminate Emacs if we can't open the con Line 5346  terminate Emacs if we can't open the con
5346  Check the DISPLAY environment variable or use `-d'.\n\  Check the DISPLAY environment variable or use `-d'.\n\
5347  Also use the `xhost' program to verify that it is set to permit\n\  Also use the `xhost' program to verify that it is set to permit\n\
5348  connections from your machine.\n",  connections from your machine.\n",
5349                 XSTRING (display)->data);                 SDATA (display));
5350        else        else
5351          error ("Cannot connect to X server %s", XSTRING (display)->data);          error ("Cannot connect to X server %s", SDATA (display));
5352      }      }
5353    
5354    x_in_use = 1;    x_in_use = 1;
# Line 5662  parse_image_spec (spec, keywords, nkeywo Line 5662  parse_image_spec (spec, keywords, nkeywo
5662    
5663        /* Find key in KEYWORDS.  Error if not found.  */        /* Find key in KEYWORDS.  Error if not found.  */
5664        for (i = 0; i < nkeywords; ++i)        for (i = 0; i < nkeywords; ++i)
5665          if (strcmp (keywords[i].name, XSTRING (SYMBOL_NAME (key))->data) == 0)          if (strcmp (keywords[i].name, SDATA (SYMBOL_NAME (key))) == 0)
5666            break;            break;
5667    
5668        if (i == nkeywords)        if (i == nkeywords)
# Line 6142  x_alloc_image_color (f, img, color_name, Line 6142  x_alloc_image_color (f, img, color_name,
6142    
6143    xassert (STRINGP (color_name));    xassert (STRINGP (color_name));
6144    
6145    if (x_defined_color (f, XSTRING (color_name)->data, &color, 1))    if (x_defined_color (f, SDATA (color_name), &color, 1))
6146      {      {
6147        /* This isn't called frequently so we get away with simply        /* This isn't called frequently so we get away with simply
6148           reallocating the color vector to the needed size, here.  */           reallocating the color vector to the needed size, here.  */
# Line 6880  xbm_image_p (object) Line 6880  xbm_image_p (object)
6880    
6881                if (STRINGP (elt))                if (STRINGP (elt))
6882                  {                  {
6883                    if (XSTRING (elt)->size                    if (SCHARS (elt)
6884                        < (width + BITS_PER_CHAR - 1) / BITS_PER_CHAR)                        < (width + BITS_PER_CHAR - 1) / BITS_PER_CHAR)
6885                      return 0;                      return 0;
6886                  }                  }
# Line 6895  xbm_image_p (object) Line 6895  xbm_image_p (object)
6895          }          }
6896        else if (STRINGP (data))        else if (STRINGP (data))
6897          {          {
6898            if (XSTRING (data)->size            if (SCHARS (data)
6899                < (width + BITS_PER_CHAR - 1) / BITS_PER_CHAR * height)                < (width + BITS_PER_CHAR - 1) / BITS_PER_CHAR * height)
6900              return 0;              return 0;
6901          }          }
# Line 7225  xbm_file_p (data) Line 7225  xbm_file_p (data)
7225  {  {
7226    int w, h;    int w, h;
7227    return (STRINGP (data)    return (STRINGP (data)
7228            && xbm_read_bitmap_data (XSTRING (data)->data,            && xbm_read_bitmap_data (SDATA (data),
7229                                     (XSTRING (data)->data                                     (SDATA (data)
7230                                      + STRING_BYTES (XSTRING (data))),                                      + SBYTES (data)),
7231                                     &w, &h, NULL));                                     &w, &h, NULL));
7232  }  }
7233    
# Line 7263  xbm_load (f, img) Line 7263  xbm_load (f, img)
7263            return 0;            return 0;
7264          }          }
7265    
7266        contents = slurp_file (XSTRING (file)->data, &size);        contents = slurp_file (SDATA (file), &size);
7267        if (contents == NULL)        if (contents == NULL)
7268          {          {
7269            image_error ("Error loading XBM image `%s'", img->spec, Qnil);            image_error ("Error loading XBM image `%s'", img->spec, Qnil);
# Line 7313  xbm_load (f, img) Line 7313  xbm_load (f, img)
7313                                            background);                                            background);
7314    
7315        if (in_memory_file_p)        if (in_memory_file_p)
7316          success_p = xbm_load_image (f, img, XSTRING (data)->data,          success_p = xbm_load_image (f, img, SDATA (data),
7317                                      (XSTRING (data)->data                                      (SDATA (data)
7318                                       + STRING_BYTES (XSTRING (data))));                                       + SBYTES (data)));
7319        else        else
7320          {          {
7321            if (VECTORP (data))            if (VECTORP (data))
# Line 7329  xbm_load (f, img) Line 7329  xbm_load (f, img)
7329                  {                  {
7330                    Lisp_Object line = XVECTOR (data)->contents[i];                    Lisp_Object line = XVECTOR (data)->contents[i];
7331                    if (STRINGP (line))                    if (STRINGP (line))
7332                      bcopy (XSTRING (line)->data, p, nbytes);                      bcopy (SDATA (line), p, nbytes);
7333                    else                    else
7334                      bcopy (XBOOL_VECTOR (line)->data, p, nbytes);                      bcopy (XBOOL_VECTOR (line)->data, p, nbytes);
7335                  }                  }
7336              }              }
7337            else if (STRINGP (data))            else if (STRINGP (data))
7338              bits = XSTRING (data)->data;              bits = SDATA (data);
7339            else            else
7340              bits = XBOOL_VECTOR (data)->data;              bits = XBOOL_VECTOR (data)->data;
7341    
# Line 7737  xpm_load (f, img) Line 7737  xpm_load (f, img)
7737          {          {
7738            Lisp_Object name = XCAR (XCAR (tail));            Lisp_Object name = XCAR (XCAR (tail));
7739            Lisp_Object color = XCDR (XCAR (tail));            Lisp_Object color = XCDR (XCAR (tail));
7740            xpm_syms[i].name = (char *) alloca (XSTRING (name)->size + 1);            xpm_syms[i].name = (char *) alloca (SCHARS (name) + 1);
7741            strcpy (xpm_syms[i].name, XSTRING (name)->data);            strcpy (xpm_syms[i].name, SDATA (name));
7742            xpm_syms[i].value = (char *) alloca (XSTRING (color)->size + 1);            xpm_syms[i].value = (char *) alloca (SCHARS (color) + 1);
7743            strcpy (xpm_syms[i].value, XSTRING (color)->data);            strcpy (xpm_syms[i].value, SDATA (color));
7744          }          }
7745      }      }
7746    
# Line 7761  xpm_load (f, img) Line 7761  xpm_load (f, img)
7761          }          }
7762                
7763        rc = XpmReadFileToPixmap (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),        rc = XpmReadFileToPixmap (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
7764                                  XSTRING (file)->data, &img->pixmap, &img->mask,                                  SDATA (file), &img->pixmap, &img->mask,
7765                                  &attrs);                                  &attrs);
7766      }      }
7767    else    else
7768      {      {
7769        Lisp_Object buffer = image_spec_value (img->spec, QCdata, NULL);        Lisp_Object buffer = image_spec_value (img->spec, QCdata, NULL);
7770        rc = XpmCreatePixmapFromBuffer (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),        rc = XpmCreatePixmapFromBuffer (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
7771                                        XSTRING (buffer)->data,                                        SDATA (buffer),
7772                                        &img->pixmap, &img->mask,                                        &img->pixmap, &img->mask,
7773                                        &attrs);                                        &attrs);
7774      }      }
# Line 8568  pbm_load (f, img) Line 8568  pbm_load (f, img)
8568            return 0;            return 0;
8569          }          }
8570    
8571        contents = slurp_file (XSTRING (file)->data, &size);        contents = slurp_file (SDATA (file), &size);
8572        if (contents == NULL)        if (contents == NULL)
8573          {          {
8574            image_error ("Error reading `%s'", file, Qnil);            image_error ("Error reading `%s'", file, Qnil);
# Line 8583  pbm_load (f, img) Line 8583  pbm_load (f, img)
8583      {      {
8584        Lisp_Object data;        Lisp_Object data;
8585        data = image_spec_value (img->spec, QCdata, NULL);        data = image_spec_value (img->spec, QCdata, NULL);
8586        p = XSTRING (data)->data;        p = SDATA (data);
8587        end = p + STRING_BYTES (XSTRING (data));        end = p + SBYTES (data);
8588      }      }
8589    
8590    /* Check magic number.  */    /* Check magic number.  */
# Line 8933  png_load (f, img) Line 8933  png_load (f, img)
8933          }          }
8934    
8935        /* Open the image file.  */        /* Open the image file.  */
8936        fp = fopen (XSTRING (file)->data, "rb");        fp = fopen (SDATA (file), "rb");
8937        if (!fp)        if (!fp)
8938          {          {
8939            image_error ("Cannot open image file `%s'", file, Qnil);            image_error ("Cannot open image file `%s'", file, Qnil);
# Line 8955  png_load (f, img) Line 8955  png_load (f, img)
8955    else    else
8956      {      {
8957        /* Read from memory.  */        /* Read from memory.  */
8958        tbr.bytes = XSTRING (specified_data)->data;        tbr.bytes = SDATA (specified_data);
8959        tbr.len = STRING_BYTES (XSTRING (specified_data));        tbr.len = SBYTES (specified_data);
8960        tbr.index = 0;        tbr.index = 0;
8961    
8962        /* Check PNG signature.  */        /* Check PNG signature.  */
# Line 9079  png_load (f, img) Line 9079  png_load (f, img)
9079          /* The user specified `:background', use that.  */          /* The user specified `:background', use that.  */
9080          {          {
9081            XColor color;            XColor color;
9082            if (x_defined_color (f, XSTRING (specified_bg)->data, &color, 0))            if (x_defined_color (f, SDATA (specified_bg), &color, 0))
9083              {              {
9084                png_color_16 user_bg;                png_color_16 user_bg;
9085    
# Line 9499  jpeg_load (f, img) Line 9499  jpeg_load (f, img)
9499            return 0;            return 0;
9500          }          }
9501        
9502        fp = fopen (XSTRING (file)->data, "r");        fp = fopen (SDATA (file), "r");
9503        if (fp == NULL)        if (fp == NULL)
9504          {          {
9505            image_error ("Cannot open `%s'", file, Qnil);            image_error ("Cannot open `%s'", file, Qnil);
# Line 9546  jpeg_load (f, img) Line 9546  jpeg_load (f, img)
9546    if (NILP (specified_data))    if (NILP (specified_data))
9547      jpeg_stdio_src (&cinfo, (FILE *) fp);      jpeg_stdio_src (&cinfo, (FILE *) fp);
9548    else    else
9549      jpeg_memory_src (&cinfo, XSTRING (specified_data)->data,      jpeg_memory_src (&cinfo, SDATA (specified_data),
9550                       STRING_BYTES (XSTRING (specified_data)));                       SBYTES (specified_data));
9551    
9552    jpeg_read_header (&cinfo, TRUE);    jpeg_read_header (&cinfo, TRUE);
9553    
# Line 9893  tiff_load (f, img) Line 9893  tiff_load (f, img)
9893          }          }
9894                        
9895        /* Try to open the image file.  */        /* Try to open the image file.  */
9896        tiff = TIFFOpen (XSTRING (file)->data, "r");        tiff = TIFFOpen (SDATA (file), "r");
9897        if (tiff == NULL)        if (tiff == NULL)
9898          {          {
9899            image_error ("Cannot open `%s'", file, Qnil);            image_error ("Cannot open `%s'", file, Qnil);
# Line 9904  tiff_load (f, img) Line 9904  tiff_load (f, img)
9904    else    else
9905      {      {
9906        /* Memory source! */        /* Memory source! */
9907        memsrc.bytes = XSTRING (specified_data)->data;        memsrc.bytes = SDATA (specified_data);
9908        memsrc.len = STRING_BYTES (XSTRING (specified_data));        memsrc.len = SBYTES (specified_data);
9909        memsrc.index = 0;        memsrc.index = 0;
9910    
9911        tiff = TIFFClientOpen ("memory_source", "r", &memsrc,        tiff = TIFFClientOpen ("memory_source", "r", &memsrc,
# Line 10142  gif_load (f, img) Line 10142  gif_load (f, img)
10142          }          }
10143        
10144        /* Open the GIF file.  */        /* Open the GIF file.  */
10145        gif = DGifOpenFileName (XSTRING (file)->data);        gif = DGifOpenFileName (SDATA (file));
10146        if (gif == NULL)        if (gif == NULL)
10147          {          {
10148            image_error ("Cannot open `%s'", file, Qnil);            image_error ("Cannot open `%s'", file, Qnil);
# Line 10154  gif_load (f, img) Line 10154  gif_load (f, img)
10154      {      {
10155        /* Read from memory! */        /* Read from memory! */
10156        current_gif_memory_src = &memsrc;        current_gif_memory_src = &memsrc;
10157        memsrc.bytes = XSTRING (specified_data)->data;        memsrc.bytes = SDATA (specified_data);
10158        memsrc.len = STRING_BYTES (XSTRING (specified_data));        memsrc.len = SBYTES (specified_data);
10159        memsrc.index = 0;        memsrc.index = 0;
10160    
10161        gif = DGifOpen(&memsrc, gif_read_from_memory);        gif = DGifOpen(&memsrc, gif_read_from_memory);
# Line 10605  selected frame.  Value is VALUE.  */) Line 10605  selected frame.  Value is VALUE.  */)
10605    CHECK_STRING (value);    CHECK_STRING (value);
10606    
10607    BLOCK_INPUT;    BLOCK_INPUT;
10608    prop_atom = XInternAtom (FRAME_X_DISPLAY (f), XSTRING (prop)->data, False);    prop_atom = XInternAtom (FRAME_X_DISPLAY (f), SDATA (prop), False);
10609    XChangeProperty (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),    XChangeProperty (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
10610                     prop_atom, XA_STRING, 8, PropModeReplace,                     prop_atom, XA_STRING, 8, PropModeReplace,
10611                     XSTRING (value)->data, XSTRING (value)->size);                     SDATA (value), SCHARS (value));
10612    
10613    /* Make sure the property is set when we return.  */    /* Make sure the property is set when we return.  */
10614    XFlush (FRAME_X_DISPLAY (f));    XFlush (FRAME_X_DISPLAY (f));
# Line 10630  FRAME nil or omitted means use the selec Line 10630  FRAME nil or omitted means use the selec
10630    
10631    CHECK_STRING (prop);    CHECK_STRING (prop);
10632    BLOCK_INPUT;    BLOCK_INPUT;
10633    prop_atom = XInternAtom (FRAME_X_DISPLAY (f), XSTRING (prop)->data, False);    prop_atom = XInternAtom (FRAME_X_DISPLAY (f), SDATA (prop), False);
10634    XDeleteProperty (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f), prop_atom);    XDeleteProperty (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f), prop_atom);
10635    
10636    /* Make sure the property is removed when we return.  */    /* Make sure the property is removed when we return.  */
# Line 10661  value.  */) Line 10661  value.  */)
10661    
10662    CHECK_STRING (prop);    CHECK_STRING (prop);
10663    BLOCK_INPUT;    BLOCK_INPUT;
10664    prop_atom = XInternAtom (FRAME_X_DISPLAY (f), XSTRING (prop)->data, False);    prop_atom = XInternAtom (FRAME_X_DISPLAY (f), SDATA (prop), False);
10665    rc = XGetWindowProperty (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),    rc = XGetWindowProperty (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
10666                             prop_atom, 0, 0, False, XA_STRING,                             prop_atom, 0, 0, False, XA_STRING,
10667                             &actual_type, &actual_format, &actual_size,                             &actual_type, &actual_format, &actual_size,
# Line 11054  x_create_tip_frame (dpyinfo, parms, text Line 11054  x_create_tip_frame (dpyinfo, parms, text
11054        {        {
11055          tem = Fquery_fontset (font, Qnil);          tem = Fquery_fontset (font, Qnil);
11056          if (STRINGP (tem))          if (STRINGP (tem))
11057            font = x_new_fontset (f, XSTRING (tem)->data);            font = x_new_fontset (f, SDATA (tem));
11058          else          else
11059            font = x_new_font (f, XSTRING (font)->data);            font = x_new_font (f, SDATA (font));
11060        }        }
11061            
11062      /* Try out a font which we hope has bold and italic variations.  */      /* Try out a font which we hope has bold and italic variations.  */
# Line 11620  selection dialog's entry field, if MUSTM Line 11620  selection dialog's entry field, if MUSTM
11620    /* Create the dialog with PROMPT as title, using DIR as initial    /* Create the dialog with PROMPT as title, using DIR as initial
11621       directory and using "*" as pattern.  */       directory and using "*" as pattern.  */
11622    dir = Fexpand_file_name (dir, Qnil);    dir = Fexpand_file_name (dir, Qnil);
11623    dir_xmstring = XmStringCreateLocalized (XSTRING (dir)->data);    dir_xmstring = XmStringCreateLocalized (SDATA (dir));
11624    pattern_xmstring = XmStringCreateLocalized ("*");    pattern_xmstring = XmStringCreateLocalized ("*");
11625            
11626    XtSetArg (al[ac], XmNtitle, XSTRING (prompt)->data); ++ac;    XtSetArg (al[ac], XmNtitle, SDATA (prompt)); ++ac;
11627    XtSetArg (al[ac], XmNdirectory, dir_xmstring); ++ac;    XtSetArg (al[ac], XmNdirectory, dir_xmstring); ++ac;
11628    XtSetArg (al[ac], XmNpattern, pattern_xmstring); ++ac;    XtSetArg (al[ac], XmNpattern, pattern_xmstring); ++ac;
11629    XtSetArg (al[ac], XmNresizePolicy, XmRESIZE_GROW); ++ac;    XtSetArg (al[ac], XmNresizePolicy, XmRESIZE_GROW); ++ac;
# Line 11674  selection dialog's entry field, if MUSTM Line 11674  selection dialog's entry field, if MUSTM
11674        int item_pos;        int item_pos;
11675    
11676        default_xmstring        default_xmstring
11677          = XmStringCreateLocalized (XSTRING (default_filename)->data);          = XmStringCreateLocalized (SDATA (default_filename));
11678    
11679        if (!XmListItemExists (list, default_xmstring))        if (!XmListItemExists (list, default_xmstring))
11680          {          {

Legend:
Removed from v.1.552  
changed lines
  Added in v.1.553

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26