comparison src/extents.c @ 183:e121b013d1f0 r20-3b18

Import from CVS: tag r20-3b18
author cvs
date Mon, 13 Aug 2007 09:54:23 +0200
parents 6075d714658b
children 3d6bfa290dbd
comparison
equal deleted inserted replaced
182:f07455f06202 183:e121b013d1f0
1634 extent_endpoint_bufpos (extent, 0), 1634 extent_endpoint_bufpos (extent, 0),
1635 extent_endpoint_bufpos (extent, 1)); 1635 extent_endpoint_bufpos (extent, 1));
1636 } 1636 }
1637 } 1637 }
1638 1638
1639 /* A change to an extent occurred that will might affect redisplay. 1639 /* A change to an extent occurred that might affect redisplay.
1640 This is called when properties such as the endpoints, the layout, 1640 This is called when properties such as the endpoints, the layout,
1641 or the priority changes. Redisplay will be affected only if 1641 or the priority changes. Redisplay will be affected only if
1642 the extent has any displayable attributes. */ 1642 the extent has any displayable attributes. */
1643 1643
1644 static void 1644 static void
1645 extent_maybe_changed_for_redisplay (EXTENT extent, int descendants_too, 1645 extent_maybe_changed_for_redisplay (EXTENT extent, int descendants_too,
1646 int invisibility_change) 1646 int invisibility_change)
1647 { 1647 {
1648 /* Retrieve the ancestor for efficiency */ 1648 /* Retrieve the ancestor for efficiency */
1649 EXTENT anc = extent_ancestor (extent); 1649 EXTENT anc = extent_ancestor (extent);
1650 if (!NILP (extent_face (anc)) || !NILP (extent_begin_glyph (anc)) || 1650 if (!NILP (extent_face (anc)) ||
1651 !NILP (extent_end_glyph (anc)) || !NILP (extent_mouse_face (anc)) || 1651 !NILP (extent_begin_glyph (anc)) ||
1652 !NILP (extent_invisible (anc)) || invisibility_change) 1652 !NILP (extent_end_glyph (anc)) ||
1653 !NILP (extent_mouse_face (anc)) ||
1654 !NILP (extent_invisible (anc)) ||
1655 invisibility_change)
1653 extent_changed_for_redisplay (extent, descendants_too, 1656 extent_changed_for_redisplay (extent, descendants_too,
1654 invisibility_change); 1657 invisibility_change);
1655 } 1658 }
1656 1659
1657 static EXTENT 1660 static EXTENT
1662 assert (NILP (object) || STRINGP (object) || 1665 assert (NILP (object) || STRINGP (object) ||
1663 (BUFFERP (object) && BUFFER_LIVE_P (XBUFFER (object)))); 1666 (BUFFERP (object) && BUFFER_LIVE_P (XBUFFER (object))));
1664 extent_object (extent) = object; 1667 extent_object (extent) = object;
1665 /* Now make sure the extent info exists. */ 1668 /* Now make sure the extent info exists. */
1666 if (!NILP (object)) 1669 if (!NILP (object))
1667 (void) buffer_or_string_extent_info_force (object); 1670 buffer_or_string_extent_info_force (object);
1668 return extent; 1671 return extent;
1669 } 1672 }
1670 1673
1671 /* A "real" extent is any extent other than the internal (not-user-visible) 1674 /* A "real" extent is any extent other than the internal (not-user-visible)
1672 extents used by `map-extents'. */ 1675 extents used by `map-extents'. */