comparison src/device-x.c @ 227:0e522484dd2a r20-5b12

Import from CVS: tag r20-5b12
author cvs
date Mon, 13 Aug 2007 10:12:37 +0200
parents 262b8bb4a523
children 157b30c96d03
comparison
equal deleted inserted replaced
226:eea38c7ad7b4 227:0e522484dd2a
52 #ifdef HAVE_OFFIX_DND 52 #ifdef HAVE_OFFIX_DND
53 #include "offix.h" 53 #include "offix.h"
54 #endif 54 #endif
55 55
56 Lisp_Object Vdefault_x_device; 56 Lisp_Object Vdefault_x_device;
57 #if defined(MULE) && (defined(LWLIB_MENUBARS_MOTIF) || defined(HAVE_XIM) || defined (USE_XFONTSET))
58 Lisp_Object Vx_app_defaults_directory;
59 #endif
57 60
58 /* Qdisplay in general.c */ 61 /* Qdisplay in general.c */
59 Lisp_Object Qx_error; 62 Lisp_Object Qx_error;
60 Lisp_Object Qinit_pre_x_win, Qinit_post_x_win; 63 Lisp_Object Qinit_pre_x_win, Qinit_post_x_win;
61 64
282 CONST char *data_dir; 285 CONST char *data_dir;
283 char path[MAXPATHLEN]; 286 char path[MAXPATHLEN];
284 XrmDatabase db = XtDatabase (dpy); /* ### XtScreenDatabase(dpy) ? */ 287 XrmDatabase db = XtDatabase (dpy); /* ### XtScreenDatabase(dpy) ? */
285 CONST char *locale = XrmLocaleOfDatabase (db); 288 CONST char *locale = XrmLocaleOfDatabase (db);
286 289
287 if (STRINGP (Vdata_directory) && XSTRING_LENGTH (Vdata_directory) > 0) 290 if (STRINGP (Vx_app_defaults_directory) &&
291 XSTRING_LENGTH (Vx_app_defaults_directory) > 0)
292 {
293 GET_C_STRING_FILENAME_DATA_ALLOCA(Vx_app_defaults_directory, data_dir);
294 sprintf (path, "%s%s/%s", data_dir, locale, app_class);
295 if (!access (path, R_OK))
296 XrmCombineFileDatabase (path, &db, False);
297 }
298 else if (STRINGP (Vdata_directory) && XSTRING_LENGTH (Vdata_directory) > 0)
288 { 299 {
289 GET_C_STRING_FILENAME_DATA_ALLOCA (Vdata_directory, data_dir); 300 GET_C_STRING_FILENAME_DATA_ALLOCA (Vdata_directory, data_dir);
290 sprintf (path, "%sapp-defaults/%s/%s", data_dir, locale, app_class); 301 sprintf (path, "%sapp-defaults/%s/%s", data_dir, locale, app_class);
291 if (!access (path, R_OK)) 302 if (!access (path, R_OK))
292 XrmCombineFileDatabase (path, &db, False); 303 XrmCombineFileDatabase (path, &db, False);
293 } 304 }
294 } 305 }
295 #endif /* LWLIB_MENUBARS_MOTIF or HAVE_XIM USE_XFONTSET */ 306 #endif /* LWLIB_MENUBARS_MOTIF or HAVE_XIM USE_XFONTSET */
296 #endif /* MULE */ 307 #endif /* MULE */
297 308
298 if (NILP (DEVICE_NAME (d))) 309 if (NILP (DEVICE_NAME (d)))
299 DEVICE_NAME (d) = display; 310 DEVICE_NAME (d) = display;
1616 When this variable is non-nil, XEmacs will commit immediate suicide 1627 When this variable is non-nil, XEmacs will commit immediate suicide
1617 when it gets a sigpipe from the X Server. 1628 when it gets a sigpipe from the X Server.
1618 */ ); 1629 */ );
1619 x_seppuku_on_epipe = 0; 1630 x_seppuku_on_epipe = 0;
1620 1631
1632 #if defined(MULE) && (defined(LWLIB_MENUBARS_MOTIF) || defined(HAVE_XIM) || defined (USE_XFONTSET))
1633 DEFVAR_LISP ("x-app-defaults-directory", &Vx_app_defaults_directory /*
1634 Used by the Lisp code to communicate to the low level X initialization
1635 where the localized init files are.
1636 */ );
1637 Vx_app_defaults_directory = Qnil;
1638 #endif
1639
1621 Fprovide (Qx); 1640 Fprovide (Qx);
1622 1641
1623 staticpro (&Vdefault_x_device); 1642 staticpro (&Vdefault_x_device);
1624 Vdefault_x_device = Qnil; 1643 Vdefault_x_device = Qnil;
1625 1644