(U+6215): Apply new conventions for glyph granularity.
[chise/xemacs-chise.git.1] / src / redisplay-msw.c
index 307fd6e..5e7e9e5 100644 (file)
@@ -49,7 +49,7 @@ Boston, MA 02111-1307, USA.  */
 
 #ifdef MULE
 #include "mule-ccl.h"
-#include "mule-charset.h"
+#include "character.h"
 #endif
 
 #define MSWINDOWS_EOL_CURSOR_WIDTH     5
@@ -309,6 +309,7 @@ mswindows_output_blank (struct window *w, struct display_line *dl,
       struct display_glyph_area dga;
       redisplay_calculate_display_boxes (dl, rb->xpos, 
                                         /*rb->object.dglyph.xoffset*/ 0,
+                                         /*rb->object.dglyph.yoffset*/ 0,
                                         start_pixpos, rb->width,
                                         &db, &dga);
       /* blank the background in the appropriate color */
@@ -512,7 +513,7 @@ mswindows_output_string (struct window *w, struct display_line *dl,
     {
       struct display_box db;
       struct display_glyph_area dga;
-      redisplay_calculate_display_boxes (dl, xpos + xoffset, 0,
+      redisplay_calculate_display_boxes (dl, xpos + xoffset, 0, 0,
                                         clip_start, width, &db, &dga);
       /* blank the background in the appropriate color */
       mswindows_update_dc (hdc,
@@ -1043,7 +1044,7 @@ mswindows_output_display_block (struct window *w, struct display_line *dl, int b
                          int cursor_width, int cursor_height)
 {
   struct frame *f = XFRAME (w->frame);
-  Emchar_dynarr *buf = Dynarr_new (Emchar);
+  Emchar_dynarr *buf;
   Lisp_Object window;
 
   struct display_block *db = Dynarr_atp (dl->display_blocks, block);
@@ -1070,7 +1071,7 @@ mswindows_output_display_block (struct window *w, struct display_line *dl, int b
 
   if (end < 0)
     end = Dynarr_length (rba);
-  Dynarr_reset (buf);
+  buf = Dynarr_new (Emchar);
 
   while (elt < end)
     {
@@ -1165,8 +1166,8 @@ mswindows_output_display_block (struct window *w, struct display_line *dl, int b
              struct display_glyph_area dga;
 
              redisplay_calculate_display_boxes (dl, rb->xpos, rb->object.dglyph.xoffset,
-                                                start_pixpos, rb->width,
-                                                &dbox, &dga);
+                                                rb->object.dglyph.yoffset,
+                                                 start_pixpos, rb->width, &dbox, &dga);
 
              XSETWINDOW (window, w);
              instance = glyph_image_instance (rb->object.dglyph.glyph,
@@ -1215,7 +1216,7 @@ mswindows_output_display_block (struct window *w, struct display_line *dl, int b
                    case IMAGE_TEXT:
                    case IMAGE_POINTER:
                    default:
-                     abort ();
+                     ABORT ();
                    }
                  IMAGE_INSTANCE_OPTIMIZE_OUTPUT 
                    (XIMAGE_INSTANCE (instance)) = 0;
@@ -1224,7 +1225,7 @@ mswindows_output_display_block (struct window *w, struct display_line *dl, int b
              elt++;
            }
          else
-           abort ();
+           ABORT ();
        }
     }