diff options
| author | Eli Zaretskii | 1999-12-06 16:54:09 +0000 |
|---|---|---|
| committer | Eli Zaretskii | 1999-12-06 16:54:09 +0000 |
| commit | 2d764c783d0ab96cc246f3bb1dad70f2ef56ce0f (patch) | |
| tree | fa1366f693555a3ec65273f478ed95babf1bd0a9 /src/msdos.h | |
| parent | f6737cde3e786b0e8acea4b613aa42cf49fa204c (diff) | |
| download | emacs-2d764c783d0ab96cc246f3bb1dad70f2ef56ce0f.tar.gz emacs-2d764c783d0ab96cc246f3bb1dad70f2ef56ce0f.zip | |
Changes for automatic remapping of X colors on terminal frames:
* xfaces.c (XColor) [!HAVE_X_WINDOWS]: Provide a typedef for non-X
frames.
(Vface_tty_color_alist): Remove.
(tty_defined_color): New function.
(defined_color): Rewrite to support any type of frame.
(tty_color_name): New function.
(face_color_supported_p, Fface_color_gray_p,
Fface_color_supported_p): Support non-X frames.
(load_color): Enclose the color name in quotes, in the log
messages. Remove DOS-specific version of load_color.
(realize_tty_face): Take the supported colors from
tty-color-alist. Support translation of X colors to the closest
tty color, for both MSDOS and tty frames.
[MSDOS]: Don't invert face colors if they were taken from the
frame colors.
(Fface_register_tty_color, Fface_clear_tty_colors): Remove.
* frame.h (struct x_output) [!MSDOS, !WINDOWSNT, !HAVE_X_WINDOWS]:
Define a mostly empty surrogate.
(tty_display): Declare.
* frame.c (make_terminal_frame) [!macintosh]: Don't use
tty_display.
(Fframe_parameters): Don't invert colors of non-FRAME_WINDOW_P
frames when the frame's param_alist includes 'reverse.
(tty_display): Define.
(make_terminal_frame) [!MSDOS]: Assign &tty_display to the
output_data.x member.
(Fframe_parameters): Return foreground and background color names
on tty frames as well, in addition to MSDOS frames.
* msdos.h (DisplayWidth, DisplayHeight): Changes for Lisp_Object
selected_frame.
(struct x_output): Remove unused members; document who uses each
member.
(FRAME_PARAM_FACES, FRAME_N_PARAM_FACES, FRAME_DEFAULT_PARAM_FACE,
FRAME_MODE_LINE_PARAM_FACE, FRAME_COMPUTED_FACES,
FRAME_N_COMPUTED_FACES, FRAME_SIZE_COMPUTED_FACES,
FRAME_DEFAULT_FACE, FRAME_MODE_LINE_FACE, unload_color): Remove
unused macro definintions.
* msdos.c (IT_set_frame_parameters): Don't call
recompute_basic_faces, the next redisplay will, anyway.
(x_current_display): Remove unused variable.
Many functions: changes for Lisp_object selected_frame.
(IT_set_face): If the tty_reverse_p flag is set for the face,
reverse the foreground and background colors.
(Fmsdos_remember_default_colors): New function.
(syms_of_msdos): Defsubr it.
(IT_set_frame_parameters): Use initial_screen_colors[] when
creating a new frame. If the frame parameters include 'reverse,
swap the foreground and background colors.
(internal_terminal_init): Initialize initial_screen_colors to -1.
(syms_of_msdos): Add DEFVAR_BOOL for x-stretch-cursor, to shut up
cus-start.el.
* Makefile.in (lisp, shortlisp): Add lisp/term/tty-colors.elc.
* xfns.c (x_defined_color): Rename from defined_color. All
callers changed.
(Fxw_color_defined_p): Renamed from Fx_color_defined_p;
all callers changed.
(Fxw_color_values): Renamed from Fx_color_values; all callers
changed.
(Fxw_display_color_p): Renamed from Fx_display_color_p; all
callers changed.
(x_window_to_frame, x_any_window_to_frame,
x_non_menubar_window_to_frame, x_menubar_window_to_frame,
x_top_window_to_frame): Use !FRAME_X_P instead of
f->output_data.nothing.
* xterm.h (x_defined_color): Rename from defined_color.
* w32fns.c (x_window_to_frame): Use FRAME_W32_P instead of
f->output_data.nothing.
(Fxw_color_defined_p): Renamed from Fx_color_defined_p;
all callers changed.
(Fxw_color_values): Renamed from Fx_color_values; all callers
changed.
(Fxw_display_color_p): Renamed from Fx_display_color_p; all
callers changed.
* dispextern.h (tty_color_name): Add prototype.
* xmenu.c (menubar_id_to_frame): Use FRAME_WINDOW_P instead of
f->output_data.nothing.
* w32menu.c (menubar_id_to_frame): Likewise.
* w32term.h (w32_output): Declare.
* dosfns.c (Qmsdos_color_translate): Remove.
(msdos_stdcolor_name): Now returns a Lisp_Object.
* dosfns.h (Qmsdos_color_translate): Remove.
* s/msdos.h (INTERNAL_TERMINAL): Add entries for color support.
Diffstat (limited to 'src/msdos.h')
| -rw-r--r-- | src/msdos.h | 42 |
1 files changed, 11 insertions, 31 deletions
diff --git a/src/msdos.h b/src/msdos.h index c8ff29c2dd9..87e88dda475 100644 --- a/src/msdos.h +++ b/src/msdos.h | |||
| @@ -58,33 +58,18 @@ typedef int XRectangle; | |||
| 58 | /* This is a cut-down version of the one in xterm.h, which see. */ | 58 | /* This is a cut-down version of the one in xterm.h, which see. */ |
| 59 | struct x_output | 59 | struct x_output |
| 60 | { | 60 | { |
| 61 | int left_pos; | 61 | int left_pos; /* used in xmenu_show (xmenu.c) */ |
| 62 | int top_pos; | 62 | int top_pos; /* ditto */ |
| 63 | int line_height; | 63 | int line_height; /* used in x-popup-menu (xmenu.c) */ |
| 64 | PIX_TYPE background_pixel; | 64 | PIX_TYPE background_pixel; /* used in xfaces.c and lots of other places */ |
| 65 | PIX_TYPE foreground_pixel; | 65 | PIX_TYPE foreground_pixel; /* ditto */ |
| 66 | XFontStruct *font; | 66 | XFontStruct *font; /* used in x-popup-menu (xmenu.c) */ |
| 67 | Window busy_window; | 67 | Window busy_window; /* currently unused (but maybe some day) */ |
| 68 | unsigned busy_p : 1; | 68 | unsigned busy_p : 1; /* ditto */ |
| 69 | struct face **param_faces; | ||
| 70 | int n_param_faces; | ||
| 71 | struct face **computed_faces; | ||
| 72 | int n_computed_faces; | ||
| 73 | int size_computed_faces; | ||
| 74 | }; | 69 | }; |
| 75 | 70 | ||
| 76 | extern struct x_output the_only_x_display; | 71 | extern struct x_output the_only_x_display; |
| 77 | extern Display *x_current_display; | 72 | |
| 78 | |||
| 79 | #define FRAME_PARAM_FACES(f) (the_only_x_display.param_faces) | ||
| 80 | #define FRAME_N_PARAM_FACES(f) (the_only_x_display.n_param_faces) | ||
| 81 | #define FRAME_DEFAULT_PARAM_FACE(f) (FRAME_PARAM_FACES (f)[0]) | ||
| 82 | #define FRAME_MODE_LINE_PARAM_FACE(f) (FRAME_PARAM_FACES (f)[1]) | ||
| 83 | #define FRAME_COMPUTED_FACES(f) (the_only_x_display.computed_faces) | ||
| 84 | #define FRAME_N_COMPUTED_FACES(f) (the_only_x_display.n_computed_faces) | ||
| 85 | #define FRAME_SIZE_COMPUTED_FACES(f) (the_only_x_display.size_computed_faces) | ||
| 86 | #define FRAME_DEFAULT_FACE(f) (the_only_x_display.computed_faces[0]) | ||
| 87 | #define FRAME_MODE_LINE_FACE(f) (the_only_x_display.computed_faces[1]) | ||
| 88 | #define FRAME_X_DISPLAY(f) ((Display *) 0) | 73 | #define FRAME_X_DISPLAY(f) ((Display *) 0) |
| 89 | #define FRAME_FOREGROUND_PIXEL(f) (the_only_x_display.foreground_pixel) | 74 | #define FRAME_FOREGROUND_PIXEL(f) (the_only_x_display.foreground_pixel) |
| 90 | #define FRAME_BACKGROUND_PIXEL(f) (the_only_x_display.background_pixel) | 75 | #define FRAME_BACKGROUND_PIXEL(f) (the_only_x_display.background_pixel) |
| @@ -95,10 +80,6 @@ extern Display *x_current_display; | |||
| 95 | /* Forward declarations for prototypes. */ | 80 | /* Forward declarations for prototypes. */ |
| 96 | struct frame; | 81 | struct frame; |
| 97 | struct window; | 82 | struct window; |
| 98 | #if 0 | ||
| 99 | extern int face_name_id_number P_ ((struct frame *, Lisp_Object)); /* !!! */ | ||
| 100 | extern int compute_glyph_face P_ ((struct frame *, int, int)); /* !!! */ | ||
| 101 | #endif | ||
| 102 | 83 | ||
| 103 | /* From xterm.c; emulated on msdos.c */ | 84 | /* From xterm.c; emulated on msdos.c */ |
| 104 | 85 | ||
| @@ -116,12 +97,11 @@ extern int x_pixel_width P_ ((struct frame *)); | |||
| 116 | extern int x_pixel_height P_ ((struct frame *)); | 97 | extern int x_pixel_height P_ ((struct frame *)); |
| 117 | 98 | ||
| 118 | #define XFreeGC (void) | 99 | #define XFreeGC (void) |
| 119 | #define unload_color(p1,p2) | ||
| 120 | #define x_destroy_bitmap(p1,p2) | 100 | #define x_destroy_bitmap(p1,p2) |
| 121 | #define load_pixmap(p1,p2,p3,p4) (0) | 101 | #define load_pixmap(p1,p2,p3,p4) (0) |
| 122 | #define XGetGeometry(p1,p2,p3,p4,p5,p6,p7,p8,p9) | 102 | #define XGetGeometry(p1,p2,p3,p4,p5,p6,p7,p8,p9) |
| 123 | #define DisplayWidth(p1,p2) (selected_frame->width) | 103 | #define DisplayWidth(p1,p2) (SELECTED_FRAME()->width) |
| 124 | #define DisplayHeight(p1,p2) (selected_frame->height) | 104 | #define DisplayHeight(p1,p2) (SELECTED_FRAME()->height) |
| 125 | #define XMenuSetAEQ (void) | 105 | #define XMenuSetAEQ (void) |
| 126 | #define XMenuSetFreeze (void) | 106 | #define XMenuSetFreeze (void) |
| 127 | #define XMenuRecompute (void) | 107 | #define XMenuRecompute (void) |