diff options
Diffstat (limited to 'src/xfaces.c')
| -rw-r--r-- | src/xfaces.c | 111 |
1 files changed, 28 insertions, 83 deletions
diff --git a/src/xfaces.c b/src/xfaces.c index 0600f53ba1e..6ecd857d685 100644 --- a/src/xfaces.c +++ b/src/xfaces.c | |||
| @@ -278,57 +278,8 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 278 | 278 | ||
| 279 | #define FACE_CACHE_BUCKETS_SIZE 1001 | 279 | #define FACE_CACHE_BUCKETS_SIZE 1001 |
| 280 | 280 | ||
| 281 | /* Keyword symbols used for face attribute names. */ | ||
| 282 | |||
| 283 | Lisp_Object QCfamily, QCheight, QCweight, QCslant; | ||
| 284 | static Lisp_Object QCunderline; | ||
| 285 | static Lisp_Object QCinverse_video, QCstipple; | ||
| 286 | Lisp_Object QCforeground, QCbackground; | ||
| 287 | Lisp_Object QCwidth; | ||
| 288 | static Lisp_Object QCfont, QCbold, QCitalic; | ||
| 289 | static Lisp_Object QCreverse_video; | ||
| 290 | static Lisp_Object QCoverline, QCstrike_through, QCbox, QCinherit; | ||
| 291 | static Lisp_Object QCfontset, QCdistant_foreground; | ||
| 292 | |||
| 293 | /* Symbols used for attribute values. */ | ||
| 294 | |||
| 295 | Lisp_Object Qnormal; | ||
| 296 | Lisp_Object Qbold; | ||
| 297 | static Lisp_Object Qline, Qwave; | ||
| 298 | Lisp_Object Qextra_light, Qlight; | ||
| 299 | Lisp_Object Qsemi_light, Qsemi_bold, Qextra_bold, Qultra_bold; | ||
| 300 | Lisp_Object Qoblique; | ||
| 301 | Lisp_Object Qitalic; | ||
| 302 | static Lisp_Object Qreleased_button, Qpressed_button; | ||
| 303 | static Lisp_Object QCstyle, QCcolor, QCline_width; | ||
| 304 | Lisp_Object Qunspecified; /* used in dosfns.c */ | ||
| 305 | static Lisp_Object QCignore_defface; | ||
| 306 | |||
| 307 | char unspecified_fg[] = "unspecified-fg", unspecified_bg[] = "unspecified-bg"; | 281 | char unspecified_fg[] = "unspecified-fg", unspecified_bg[] = "unspecified-bg"; |
| 308 | 282 | ||
| 309 | /* The name of the function to call when the background of the frame | ||
| 310 | has changed, frame_set_background_mode. */ | ||
| 311 | |||
| 312 | static Lisp_Object Qframe_set_background_mode; | ||
| 313 | |||
| 314 | /* Names of basic faces. */ | ||
| 315 | |||
| 316 | Lisp_Object Qdefault, Qtool_bar, Qfringe; | ||
| 317 | static Lisp_Object Qregion; | ||
| 318 | Lisp_Object Qheader_line, Qscroll_bar, Qcursor; | ||
| 319 | static Lisp_Object Qborder, Qmouse, Qmenu; | ||
| 320 | Lisp_Object Qmode_line_inactive; | ||
| 321 | static Lisp_Object Qvertical_border; | ||
| 322 | static Lisp_Object Qwindow_divider; | ||
| 323 | static Lisp_Object Qwindow_divider_first_pixel; | ||
| 324 | static Lisp_Object Qwindow_divider_last_pixel; | ||
| 325 | |||
| 326 | /* The symbol `face-alias'. A symbols having that property is an | ||
| 327 | alias for another face. Value of the property is the name of | ||
| 328 | the aliased face. */ | ||
| 329 | |||
| 330 | static Lisp_Object Qface_alias; | ||
| 331 | |||
| 332 | /* Alist of alternative font families. Each element is of the form | 283 | /* Alist of alternative font families. Each element is of the form |
| 333 | (FAMILY FAMILY1 FAMILY2 ...). If fonts of FAMILY can't be loaded, | 284 | (FAMILY FAMILY1 FAMILY2 ...). If fonts of FAMILY can't be loaded, |
| 334 | try FAMILY1, then FAMILY2, ... */ | 285 | try FAMILY1, then FAMILY2, ... */ |
| @@ -341,32 +292,6 @@ Lisp_Object Vface_alternative_font_family_alist; | |||
| 341 | 292 | ||
| 342 | Lisp_Object Vface_alternative_font_registry_alist; | 293 | Lisp_Object Vface_alternative_font_registry_alist; |
| 343 | 294 | ||
| 344 | /* Allowed scalable fonts. A value of nil means don't allow any | ||
| 345 | scalable fonts. A value of t means allow the use of any scalable | ||
| 346 | font. Otherwise, value must be a list of regular expressions. A | ||
| 347 | font may be scaled if its name matches a regular expression in the | ||
| 348 | list. */ | ||
| 349 | |||
| 350 | static Lisp_Object Qscalable_fonts_allowed; | ||
| 351 | |||
| 352 | /* The symbols `foreground-color' and `background-color' which can be | ||
| 353 | used as part of a `face' property. This is for compatibility with | ||
| 354 | Emacs 20.2. */ | ||
| 355 | |||
| 356 | Lisp_Object Qforeground_color, Qbackground_color; | ||
| 357 | |||
| 358 | /* The symbols `face' and `mouse-face' used as text properties. */ | ||
| 359 | |||
| 360 | Lisp_Object Qface; | ||
| 361 | |||
| 362 | /* Property for basic faces which other faces cannot inherit. */ | ||
| 363 | |||
| 364 | static Lisp_Object Qface_no_inherit; | ||
| 365 | |||
| 366 | /* Error symbol for wrong_type_argument in load_pixmap. */ | ||
| 367 | |||
| 368 | static Lisp_Object Qbitmap_spec_p; | ||
| 369 | |||
| 370 | /* The next ID to assign to Lisp faces. */ | 295 | /* The next ID to assign to Lisp faces. */ |
| 371 | 296 | ||
| 372 | static int next_lface_id; | 297 | static int next_lface_id; |
| @@ -376,14 +301,6 @@ static int next_lface_id; | |||
| 376 | static Lisp_Object *lface_id_to_name; | 301 | static Lisp_Object *lface_id_to_name; |
| 377 | static ptrdiff_t lface_id_to_name_size; | 302 | static ptrdiff_t lface_id_to_name_size; |
| 378 | 303 | ||
| 379 | /* TTY color-related functions (defined in tty-colors.el). */ | ||
| 380 | |||
| 381 | static Lisp_Object Qtty_color_desc, Qtty_color_by_index, Qtty_color_standard_values; | ||
| 382 | |||
| 383 | /* The name of the function used to compute colors on TTYs. */ | ||
| 384 | |||
| 385 | static Lisp_Object Qtty_color_alist; | ||
| 386 | |||
| 387 | #ifdef HAVE_WINDOW_SYSTEM | 304 | #ifdef HAVE_WINDOW_SYSTEM |
| 388 | 305 | ||
| 389 | /* Counter for calls to clear_face_cache. If this counter reaches | 306 | /* Counter for calls to clear_face_cache. If this counter reaches |
| @@ -6397,9 +6314,17 @@ DEFUN ("show-face-resources", Fshow_face_resources, Sshow_face_resources, | |||
| 6397 | void | 6314 | void |
| 6398 | syms_of_xfaces (void) | 6315 | syms_of_xfaces (void) |
| 6399 | { | 6316 | { |
| 6317 | /* The symbols `face' and `mouse-face' used as text properties. */ | ||
| 6400 | DEFSYM (Qface, "face"); | 6318 | DEFSYM (Qface, "face"); |
| 6319 | |||
| 6320 | /* Property for basic faces which other faces cannot inherit. */ | ||
| 6401 | DEFSYM (Qface_no_inherit, "face-no-inherit"); | 6321 | DEFSYM (Qface_no_inherit, "face-no-inherit"); |
| 6322 | |||
| 6323 | /* Error symbol for wrong_type_argument in load_pixmap. */ | ||
| 6402 | DEFSYM (Qbitmap_spec_p, "bitmap-spec-p"); | 6324 | DEFSYM (Qbitmap_spec_p, "bitmap-spec-p"); |
| 6325 | |||
| 6326 | /* The name of the function to call when the background of the frame | ||
| 6327 | has changed, frame_set_background_mode. */ | ||
| 6403 | DEFSYM (Qframe_set_background_mode, "frame-set-background-mode"); | 6328 | DEFSYM (Qframe_set_background_mode, "frame-set-background-mode"); |
| 6404 | 6329 | ||
| 6405 | /* Lisp face attribute keywords. */ | 6330 | /* Lisp face attribute keywords. */ |
| @@ -6442,12 +6367,22 @@ syms_of_xfaces (void) | |||
| 6442 | DEFSYM (Qultra_bold, "ultra-bold"); | 6367 | DEFSYM (Qultra_bold, "ultra-bold"); |
| 6443 | DEFSYM (Qoblique, "oblique"); | 6368 | DEFSYM (Qoblique, "oblique"); |
| 6444 | DEFSYM (Qitalic, "italic"); | 6369 | DEFSYM (Qitalic, "italic"); |
| 6370 | |||
| 6371 | /* The symbols `foreground-color' and `background-color' which can be | ||
| 6372 | used as part of a `face' property. This is for compatibility with | ||
| 6373 | Emacs 20.2. */ | ||
| 6445 | DEFSYM (Qbackground_color, "background-color"); | 6374 | DEFSYM (Qbackground_color, "background-color"); |
| 6446 | DEFSYM (Qforeground_color, "foreground-color"); | 6375 | DEFSYM (Qforeground_color, "foreground-color"); |
| 6376 | |||
| 6447 | DEFSYM (Qunspecified, "unspecified"); | 6377 | DEFSYM (Qunspecified, "unspecified"); |
| 6448 | DEFSYM (QCignore_defface, ":ignore-defface"); | 6378 | DEFSYM (QCignore_defface, ":ignore-defface"); |
| 6449 | 6379 | ||
| 6380 | /* The symbol `face-alias'. A symbol having that property is an | ||
| 6381 | alias for another face. Value of the property is the name of | ||
| 6382 | the aliased face. */ | ||
| 6450 | DEFSYM (Qface_alias, "face-alias"); | 6383 | DEFSYM (Qface_alias, "face-alias"); |
| 6384 | |||
| 6385 | /* Names of basic faces. */ | ||
| 6451 | DEFSYM (Qdefault, "default"); | 6386 | DEFSYM (Qdefault, "default"); |
| 6452 | DEFSYM (Qtool_bar, "tool-bar"); | 6387 | DEFSYM (Qtool_bar, "tool-bar"); |
| 6453 | DEFSYM (Qregion, "region"); | 6388 | DEFSYM (Qregion, "region"); |
| @@ -6460,13 +6395,23 @@ syms_of_xfaces (void) | |||
| 6460 | DEFSYM (Qmouse, "mouse"); | 6395 | DEFSYM (Qmouse, "mouse"); |
| 6461 | DEFSYM (Qmode_line_inactive, "mode-line-inactive"); | 6396 | DEFSYM (Qmode_line_inactive, "mode-line-inactive"); |
| 6462 | DEFSYM (Qvertical_border, "vertical-border"); | 6397 | DEFSYM (Qvertical_border, "vertical-border"); |
| 6398 | |||
| 6399 | /* TTY color-related functions (defined in tty-colors.el). */ | ||
| 6463 | DEFSYM (Qwindow_divider, "window-divider"); | 6400 | DEFSYM (Qwindow_divider, "window-divider"); |
| 6464 | DEFSYM (Qwindow_divider_first_pixel, "window-divider-first-pixel"); | 6401 | DEFSYM (Qwindow_divider_first_pixel, "window-divider-first-pixel"); |
| 6465 | DEFSYM (Qwindow_divider_last_pixel, "window-divider-last-pixel"); | 6402 | DEFSYM (Qwindow_divider_last_pixel, "window-divider-last-pixel"); |
| 6466 | DEFSYM (Qtty_color_desc, "tty-color-desc"); | 6403 | DEFSYM (Qtty_color_desc, "tty-color-desc"); |
| 6467 | DEFSYM (Qtty_color_standard_values, "tty-color-standard-values"); | 6404 | DEFSYM (Qtty_color_standard_values, "tty-color-standard-values"); |
| 6468 | DEFSYM (Qtty_color_by_index, "tty-color-by-index"); | 6405 | DEFSYM (Qtty_color_by_index, "tty-color-by-index"); |
| 6406 | |||
| 6407 | /* The name of the function used to compute colors on TTYs. */ | ||
| 6469 | DEFSYM (Qtty_color_alist, "tty-color-alist"); | 6408 | DEFSYM (Qtty_color_alist, "tty-color-alist"); |
| 6409 | |||
| 6410 | /* Allowed scalable fonts. A value of nil means don't allow any | ||
| 6411 | scalable fonts. A value of t means allow the use of any scalable | ||
| 6412 | font. Otherwise, value must be a list of regular expressions. A | ||
| 6413 | font may be scaled if its name matches a regular expression in the | ||
| 6414 | list. */ | ||
| 6470 | DEFSYM (Qscalable_fonts_allowed, "scalable-fonts-allowed"); | 6415 | DEFSYM (Qscalable_fonts_allowed, "scalable-fonts-allowed"); |
| 6471 | 6416 | ||
| 6472 | Vparam_value_alist = list1 (Fcons (Qnil, Qnil)); | 6417 | Vparam_value_alist = list1 (Fcons (Qnil, Qnil)); |