Mercurial > hg > xemacs-beta
diff src/redisplay-msw.c @ 4928:ea701c23ed84
change text_width method to take a window, in preparation for unicode-internal changes
-------------------- ChangeLog entries follow: --------------------
src/ChangeLog addition:
2010-01-19 Ben Wing <ben@xemacs.org>
* console-impl.h (struct console_methods):
* console-stream.c (stream_text_width):
* redisplay-msw.c (mswindows_output_string):
* redisplay-msw.c (mswindows_text_width):
* redisplay-tty.c (tty_text_width):
* redisplay-xlike-inc.c (XLIKE_text_width):
* redisplay-xlike-inc.c (XLIKE_output_string):
* redisplay.c:
* redisplay.c (redisplay_window_text_width_ichar_string):
* redisplay.c (redisplay_text_width_string):
Change the text_width method to take a window instead of a frame.
Needed for Unicode-internal.
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Tue, 19 Jan 2010 11:21:34 -0600 |
parents | dbf79a1732ba |
children | 0d4c9d0f6a8d |
line wrap: on
line diff
--- a/src/redisplay-msw.c Mon Jan 18 08:44:49 2010 -0600 +++ b/src/redisplay-msw.c Tue Jan 19 11:21:34 2010 -0600 @@ -469,9 +469,10 @@ #if 0 /* #### FIXME? */ /* We can't work out the width before we've set the font in the DC */ if (width < 0) - width = mswindows_text_width (cachel, Dynarr_atp (buf, 0), Dynarr_length (buf)); + width = mswindows_text_width (w, cachel, Dynarr_atp (buf, 0), + Dynarr_length (buf)); #else - assert(width>=0); + assert (width >= 0); #endif /* Regularize the variables passed in. */ @@ -1181,9 +1182,10 @@ displayed in the font associated with the face. ****************************************************************************/ static int -mswindows_text_width (struct frame *f, struct face_cachel *cachel, +mswindows_text_width (struct window *w, struct face_cachel *cachel, const Ichar *str, Charcount len) { + struct frame *f = WINDOW_XFRAME (w); HDC hdc = get_frame_dc (f, 0); int width_so_far = 0; textual_run *runs;