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.
else if (crb->type != drb->type)
return 0;
else if (crb->type == RUNE_CHAR &&
- (crb->object.chr.ch != drb->object.chr.ch))
+ !CHARC_EQ (crb->object.cglyph, drb->object.cglyph))
return 0;
else if (crb->type == RUNE_HLINE &&
(crb->object.hline.thickness != drb->object.hline.thickness ||
else if (start_pos <= bounds.right_out)
*next_start = bounds.right_out;
else
- abort ();
+ ABORT ();
}
for (block = 0; block < Dynarr_length (dba); block++)
int defheight, defwidth;
if (Dynarr_length (db->runes) <= cursor_location)
- abort ();
+ ABORT ();
XSETWINDOW (window, w);
{
Lisp_Image_Instance *p = XIMAGE_INSTANCE (image_instance);
Lisp_Object rest, window = DOMAIN_WINDOW (domain);
- Emchar_dynarr *buf = Dynarr_new (Emchar);
+ Charc_dynarr *buf;
struct window *w = XWINDOW (window);
struct device *d = DOMAIN_XDEVICE (domain);
int layout_height, layout_width;
if (!redisplay_normalize_glyph_area (db, dga))
return;
+ buf = Dynarr_new (Charc);
+
/* Highly dodgy optimization. We want to only output the whole
layout if we really have to. */
if (!IMAGE_INSTANCE_OPTIMIZE_OUTPUT (p)
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))
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));
}
}
struct display_line dl; /* this is fake */
Lisp_Object string =
IMAGE_INSTANCE_TEXT_STRING (childii);
- unsigned char charsets[NUM_LEADING_BYTES];
+ Charset_ID charsets[NUM_LEADING_BYTES];
struct face_cachel *cachel = WINDOW_FACE_CACHEL (w, findex);
find_charsets_in_bufbyte_string (charsets,
XSTRING_LENGTH (string));
ensure_face_cachel_complete (cachel, window, charsets);
- convert_bufbyte_string_into_emchar_dynarr
- (XSTRING_DATA (string), XSTRING_LENGTH (string), buf);
+ convert_bufbyte_string_into_charc_dynarr
+ (XSTRING_DATA (string), XSTRING_LENGTH (string),
+ buf);
redisplay_normalize_display_box (&cdb, &cdga);
/* Offsets are now +ve again so be careful
case IMAGE_POINTER:
default:
- abort ();
+ ABORT ();
}
}
IMAGE_INSTANCE_OPTIMIZE_OUTPUT (childii) = 0;
f = XFRAME (locale);
}
else
- abort ();
+ ABORT ();
d = XDEVICE (f->device);