APIs for Label Builder GUIs
To use the APIs that are described in this section, you need
to include the following header file:
#include <Dt/ModLabel.h>
The Label Builder examples compile with the -lDtTsol and -ltsol library options.
The following APIs are available for building label GUIs. The data types
and parameter lists are described in Creating an Interactive User Interface.
- ModLabelData *tsol_lbuild_create(Widget widget, void (*event_handler)() ok_callback, lbuild_attributes extended_operation, ..., NULL);
The tsol_lbuild_create() routine creates the GUI and returns a pointer variable of type ModLabeldata, which contains information about the user interface. This information is a combination of values passed in the tsol_lbuild_create() input parameter list, default values for information not provided, and information about the widgets that the Label Builder uses to create the user interface.
The LBUILD_WORK_SL and LBUILD_WORK_CLR operation values are not valid for tsol_lbuild_create() because these values are set from input that is supplied by the user.
You can use the tsol_lbuild_get() and tsol_lbuild_set() routines to obtain and set extended operations and values. However, these routines cannot be used for widget information, which is accessed directly by referencing fields in the ModLabelData structure. See the labelbuilder(3TSOL) man page.
- void tsol_lbuild_destroy(ModLabelData *lbdata);
The tsol_lbuild_destroy() routine destroys the ModLabelData structure that is returned by the tsol_lbuild_create() routine.
- void *tsol_lbuild_get(ModLabelData *lbdata, lbuild_attributes extended_operation);
The tsol_lbuild_get() routine accesses the user interface information that is created by tsol_lbuild_create() and stored in the ModLabelData structure.
- void tsol_lbuild_set(ModLabelData *lbdata, lbuild_attributes extended_operation, ..., NULL);
The tsol_lbuild_set() routine changes the user interface information that is created by tsol_lbuild_create() and stored in the ModLabelData structure. The LBUILD_WORK_SL and LBUILD_WORK_CLR operation values are not valid for tsol_lbuild_set() because these values are set from input that is supplied by the user.