unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Can someone explain this code in xterm.c?
@ 2003-04-25  1:56 Kim F. Storm
  2003-04-28  4:38 ` Richard Stallman
  0 siblings, 1 reply; 5+ messages in thread
From: Kim F. Storm @ 2003-04-25  1:56 UTC (permalink / raw)



In x_set_window_size_1, the vertical_scroll_bar_extra setting may be
set to a non-integral fraction of the canonical column width of the
frame:

(rms      25-Jul-95):   f->output_data.x->vertical_scroll_bar_extra
(kwzh     28-Sep-94):     = (!FRAME_HAS_VERTICAL_SCROLL_BARS (f)
(kwzh     28-Sep-94):        ? 0
(kwzh     28-Sep-94):        : FRAME_SCROLL_BAR_PIXEL_WIDTH (f) > 0
(kwzh     20-Sep-94):        ? FRAME_SCROLL_BAR_PIXEL_WIDTH (f)
(rms      25-Jul-95):        : (FRAME_SCROLL_BAR_COLS (f) * FONT_WIDTH (f->output_data.x->font)));


Anywhere else (including the normal X widget case, GTK, W32, and MAC
ports), the vertical_scroll_bar_extra is set to an multiple of the
canonical column width.

This setting is used in the calculation of the total width of the
frame window (in macro CHAR_TO_PIXEL_WIDTH), but in other parts of the
code, the width of the scroll bar _area_ is always calculated as the
number of scroll bar colums multiplied by the font width (canonical x
unit).

According to the comments on x_set_window_size_1, it is only used if F
doesn't have a widget, but I'm not sure how to interpret that ...
can the frame not have a widget, but still have scroll bars under X 
or GTK?

I really wonder whether that code really works (or is used at all).

So can someone please tell me under what circumstances that code is
used, and how it is intended to work if the rest of the code expects
the frame window to be a multiple of the canonical column width.

Thanks!

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2003-04-29 19:29 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-04-25  1:56 Can someone explain this code in xterm.c? Kim F. Storm
2003-04-28  4:38 ` Richard Stallman
2003-04-28 19:16   ` Alex Schroeder
2003-04-28 22:16   ` Kim F. Storm
2003-04-29 19:29     ` Richard Stallman

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).