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;