
A selection-owner object is created using xv_create():
Selection_owner sel_owner;
sel_owner = xv_create(window, SELECTION_OWNER,
NULL);
To pre-register a selection item for a string conversion, use the following code:
Selection_item sel_item;
sel_item = xv_create(sel_owner,
SELECTION_ITEM,
SEL_TYPE_NAME, "STRING",
SEL_FORMAT, 8, /* bits per unit (char)*/
NULL);
Pre-register a conversion by setting several selection-item object attributes. SEL_TYPE_NAME
specifies the type, using a string for the atom type of the selection. SEL_FORMAT specifies the
format for the data. Valid values are 8, 16, or 32 for 8-bit, 16-bit, or 32-bit quantities, respec-
tively. SEL_TYPE specifies the type of the conversion that the item supports. To support
more than one type, you need to use additional selection items, one for each type. Since a
string conversion is the default for a selection item, the following code registers the same
conversion at that shown above:
Selection_item sel_item;
sel_item = xv_create(sel_owner, SELECTION_ITEM,
NULL);
The owner of a selection-item object is an object of type Selection_owner. The owner
of a selection item defines the rank to which the item belongs. Figure 18-4 shows the class
hierarchy for a selection-item object.
Generic
Object
Selection
Item
Figure 18-4. Selection item class hierarchy
A selection is acquired by setting SEL_OWN to TRUE on the selection-owner. By default, the
selection