Mercurial > hg > xemacs-beta
annotate src/s/mach-bsd4-3.h @ 5090:0ca81354c4c7
Further frame-geometry cleanups
-------------------- ChangeLog entries follow: --------------------
man/ChangeLog addition:
2010-03-03 Ben Wing <ben@xemacs.org>
* internals/internals.texi (Intro to Window and Frame Geometry):
* internals/internals.texi (The Paned Area):
* internals/internals.texi (The Displayable Area):
Update to make note of e.g. the fact that the bottom gutter is
actually above the minibuffer.
src/ChangeLog addition:
2010-03-03 Ben Wing <ben@xemacs.org>
* emacs.c:
* emacs.c (assert_equal_failed):
* lisp.h:
* lisp.h (assert_equal):
New fun assert_equal, asserting that two values == each other, and
printing out both values upon failure.
* frame-gtk.c (gtk_initialize_frame_size):
* frame-impl.h:
* frame-impl.h (FRAME_TOP_INTERNAL_BORDER_START):
* frame-impl.h (FRAME_BOTTOM_INTERNAL_BORDER_START):
* frame-impl.h (FRAME_LEFT_INTERNAL_BORDER_START):
* frame-impl.h (FRAME_PANED_TOP_EDGE):
* frame-impl.h (FRAME_NONPANED_SIZE):
* frame-x.c (x_initialize_frame_size):
* frame.c:
* gutter.c (get_gutter_coords):
* gutter.c (calculate_gutter_size):
* gutter.h:
* gutter.h (WINDOW_REAL_TOP_GUTTER_BOUNDS):
* gutter.h (FRAME_TOP_GUTTER_BOUNDS):
* input-method-xlib.c:
* input-method-xlib.c (XIM_SetGeometry):
* redisplay-output.c (clear_left_border):
* redisplay-output.c (clear_right_border):
* redisplay-output.c (redisplay_output_pixmap):
* redisplay-output.c (redisplay_clear_region):
* redisplay-output.c (redisplay_clear_top_of_window):
* redisplay-output.c (redisplay_clear_to_window_end):
* redisplay-xlike-inc.c (XLIKE_clear_frame):
* redisplay.c:
* redisplay.c (UPDATE_CACHE_RETURN):
* redisplay.c (pixel_to_glyph_translation):
* toolbar.c (update_frame_toolbars_geometry):
* window.c (Fwindow_pixel_edges):
Get rid of some redundant macros. Consistently use the
FRAME_TOP_*_START, FRAME_RIGHT_*_END, etc. format. Rename
FRAME_*_BORDER_* to FRAME_*_INTERNAL_BORDER_*. Comment out
FRAME_BOTTOM_* for gutters and the paned area due to the
uncertainty over where the paned area actually begins. (Eventually
we should probably move the gutters outside the minibuffer so that
the paned area is contiguous.) Use FRAME_PANED_* more often in the
code to make things clearer.
Update the diagram to show that the bottom gutter is inside the
minibuffer (!) and that there are "junk boxes" when you have left
and/or right gutters (dead boxes that are mistakenly left uncleared,
unlike the corresponding scrollbar dead boxes). Update the text
appropriately to cover the bottom gutter position, etc.
Rewrite gutter-geometry code to use the FRAME_*_GUTTER_* in place of
equivalent expressions referencing other frame elements, to make the
code more portable in case we move around the gutter location.
Cleanup FRAME_*_GUTTER_BOUNDS() in gutter.h.
Add some #### GEOM! comments where I think code is incorrect --
typically, it wasn't fixed up properly when the gutter was added.
Some cosmetic changes.
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Wed, 03 Mar 2010 05:07:47 -0600 |
parents | c90385e49231 |
children | ba07c880114a 861f2601a38b |
rev | line source |
---|---|
4926
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
1 /* Definitions file for XEmacs running on Mach (BSD 4.3) |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
2 Copyright (C) 1985, 1986, 1993 Free Software Foundation, Inc. |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
3 |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
4 This file is part of XEmacs. |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
5 |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
6 XEmacs is free software; you can redistribute it and/or modify it |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
7 under the terms of the GNU General Public License as published by the |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
8 Free Software Foundation; either version 2, or (at your option) any |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
9 later version. |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
10 |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
11 XEmacs is distributed in the hope that it will be useful, but WITHOUT |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
12 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
13 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
14 for more details. |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
15 |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
16 You should have received a copy of the GNU General Public License |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
17 along with XEmacs; see the file COPYING. If not, write to |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
18 the Free Software Foundation, Inc., 51 Franklin St. - Fifth Floor, |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
19 Boston, MA 02110-1301, USA. */ |
c90385e49231
Add copyright and license information to s/mach-bsd4-3.h.
Jerry James <james@xemacs.org>
parents:
428
diff
changeset
|
20 |
428 | 21 /* Synched up with: FSF 19.31. */ |
22 | |
23 /* I don't care if this doesn't do more than including bsd4-3.h; | |
24 Mach is not bsd4-3 and the moment you forget it chances are that | |
25 you're in deep shit. */ | |
26 | |
27 #include "bsd4-3.h" | |
28 | |
29 /* The rest of this stuff is XEmacs additions. */ | |
30 | |
31 /* SYSTEM_TYPE should indicate the kind of system you are using. | |
32 It sets the Lisp variable system-type. */ | |
33 | |
34 #undef SYSTEM_TYPE | |
35 #define SYSTEM_TYPE "mach" | |
36 | |
37 /* Don't send signals to subprocesses by "typing" special chars at them. */ | |
38 #undef SIGNALS_VIA_CHARACTERS | |
39 | |
40 /* XEmacs change */ | |
41 /* unistd.h defines _POSIX_VERSION, which leads some things to believe | |
42 that _POSIX_PATH_MAX should be defined. Unfortunately, it isn't. */ | |
43 #ifndef NOT_C_CODE | |
44 #include <sys/param.h> | |
45 #define _POSIX_PATH_MAX MAXPATHLEN | |
46 #endif | |
47 | |
48 #ifndef NOT_C_CODE | |
49 typedef int pid_t; | |
50 /* XEmacs change */ | |
51 typedef unsigned short mode_t; | |
52 #endif /* NOT_C_CODE */ | |
53 | |
54 #if (defined(i386) || defined(ibmrt)) | |
55 /* use drem() instead of fmod() -- this is a BUG in the compiler runtime. */ | |
56 # define USE_DREM | |
57 #endif |