view src/chpdef.h @ 3881:9d92b383b584

Separate parameter faces (those created and modified by the user) from the computed faces (the combinations created by compute_char_face), so that we don't waste global face id's. * xterm.h (struct x_display): Replace the fields faces and n_faces with fields param_faces, n_param_faces, computed_faces, n_computed_faces, and size_computed_faces. (FRAME_FACES, FRAME_N_FACES): Replaced by... (FRAME_COMPUTED_FACES, FRAME_N_COMPUTED_FACES, FRAME_PARAM_FACES, FRAME_N_PARAM_FACES): New macros. * xfaces.c: Doc fixes. (init_frame_faces): Call new_computed_face to create entries for the default and mode line faces. Use the FRAME...PARAM_FACES macros. (free_frame_faces): Use the FRAME...PARAM_FACES and FRAME...COMPUTED_FACES macros. Don't use the copy flag; all parameter faces have real X resources, and all computed faces just have copies. Free both the parameter and computed face arrays. (new_computed_face): New function. (intern_computed_face): Renamed from intern_frame_face; callers changed. Call new_computed_face. (ensure_face_ready, compute_char_face, compute_glyph_face): Use the FRAME...PARAM_FACES macros. (recompute_basic_faces): Use the FRAME...PARAM_FACES and FRAME...COMPUTED_FACES macros. Produce the computed faces by starting with the base faces and merging in the parameter faces. (Fset_face_attribute_internal): Use the FRAME...PARAM_FACES macros. Just call recompute_basic_faces if the default or mode line faces have changed. * xfns.c (Fx_list_fonts): Use the FRAME...PARAM_FACES macros. * xterm.c (dumpglyphs): Use the FRAME...COMPUTED_FACES macros. * dispextern.h (struct face): Remove the copy member. This is no longer necessary; all computed faces are copies, and no parameter faces are. * xfns.c (Fx_open_connection): Remember to block input while calling x_load_resources. * xrdb.c: Undo change of June 19th; it was a BLOCK_INPUT problem, not a server-specific bug.
author Jim Blandy <jimb@redhat.com>
date Tue, 22 Jun 1993 07:25:11 +0000
parents 3165b2697c78
children 695cf19ef79e
line wrap: on
line source

#define	CHP$_END	0
#define	CHP$_ACCESS	1
#define	CHP$_FLAGS	2
#define	CHP$_PRIV	3
#define	CHP$_ACMODE	4
#define	CHP$_ACCLASS	5
#define	CHP$_RIGHTS	6
#define	CHP$_ADDRIGHTS	7
#define	CHP$_MODE	8
#define	CHP$_MODES	9
#define	CHP$_MINCLASS	10
#define	CHP$_MAXCLASS	11
#define	CHP$_OWNER	12
#define	CHP$_PROT	13
#define	CHP$_ACL	14
#define	CHP$_AUDITNAME	15
#define	CHP$_ALARMNAME	16
#define	CHP$_MATCHEDACE	17
#define	CHP$_PRIVUSED	18
#define	CHP$_MAX_CODE	19
#define	CHP$M_SYSPRV	1
#define	CHP$M_BYPASS	2
#define	CHP$M_UPGRADE	4
#define	CHP$M_DOWNGRADE	8
#define	CHP$M_GRPPRV	16
#define	CHP$M_READALL	32
#define	CHP$V_SYSPRV	0
#define	CHP$V_BYPASS	1
#define	CHP$V_UPGRADE	2
#define	CHP$V_DOWNGRADE	3
#define	CHP$V_GRPPRV	4
#define	CHP$V_READALL	5
#define	CHP$M_READ	1
#define	CHP$M_WRITE	2
#define	CHP$M_USEREADALL	4
#define	CHP$V_READ	0
#define	CHP$V_WRITE	1
#define	CHP$V_USEREADALL	2