diff options
| author | Martin Rudalics | 2019-03-13 10:45:28 +0100 |
|---|---|---|
| committer | Martin Rudalics | 2019-03-13 10:45:28 +0100 |
| commit | bc75589b905f70753ce2ce5f854efb423781287e (patch) | |
| tree | 216c3ff030157fcd334638a99d1daefbe678a009 | |
| parent | cc4cebf5f7f23be26d89ec6cd7890cb5ac36326c (diff) | |
| download | emacs-bc75589b905f70753ce2ce5f854efb423781287e.tar.gz emacs-bc75589b905f70753ce2ce5f854efb423781287e.zip | |
Document restrictions when setting window margins, fringes or scroll bars
* src/window.c (Fset_window_margins, Fset_window_fringes)
(Fset_window_scroll_bars): In doc-strings tell that a window
must be large enough to accommodate fringes, sroll bars and
margins of the desired size.
* doc/lispref/display.texi (Fringe Size/Pos, Scroll Bars)
(Display Margins): Tell that windows must be large enough to
accommodate fringes, sroll bars and margins of the desired
size.
| -rw-r--r-- | doc/lispref/display.texi | 9 | ||||
| -rw-r--r-- | src/window.c | 11 |
2 files changed, 18 insertions, 2 deletions
diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi index 7892c15b462..e3ee62ffb68 100644 --- a/doc/lispref/display.texi +++ b/doc/lispref/display.texi | |||
| @@ -3916,6 +3916,9 @@ fringe, and likewise @var{right} for the right fringe. A value of | |||
| 3916 | @var{outside-margins} is non-@code{nil}, that specifies that fringes | 3916 | @var{outside-margins} is non-@code{nil}, that specifies that fringes |
| 3917 | should appear outside of the display margins. | 3917 | should appear outside of the display margins. |
| 3918 | 3918 | ||
| 3919 | If @var{window} is not large enough to accommodate fringes of the | ||
| 3920 | desired width, this leaves the fringes of @var{window} unchanged. | ||
| 3921 | |||
| 3919 | The values specified here may be later overridden by invoking | 3922 | The values specified here may be later overridden by invoking |
| 3920 | @code{set-window-buffer} (@pxref{Buffers and Windows}) on @var{window} | 3923 | @code{set-window-buffer} (@pxref{Buffers and Windows}) on @var{window} |
| 3921 | with its @var{keep-margins} argument @code{nil} or omitted. | 3924 | with its @var{keep-margins} argument @code{nil} or omitted. |
| @@ -4337,6 +4340,9 @@ vertical scroll bar. | |||
| 4337 | The possible values are @code{bottom}, @code{t}, which means to use the | 4340 | The possible values are @code{bottom}, @code{t}, which means to use the |
| 4338 | frame's default, and @code{nil} for no horizontal scroll bar. | 4341 | frame's default, and @code{nil} for no horizontal scroll bar. |
| 4339 | 4342 | ||
| 4343 | If @var{window} is not large enough to accommodate a scroll bar of the | ||
| 4344 | desired dimension, this leaves the corresponding scroll bar unchanged. | ||
| 4345 | |||
| 4340 | The values specified here may be later overridden by invoking | 4346 | The values specified here may be later overridden by invoking |
| 4341 | @code{set-window-buffer} (@pxref{Buffers and Windows}) on @var{window} | 4347 | @code{set-window-buffer} (@pxref{Buffers and Windows}) on @var{window} |
| 4342 | with its @var{keep-margins} argument @code{nil} or omitted. | 4348 | with its @var{keep-margins} argument @code{nil} or omitted. |
| @@ -4926,6 +4932,9 @@ This function specifies the margin widths for window @var{window}, in | |||
| 4926 | character cell units. The argument @var{left} controls the left | 4932 | character cell units. The argument @var{left} controls the left |
| 4927 | margin, and @var{right} controls the right margin (default @code{0}). | 4933 | margin, and @var{right} controls the right margin (default @code{0}). |
| 4928 | 4934 | ||
| 4935 | If @var{window} is not large enough to accommodate margins of the | ||
| 4936 | desired width, this leaves the margins of @var{window} unchanged. | ||
| 4937 | |||
| 4929 | The values specified here may be later overridden by invoking | 4938 | The values specified here may be later overridden by invoking |
| 4930 | @code{set-window-buffer} (@pxref{Buffers and Windows}) on @var{window} | 4939 | @code{set-window-buffer} (@pxref{Buffers and Windows}) on @var{window} |
| 4931 | with its @var{keep-margins} argument @code{nil} or omitted. | 4940 | with its @var{keep-margins} argument @code{nil} or omitted. |
diff --git a/src/window.c b/src/window.c index 7b879d0e1eb..04183abb7c5 100644 --- a/src/window.c +++ b/src/window.c | |||
| @@ -7076,7 +7076,9 @@ reserve for the left marginal area. Optional third arg RIGHT-WIDTH | |||
| 7076 | does the same for the right marginal area. A nil width parameter | 7076 | does the same for the right marginal area. A nil width parameter |
| 7077 | means no margin. | 7077 | means no margin. |
| 7078 | 7078 | ||
| 7079 | Return t if any margin was actually changed and nil otherwise. */) | 7079 | Leave margins unchanged if WINDOW is not large enough to accommodate |
| 7080 | margins of the desired width. Return t if any margin was actually | ||
| 7081 | changed and nil otherwise. */) | ||
| 7080 | (Lisp_Object window, Lisp_Object left_width, Lisp_Object right_width) | 7082 | (Lisp_Object window, Lisp_Object left_width, Lisp_Object right_width) |
| 7081 | { | 7083 | { |
| 7082 | struct window *w = set_window_margins (decode_live_window (window), | 7084 | struct window *w = set_window_margins (decode_live_window (window), |
| @@ -7158,11 +7160,14 @@ the left fringe. Optional third arg RIGHT-WIDTH specifies the right | |||
| 7158 | fringe width. If a fringe width arg is nil, that means to use the | 7160 | fringe width. If a fringe width arg is nil, that means to use the |
| 7159 | frame's default fringe width. Default fringe widths can be set with | 7161 | frame's default fringe width. Default fringe widths can be set with |
| 7160 | the command `set-fringe-style'. | 7162 | the command `set-fringe-style'. |
| 7163 | |||
| 7161 | If optional fourth arg OUTSIDE-MARGINS is non-nil, draw the fringes | 7164 | If optional fourth arg OUTSIDE-MARGINS is non-nil, draw the fringes |
| 7162 | outside of the display margins. By default, fringes are drawn between | 7165 | outside of the display margins. By default, fringes are drawn between |
| 7163 | display marginal areas and the text area. | 7166 | display marginal areas and the text area. |
| 7164 | 7167 | ||
| 7165 | Return t if any fringe was actually changed and nil otherwise. */) | 7168 | Leave fringes unchanged if WINDOW is not large enough to accommodate |
| 7169 | fringes of the desired width. Return t if any fringe was actually | ||
| 7170 | changed and nil otherwise. */) | ||
| 7166 | (Lisp_Object window, Lisp_Object left_width, | 7171 | (Lisp_Object window, Lisp_Object left_width, |
| 7167 | Lisp_Object right_width, Lisp_Object outside_margins) | 7172 | Lisp_Object right_width, Lisp_Object outside_margins) |
| 7168 | { | 7173 | { |
| @@ -7287,6 +7292,8 @@ horizontal scroll bar: bottom, nil, or t where nil means to not display | |||
| 7287 | a horizontal scroll bar on WINDOW and t means to use WINDOW frame's | 7292 | a horizontal scroll bar on WINDOW and t means to use WINDOW frame's |
| 7288 | horizontal scroll bar type. | 7293 | horizontal scroll bar type. |
| 7289 | 7294 | ||
| 7295 | If WINDOW is not large enough to accommodate a scroll bar of the | ||
| 7296 | desired dimension, leave the corresponding scroll bar unchanged. | ||
| 7290 | Return t if scroll bars were actually changed and nil otherwise. */) | 7297 | Return t if scroll bars were actually changed and nil otherwise. */) |
| 7291 | (Lisp_Object window, Lisp_Object width, Lisp_Object vertical_type, | 7298 | (Lisp_Object window, Lisp_Object width, Lisp_Object vertical_type, |
| 7292 | Lisp_Object height, Lisp_Object horizontal_type) | 7299 | Lisp_Object height, Lisp_Object horizontal_type) |