[Contents] [index] [Help] [Retrace] [browse <] [Browse >]

A tag is made up of an attribute/value pair as defined below (from
<utility/tagitem.h>):

    struct TagItem
    {
        ULONG  ti_Tag;    /* identifies the type of this item */
        ULONG  ti_Data;   /* type-specific data, can be a pointer */
    };

The ti_Tag field specifies an attribute to set.  The possible values of
ti_Tag are implementation specific.  System tags are defined in the
include files.  The value the attribute is set to is specified in ti_Data.
An example of the attribute/value pair that will specify a window's name
is:

    ti_Tag  = WA_Title;
    ti_Data = "My Window's Name";

The ti_Data field often contains 32-bit data as well as pointers.

These are brief descriptions of the utility functions you can use to
manipulate and access tags.  For complete descriptions, see the
"simple tag usage" and "advanced tag usage" sections.

The following utility library calls are for supporting tags:


                Table 37-1: Utility Library Tag Functions
  ______________________________________________________________________
 |                                                                      |
 |     allocatetagitems()  allocate a tagitem array (or chain).         |
 |         freetagitems()  frees allocated tagitem lists.               |
 |----------------------------------------------------------------------|
 |        clonetagitems()  copies a tagitem list.                       |
 | refreshtagitemclones()  rejuvenates a clone from the original.       |
 |----------------------------------------------------------------------|
 |          findtagitem()  scans tagitem list for a tag.                |
 |           gettagdata()  obtain data corresponding to tag.            |
 |          nexttagitem()  iterate tagitem lists.                       |
 |           taginarray()  check if a tag value appears in a tag array. |
 |----------------------------------------------------------------------|
 |     filtertagchanges()  eliminate tagitems which specify no change.  |
 |       filtertagitems()  remove selected items from a tagitem list.   |
 |              maptags()  convert ti_tag values in a list via map      |
 |                         pairing.                                     |
 |         packbooltags()  builds a "flag" word from a tagitem list.    |
 |______________________________________________________________________|