XEmacs 21.4.17 "Jumbo Shrimp".
[chise/xemacs-chise.git-] / src / redisplay-output.c
index 223a1a0..0edbf8b 100644 (file)
@@ -2,7 +2,7 @@
    Copyright (C) 1994, 1995 Board of Trustees, University of Illinois.
    Copyright (C) 1995, 1996 Ben Wing.
    Copyright (C) 1996 Chuck Thompson.
-   Copyright (C) 1999 Andy Piper.
+   Copyright (C) 1999, 2002 Andy Piper.
 
 This file is part of XEmacs.
 
@@ -334,7 +334,7 @@ get_next_display_block (layout_bounds bounds, display_block_dynarr *dba,
       else if (start_pos <= bounds.right_out)
        *next_start = bounds.right_out;
       else
-       abort ();
+       ABORT ();
     }
 
   for (block = 0; block < Dynarr_length (dba); block++)
@@ -377,7 +377,7 @@ get_cursor_size_and_location (struct window *w, struct display_block *db,
   int defheight, defwidth;
 
   if (Dynarr_length (db->runes) <= cursor_location)
-    abort ();
+    ABORT ();
 
   XSETWINDOW (window, w);
 
@@ -1353,17 +1353,22 @@ redisplay_output_layout (Lisp_Object domain,
          int edges = 0;
          enum edge_style style;
          int ypos = db->ypos;
+         int xpos = db->xpos;
          int height = dga->height;
+         int width = dga->width;
 
-         if (dga->xoffset >= 0)
+         /* The bevel_area routines always draw in from the specified
+            area so there is no need to adjust the displayed area to
+            make sure that the lines are visible. */
+         if (dga->xoffset >= 0) 
            edges |= EDGE_LEFT;
-         if (dga->width - dga->xoffset == layout_width)
+         if (dga->width - dga->xoffset == layout_width) 
            edges |= EDGE_RIGHT;
-         if (dga->yoffset >= 0)
+         if (dga->yoffset >= 0) 
            edges |= EDGE_TOP;
          if (dga->height - dga->yoffset == layout_height)
            edges |= EDGE_BOTTOM;
-
+         
          if (EQ (IMAGE_INSTANCE_LAYOUT_BORDER (p), Qetched_in))
            style = EDGE_ETCHED_IN;
          else if (EQ (IMAGE_INSTANCE_LAYOUT_BORDER (p), Qetched_out))
@@ -1383,9 +1388,8 @@ redisplay_output_layout (Lisp_Object domain,
            style = EDGE_BEVEL_OUT;
 
          MAYBE_DEVMETH (d, bevel_area,
-                        (w, findex, db->xpos,
-                         ypos,
-                         dga->width, height, 2, edges, style));
+                        (w, findex, xpos, ypos, width, height,
+                         DEFAULT_WIDGET_SHADOW_WIDTH, edges, style));
        }
     }
 
@@ -1516,7 +1520,7 @@ redisplay_output_layout (Lisp_Object domain,
 
                case IMAGE_POINTER:
                default:
-                 abort ();
+                 ABORT ();
                }
            }
          IMAGE_INSTANCE_OPTIMIZE_OUTPUT (childii) = 0;
@@ -1628,7 +1632,7 @@ redisplay_clear_region (Lisp_Object locale, face_index findex, int x, int y,
       f = XFRAME (locale);
     }
   else
-    abort ();
+    ABORT ();
 
   d = XDEVICE (f->device);