Query: xterrormsghandler
OS: hpux
Section: 2
Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar
XtErrorMsgHandler() XtErrorMsgHandler() Name XtErrorMsgHandler - interface definition for high-level error and warning handler procedures. Synopsis typedef void (*XtErrorMsgHandler)(String, String, String, String, String *, Cardinal *); String name; String type; String class; String defaultp; String *params; Cardinal *num_params; Inputs name Specifies the name that is concatenated with the specified type to form the resource name of the error message. type Specifies the type that is concatenated with the name to form the resource name of the error message. class Specifies the resource class of the error message. defaultp Specifies the default message to use if no error database entry is found. params Specifies a pointer to a list of values to be substituted in the message. num_params Specifies the number of values in the parameter list. Description An XtErrorMsgHandler is registered as a high-level error or warning handler with XtAppSetErrorMsgHandler() or XtAppSetWarningMsgHandler(). It is invoked by XtAppErrorMsg() or XtAppWarningMsg(). An XtErrorMsgHandler should look up an error message of the specified name, type, and class in an error database of some sort, and display the message it finds, or use the supplied default defaultp. Whether a message is found in a database or the default message is used, the specified params should be substituted into the message using standard printf() substitutions before it is displayed. Usage A custom high-level error or warning handler may find it useful to use XtAppGetErrorDatabase() or XtAppGetErrorDatabaseText(). This latter function looks up an error message in a standard X resource database by concatenating the name and type arguments into the resource name of the message and using class as the resource class of the message. See XtAppGetErrorDatabaseText(1) for more details. A high-level error or warning handler should generally display the message it builds by calling the corresponding low-level handler with XtAppError() or XtAppWarning(). This allows customization at two independent levels of abstraction. Usually, the name argument will describe the general kind of error, such as invalidParameters or invalidWindow, and the type argument pro- vides extra information about the error, such as the name of the function in which the error was detected. Note that application-context-specific error handling is not implemented in MIT release, though the XtApp version of all the error handling routines are present. Most implementation will support only a single set of error handlers for all application contexts, and if a new han- dler is registered in one app context, it will take effect in all contexts. Example The example below shows the Intrinsics default error message handler: void _XtDefaultErrorMsg (name,type,class,defaultp,params,num_params) String name,type,class,defaultp; String* params; Cardinal* num_params; { char buffer[1000], message[1000]; XtGetErrorDatabaseText(name,type,class,defaultp, buffer, 1000); /*need better solution here, perhaps use lower level printf primitives? */ if (params == NULL num_params == NULL *num_params == 0) XtError(buffer); else { int i = *num_params; String par[10]; if (i > 10) i = 10; bcopy( (char*)params, (char*)par, i * sizeof(String) ); bzero( &par[i], (10-i) * sizeof(String) ); (void) sprintf(message, buffer, par[0], par[1], par[2], par[3], par[4], par[5], par[6], par[7], par[8], par[9]); XtError(message); if (i != *num_params) XtWarning( "some arguments in previous message were lost" ); } } See Also XtAppErrorMsg(1), XtAppSetErrorMsgHandler(1), XtAppSetWarningMsgHandler(1), XtAppWarningMsg(1), XtErrorHandler(2). Xt - Error Handling XtErrorMsgHandler()
Related Man Pages |
---|
xtappsetwarningmsghandler(3xt) - redhat |
xterrormsghandler(3) - hpux |
xtapperrormsg(3) - linux |
xtappwarningmsg(3) - hpux |
xtappseterrormsghandler(3) - hpux |
Similar Topics in the Unix Linux Community |
---|
GASNet 1.10.0 (Default branch) |
String Error |