Mercurial > emacs
view src/m/sun386.h @ 3882:a0b9347a3973
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.
* xfaces.c (face_vector, nfaces, nfaces_allocated): Make these
static.
author | Jim Blandy <jimb@redhat.com> |
---|---|
date | Tue, 22 Jun 1993 07:25:42 +0000 |
parents | 7be0f0a02725 |
children | 89be456088ef |
line wrap: on
line source
/* machine description file for Sun's 386-based RoadRunner. This file borrows heavily from "sun2.h", but since that file is heavily cpu-specific, it was easier not to include it. Copyright (C) 1988 Free Software Foundation, Inc. This file is part of GNU Emacs. GNU Emacs is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Emacs; see the file COPYING. If not, write to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ /* The following line tells the configuration script what sort of operating system this machine is likely to run. USUAL-OPSYS="note" NOTE-START Use s-sunos4-0.h for operating system version 4.0, and s-sunos4-1.h for later versions. See the file share-lib/SUNBUG for how to solve problems caused by bugs in the "export" version of SunOS 4. NOTE-END */ /* Say this machine is a bird */ #ifndef roadrunner #define roadrunner #endif /* Actual cpu-specific defs */ #include "intel386.h" /* Data type of load average, as read out of kmem. */ #define LOAD_AVE_TYPE long /* Convert that into an integer that is 100 for a load average of 1.0 */ #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) /* Underscores are not prepended to C symbols on this machine. */ #undef LDAV_SYMBOL #define LDAV_SYMBOL "avenrun" /* Must use the system's termcap. It does special things. */ #define LIBS_TERMCAP -ltermcap /* Arrange to link with sun windows, if requested. */ /* For details on emacstool and sunfns, see etc/SUN-SUPPORT */ /* These programs require Sun UNIX 4.2 Release 3.2 or greater */ #ifdef HAVE_SUN_WINDOWS #define OTHER_FILES ${etcdir}emacstool #define LIBS_MACHINE -lsuntool -lsunwindow -lpixrect #define OBJECTS_MACHINE sunfns.o #define SYMS_MACHINE syms_of_sunfns () #define PURESIZE 132000 #endif /* Roadrunner uses 'COFF' format */ #define COFF #define C_SWITCH_MACHINE -Bstatic /* avoid dynamic linking */ #define LD_SWITCH_MACHINE -n -Bstatic /* Get rid of the -e __start that s-sunos4.h does. */ #undef LD_SWITCH_SYSTEM