annotate info/dir @ 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 c2580215c222
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1 -*- Text -*-
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
2
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
3 This is the file .../info/dir, which contains the topmost node of the Info
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
4 hierarchy. The first time you invoke Info you start off looking at that node,
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
5 which is (dir)Top.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
6
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
7 Rather than adding new nodes to this directory (and this file) it is a better
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
8 idea to put them in a site-local directory, and then configure info to search
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
9 in that directory as well. That way, you won't have to re-edit this file when
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
10 a new release of the editor comes out.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
11
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
12 For example, you could add this code to .../lisp/site-start.el, which is
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
13 loaded before ~/.emacs each time the editor starts up:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
14
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
15 ;; find local info nodes
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
16 (setq Info-directory-list
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
17 (append Info-directory-list '("/private/info/")))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
18
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
19 Then, when you enter info, a dir file like this one will be automatically
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
20 created and saved (provided you have write access to the directory). The
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
21 contents of that file "/private/info/dir" will be appended to the contents of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
22 this file.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
23
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
24 
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
25 File: dir Node: Top This is the top of the INFO tree
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
26
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
27 This is Info, the online documentation browsing system.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
28 This page (the Directory node) gives a menu of major topics.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
29
1092
f5d8712231af [xemacs-hg @ 2002-11-11 14:19:07 by stephent]
stephent
parents: 721
diff changeset
30 button2 on a highlighted word follows that cross-reference.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
31 button3 anywhere brings up a menu of commands.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
32 ? lists additional keyboard commands.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
33 h invokes the Info tutorial.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
34
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
35 * Menu:
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
36
697
7a42cc017e59 [xemacs-hg @ 2001-12-16 10:26:55 by adrian]
adrian
parents: 462
diff changeset
37 XEmacs 21.5
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
38 ===========
2609
c2580215c222 [xemacs-hg @ 2005-02-23 18:56:41 by adrian]
adrian
parents: 1092
diff changeset
39 * XEmacs: (xemacs). XEmacs Editor.
c2580215c222 [xemacs-hg @ 2005-02-23 18:56:41 by adrian]
adrian
parents: 1092
diff changeset
40 * Lispref: (lispref). XEmacs Lisp Reference Manual.
c2580215c222 [xemacs-hg @ 2005-02-23 18:56:41 by adrian]
adrian
parents: 1092
diff changeset
41 * Intro: (new-users-guide). Introduction to the XEmacs Editor.
c2580215c222 [xemacs-hg @ 2005-02-23 18:56:41 by adrian]
adrian
parents: 1092
diff changeset
42 * FAQ: (xemacs-faq). XEmacs FAQ.
c2580215c222 [xemacs-hg @ 2005-02-23 18:56:41 by adrian]
adrian
parents: 1092
diff changeset
43 * Info: (info). Documentation browsing system.
c2580215c222 [xemacs-hg @ 2005-02-23 18:56:41 by adrian]
adrian
parents: 1092
diff changeset
44 * Internals: (internals). XEmacs Internals Manual.
c2580215c222 [xemacs-hg @ 2005-02-23 18:56:41 by adrian]
adrian
parents: 1092
diff changeset
45
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
46
462
0784d089fdc9 Import from CVS: tag r21-2-46
cvs
parents: 428
diff changeset
47 Other Documentation:
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
48
2609
c2580215c222 [xemacs-hg @ 2005-02-23 18:56:41 by adrian]
adrian
parents: 1092
diff changeset
49 * Common Lisp: (cl). XEmacs Common Lisp emulation package.
c2580215c222 [xemacs-hg @ 2005-02-23 18:56:41 by adrian]
adrian
parents: 1092
diff changeset
50 * Customizations: (custom). Customization Library.
c2580215c222 [xemacs-hg @ 2005-02-23 18:56:41 by adrian]
adrian
parents: 1092
diff changeset
51 * Emodules: (emodules). XEmacs dynamically loadable module support.
c2580215c222 [xemacs-hg @ 2005-02-23 18:56:41 by adrian]
adrian
parents: 1092
diff changeset
52 * External Widget: (external-widget). External Client Widget.
c2580215c222 [xemacs-hg @ 2005-02-23 18:56:41 by adrian]
adrian
parents: 1092
diff changeset
53 * Standards: (standards). GNU coding standards.
c2580215c222 [xemacs-hg @ 2005-02-23 18:56:41 by adrian]
adrian
parents: 1092
diff changeset
54 * Term mode: (term). XEmacs Terminal Emulator Mode.
c2580215c222 [xemacs-hg @ 2005-02-23 18:56:41 by adrian]
adrian
parents: 1092
diff changeset
55 * Termcap: (termcap). Termcap library of the GNU system.
c2580215c222 [xemacs-hg @ 2005-02-23 18:56:41 by adrian]
adrian
parents: 1092
diff changeset
56 * Texinfo: (texinfo). The GNU documentation format.
c2580215c222 [xemacs-hg @ 2005-02-23 18:56:41 by adrian]
adrian
parents: 1092
diff changeset
57 * Widgets: (widget). The Emacs Widget Library.
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
58