(w3.info)Generalized ZONES


Next: Global Variables Prev: Programming Interface Up: Programming Interface

   Programming Interface

Generalized ZONES
=================

   Due to the many different flavors of Emacs in existence, the
addition of data and font information to arbitrary regions of text has
been generalized.  The following functions are defined for
using/manipulating these "zones" of data.

`w3-add-zone (start end style data &optional highlight)'
     This function creates a zone between buffer positions start and
     end, with font information specified by style, and a data segment
     of data.  If the optional argument highlight is non-`nil', then
     the region will highlight when the mouse moves over it.

`w3-zone-at (point)'
     Returns the the zone at POINT.  Preference is given to hypertext
     links, then to form entry areas, then to inlined images.  So if an
     inlined image was part of a hypertext link, this would always
     return the hypertext link.

`w3-zone-data (zone)'
     Returns the zone's data segment. The data structures used in W3 are
     relatively simple.  They are just list structures that follow a
     certain format.  The two main data types are "form objects", "link
     objects",and "inlined images".  All the information for these types
     of links are stored as lists.

`w3-zone-hidden-p (zone)'
     Returns `t' if and only if a zone is currently invisible.

`w3-hide-zone (start end)'
     Makes a region of text from `start' to `end' invisible.

`w3-unhide-zone (start end)'
     Makes a region of text from `start' to `end' visible again.

`w3-zone-start (zone)'
     Returns an integer that is the start of zone, as a buffer
     position.  In emacs 18.xx, this will return a marker instead of an
     integer, but it can be used just like an integer.

`w3-zone-end (zone)'
     Returns an integer that is the end of zone, as a buffer position.
     In emacs 18.xx, this will return a marker instead of an integer,
     but it can be used just like an integer.

`w3-zone-eq (zone1 zone2)'
     Returns `t' if and only if zone1 and zone2 represent the same
     region of text in the same buffer, with the same properties and
     data.

`w3-delete-zone (zone)'
     Removes zone from its buffer (or current buffer).  The return
     value is irrelevant, and varies for each version of emacs.

`w3-all-zones ()'
     Returns a list of all the zones contained in the current buffer.
     Useful for extracting information about hypertext links or form
     entry areas.  Programs should not rely on this list being sorted,
     as the order varies with each version of emacs.

`w3-zone-at (pt)'
     This will return the zone at character position PT in the current
     buffer that is either a link or a forms entry area.  Returns nil
     if no link at point.  These data structures are what is generally
returned by `w3-zone-data'.


automatically generated by info2www