Intrinsic.h revision 249c3046
1/***********************************************************
2Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts,
3
4			All Rights Reserved
5
6Permission to use, copy, modify, and distribute this software and its
7documentation for any purpose and without fee is hereby granted,
8provided that the above copyright notice appear in all copies and that
9both that copyright notice and this permission notice appear in
10supporting documentation, and that the name Digital not be
11used in advertising or publicity pertaining to distribution of the
12software without specific, written prior permission.
13
14DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
15ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
16DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
17ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
18WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
19ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
20SOFTWARE.
21
22******************************************************************/
23
24/*
25
26Copyright 1987, 1988, 1994, 1998  The Open Group
27
28Permission to use, copy, modify, distribute, and sell this software and its
29documentation for any purpose is hereby granted without fee, provided that
30the above copyright notice appear in all copies and that both that
31copyright notice and this permission notice appear in supporting
32documentation.
33
34The above copyright notice and this permission notice shall be included in
35all copies or substantial portions of the Software.
36
37THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
38IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
39FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
40OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
41AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
42CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
43
44Except as contained in this notice, the name of The Open Group shall not be
45used in advertising or otherwise to promote the sale, use or other dealings
46in this Software without prior written authorization from The Open Group.
47
48*/
49
50#ifndef _XtIntrinsic_h
51#define _XtIntrinsic_h
52
53#include	<X11/Xlib.h>
54#include	<X11/Xutil.h>
55#include	<X11/Xresource.h>
56#include	<X11/Xfuncproto.h>
57#ifdef XT_BC
58#include <X11/Xos.h>		/* for R4 compatibility */
59#else
60#include <X11/Xosdefs.h>
61#include <string.h>		/* for XtNewString */
62#endif /* XT_BC else */
63
64#define XtSpecificationRelease 6
65
66typedef char *String;
67
68/* We do this in order to get "const" declarations to work right.  We
69 * use _XtString instead of String so that C++ applications can
70 * #define String to something else if they choose, to avoid conflicts
71 * with other C++ libraries.
72 */
73#define _XtString char*
74
75/* _Xt names are private to Xt implementation, do not use in client code */
76#if NeedWidePrototypes
77#define _XtBoolean	int
78#define _XtDimension	unsigned int
79#define _XtKeyCode	unsigned int
80#define _XtPosition	int
81#define _XtXtEnum	unsigned int
82#else
83#define _XtBoolean	Boolean
84#define _XtDimension	Dimension
85#define _XtKeyCode	KeyCode
86#define _XtPosition	Position
87#define _XtXtEnum	XtEnum
88#endif /* NeedWidePrototypes */
89
90#include <stddef.h>
91
92#ifdef VMS
93#define externalref globalref
94#define externaldef(psect) globaldef {"psect"} noshare
95#else
96#define externalref extern
97#define externaldef(psect)
98#endif /* VMS */
99
100#ifndef FALSE
101#define FALSE 0
102#define TRUE 1
103#endif
104
105#define XtNumber(arr)		((Cardinal) (sizeof(arr) / sizeof(arr[0])))
106
107typedef struct _WidgetRec *Widget;
108typedef Widget *WidgetList;
109typedef struct _WidgetClassRec *WidgetClass;
110typedef struct _CompositeRec *CompositeWidget;
111typedef struct _XtActionsRec *XtActionList;
112typedef struct _XtEventRec *XtEventTable;
113
114typedef struct _XtAppStruct *XtAppContext;
115typedef unsigned long	XtValueMask;
116typedef unsigned long	XtIntervalId;
117typedef unsigned long	XtInputId;
118typedef unsigned long	XtWorkProcId;
119typedef unsigned long	XtSignalId;
120typedef unsigned int	XtGeometryMask;
121typedef unsigned long	XtGCMask;   /* Mask of values that are used by widget*/
122typedef unsigned long	Pixel;	    /* Index into colormap		*/
123typedef int		XtCacheType;
124#define			XtCacheNone	  0x001
125#define			XtCacheAll	  0x002
126#define			XtCacheByDisplay  0x003
127#define			XtCacheRefCount	  0x100
128
129/****************************************************************
130 *
131 * System Dependent Definitions; see spec for specific range
132 * requirements.  Do not assume every implementation uses the
133 * same base types!
134 *
135 *
136 * XtArgVal ought to be a union of XtPointer, char *, long, int *, and proc *
137 * but casting to union types is not really supported.
138 *
139 * So the typedef for XtArgVal should be chosen such that
140 *
141 *	sizeof (XtArgVal) >=	sizeof(XtPointer)
142 *				sizeof(char *)
143 *				sizeof(long)
144 *				sizeof(int *)
145 *				sizeof(proc *)
146 *
147 * ArgLists rely heavily on the above typedef.
148 *
149 ****************************************************************/
150#ifdef CRAY
151typedef long		Boolean;
152typedef char*		XtArgVal;
153typedef long		XtEnum;
154#else
155typedef char		Boolean;
156typedef long		XtArgVal;
157typedef unsigned char	XtEnum;
158#endif
159
160typedef unsigned int	Cardinal;
161typedef unsigned short	Dimension;  /* Size in pixels			*/
162typedef short		Position;   /* Offset from 0 coordinate		*/
163
164typedef void*		XtPointer;
165
166/* The type Opaque is NOT part of the Xt standard, do NOT use it. */
167/* (It remains here only for backward compatibility.) */
168typedef XtPointer	Opaque;
169
170#include <X11/Core.h>
171#include <X11/Composite.h>
172#include <X11/Constraint.h>
173#include <X11/Object.h>
174#include <X11/RectObj.h>
175
176typedef struct _TranslationData *XtTranslations;
177typedef struct _TranslationData *XtAccelerators;
178typedef unsigned int Modifiers;
179
180typedef void (*XtActionProc)(
181    Widget 		/* widget */,
182    XEvent*		/* event */,
183    String*		/* params */,
184    Cardinal*		/* num_params */
185);
186
187typedef XtActionProc* XtBoundActions;
188
189typedef struct _XtActionsRec{
190    String	 string;
191    XtActionProc proc;
192} XtActionsRec;
193
194typedef enum {
195/* address mode		parameter representation    */
196/* ------------		------------------------    */
197    XtAddress,		/* address		    */
198    XtBaseOffset,	/* offset		    */
199    XtImmediate,	/* constant		    */
200    XtResourceString,	/* resource name string	    */
201    XtResourceQuark,	/* resource name quark	    */
202    XtWidgetBaseOffset,	/* offset from ancestor	    */
203    XtProcedureArg	/* procedure to invoke	    */
204} XtAddressMode;
205
206typedef struct {
207    XtAddressMode   address_mode;
208    XtPointer	    address_id;
209    Cardinal	    size;
210} XtConvertArgRec, *XtConvertArgList;
211
212typedef void (*XtConvertArgProc)(
213    Widget 		/* widget */,
214    Cardinal*		/* size */,
215    XrmValue*		/* value */
216);
217
218typedef struct {
219    XtGeometryMask request_mode;
220    Position x, y;
221    Dimension width, height, border_width;
222    Widget sibling;
223    int stack_mode;   /* Above, Below, TopIf, BottomIf, Opposite, DontChange */
224} XtWidgetGeometry;
225
226/* Additions to Xlib geometry requests: ask what would happen, don't do it */
227#define XtCWQueryOnly	(1 << 7)
228
229/* Additions to Xlib stack modes: don't change stack order */
230#define XtSMDontChange	5
231
232typedef void (*XtConverter)( /* obsolete */
233    XrmValue*		/* args */,
234    Cardinal*		/* num_args */,
235    XrmValue*		/* from */,
236    XrmValue*		/* to */
237);
238
239typedef Boolean (*XtTypeConverter)(
240    Display*		/* dpy */,
241    XrmValue*		/* args */,
242    Cardinal*		/* num_args */,
243    XrmValue*		/* from */,
244    XrmValue*		/* to */,
245    XtPointer*		/* converter_data */
246);
247
248typedef void (*XtDestructor)(
249    XtAppContext	/* app */,
250    XrmValue*		/* to */,
251    XtPointer 		/* converter_data */,
252    XrmValue*		/* args */,
253    Cardinal*		/* num_args */
254);
255
256typedef Opaque XtCacheRef;
257
258typedef Opaque XtActionHookId;
259
260typedef void (*XtActionHookProc)(
261    Widget		/* w */,
262    XtPointer		/* client_data */,
263    String		/* action_name */,
264    XEvent*		/* event */,
265    String*		/* params */,
266    Cardinal*		/* num_params */
267);
268
269typedef unsigned long XtBlockHookId;
270
271typedef void (*XtBlockHookProc)(
272    XtPointer		/* client_data */
273);
274
275typedef void (*XtKeyProc)(
276    Display*		/* dpy */,
277    _XtKeyCode 		/* keycode */,
278    Modifiers		/* modifiers */,
279    Modifiers*		/* modifiers_return */,
280    KeySym*		/* keysym_return */
281);
282
283typedef void (*XtCaseProc)(
284    Display*		/* display */,
285    KeySym		/* keysym */,
286    KeySym*		/* lower_return */,
287    KeySym*		/* upper_return */
288);
289
290typedef void (*XtEventHandler)(
291    Widget 		/* widget */,
292    XtPointer 		/* closure */,
293    XEvent*		/* event */,
294    Boolean*		/* continue_to_dispatch */
295);
296typedef unsigned long EventMask;
297
298typedef enum {XtListHead, XtListTail } XtListPosition;
299
300typedef unsigned long	XtInputMask;
301#define XtInputNoneMask		0L
302#define XtInputReadMask		(1L<<0)
303#define XtInputWriteMask	(1L<<1)
304#define XtInputExceptMask	(1L<<2)
305
306typedef void (*XtTimerCallbackProc)(
307    XtPointer 		/* closure */,
308    XtIntervalId*	/* id */
309);
310
311typedef void (*XtInputCallbackProc)(
312    XtPointer 		/* closure */,
313    int*		/* source */,
314    XtInputId*		/* id */
315);
316
317typedef void (*XtSignalCallbackProc)(
318    XtPointer		/* closure */,
319    XtSignalId*		/* id */
320);
321
322typedef struct {
323    String	name;
324    XtArgVal	value;
325} Arg, *ArgList;
326
327typedef XtPointer	XtVarArgsList;
328
329typedef void (*XtCallbackProc)(
330    Widget 		/* widget */,
331    XtPointer 		/* closure */,	/* data the application registered */
332    XtPointer 		/* call_data */	/* callback specific data */
333);
334
335typedef struct _XtCallbackRec {
336    XtCallbackProc  callback;
337    XtPointer	    closure;
338} XtCallbackRec, *XtCallbackList;
339
340typedef enum {
341	XtCallbackNoList,
342	XtCallbackHasNone,
343	XtCallbackHasSome
344} XtCallbackStatus;
345
346typedef enum  {
347    XtGeometryYes,	  /* Request accepted. */
348    XtGeometryNo,	  /* Request denied. */
349    XtGeometryAlmost,	  /* Request denied, but willing to take replyBox. */
350    XtGeometryDone	  /* Request accepted and done. */
351} XtGeometryResult;
352
353typedef enum {XtGrabNone, XtGrabNonexclusive, XtGrabExclusive} XtGrabKind;
354
355typedef struct {
356    Widget  shell_widget;
357    Widget  enable_widget;
358} XtPopdownIDRec, *XtPopdownID;
359
360typedef struct _XtResource {
361    String	resource_name;	/* Resource name			    */
362    String	resource_class;	/* Resource class			    */
363    String	resource_type;	/* Representation type desired		    */
364    Cardinal	resource_size;	/* Size in bytes of representation	    */
365    Cardinal	resource_offset;/* Offset from base to put resource value   */
366    String	default_type;	/* representation type of specified default */
367    XtPointer	default_addr;	/* Address of default resource		    */
368} XtResource, *XtResourceList;
369
370typedef void (*XtResourceDefaultProc)(
371    Widget	/* widget */,
372    int		/* offset */,
373    XrmValue*	/* value */
374);
375
376typedef String (*XtLanguageProc)(
377    Display*	/* dpy */,
378    String	/* xnl */,
379    XtPointer	/* client_data */
380);
381
382typedef void (*XtErrorMsgHandler)(
383    String 		/* name */,
384    String		/* type */,
385    String		/* class */,
386    String		/* default */,
387    String*		/* params */,
388    Cardinal*		/* num_params */
389);
390
391typedef void (*XtErrorHandler)(
392  String		/* msg */
393);
394
395typedef void (*XtCreatePopupChildProc)(
396    Widget	/* shell */
397);
398
399typedef Boolean (*XtWorkProc)(
400    XtPointer 		/* closure */	/* data the application registered */
401);
402
403typedef struct {
404    char match;
405    String substitution;
406} SubstitutionRec, *Substitution;
407
408typedef Boolean (*XtFilePredicate)(
409   String /* filename */
410);
411
412typedef XtPointer XtRequestId;
413
414typedef Boolean (*XtConvertSelectionProc)(
415    Widget 		/* widget */,
416    Atom*		/* selection */,
417    Atom*		/* target */,
418    Atom*		/* type_return */,
419    XtPointer*		/* value_return */,
420    unsigned long*	/* length_return */,
421    int*		/* format_return */
422);
423
424typedef void (*XtLoseSelectionProc)(
425    Widget 		/* widget */,
426    Atom*		/* selection */
427);
428
429typedef void (*XtSelectionDoneProc)(
430    Widget 		/* widget */,
431    Atom*		/* selection */,
432    Atom*		/* target */
433);
434
435typedef void (*XtSelectionCallbackProc)(
436    Widget 		/* widget */,
437    XtPointer 		/* closure */,
438    Atom*		/* selection */,
439    Atom*		/* type */,
440    XtPointer 		/* value */,
441    unsigned long*	/* length */,
442    int*		/* format */
443);
444
445typedef void (*XtLoseSelectionIncrProc)(
446    Widget 		/* widget */,
447    Atom*		/* selection */,
448    XtPointer 		/* client_data */
449);
450
451typedef void (*XtSelectionDoneIncrProc)(
452    Widget 		/* widget */,
453    Atom*		/* selection */,
454    Atom*		/* target */,
455    XtRequestId*	/* receiver_id */,
456    XtPointer 		/* client_data */
457);
458
459typedef Boolean (*XtConvertSelectionIncrProc)(
460    Widget 		/* widget */,
461    Atom*		/* selection */,
462    Atom*		/* target */,
463    Atom*		/* type */,
464    XtPointer*		/* value */,
465    unsigned long*	/* length */,
466    int*		/* format */,
467    unsigned long*	/* max_length */,
468    XtPointer 		/* client_data */,
469    XtRequestId*	/* receiver_id */
470);
471
472typedef void (*XtCancelConvertSelectionProc)(
473    Widget 		/* widget */,
474    Atom*		/* selection */,
475    Atom*		/* target */,
476    XtRequestId*	/* receiver_id */,
477    XtPointer 		/* client_data */
478);
479
480typedef Boolean (*XtEventDispatchProc)(
481    XEvent*		/* event */
482);
483
484typedef void (*XtExtensionSelectProc)(
485    Widget		/* widget */,
486    int*		/* event_types */,
487    XtPointer*		/* select_data */,
488    int			/* count */,
489    XtPointer		/* client_data */
490);
491
492/***************************************************************
493 *
494 * Exported Interfaces
495 *
496 ****************************************************************/
497
498_XFUNCPROTOBEGIN
499
500extern Boolean XtConvertAndStore(
501    Widget 		/* widget */,
502    _Xconst _XtString 	/* from_type */,
503    XrmValue*		/* from */,
504    _Xconst _XtString 	/* to_type */,
505    XrmValue*		/* to_in_out */
506);
507
508extern Boolean XtCallConverter(
509    Display*		/* dpy */,
510    XtTypeConverter 	/* converter */,
511    XrmValuePtr 	/* args */,
512    Cardinal 		/* num_args */,
513    XrmValuePtr 	/* from */,
514    XrmValue*		/* to_in_out */,
515    XtCacheRef*		/* cache_ref_return */
516);
517
518extern Boolean XtDispatchEvent(
519    XEvent* 		/* event */
520);
521
522extern Boolean XtCallAcceptFocus(
523    Widget 		/* widget */,
524    Time*		/* time */
525);
526
527extern Boolean XtPeekEvent( /* obsolete */
528    XEvent*		/* event_return */
529);
530
531extern Boolean XtAppPeekEvent(
532    XtAppContext 	/* app_context */,
533    XEvent*		/* event_return */
534);
535
536extern Boolean XtIsSubclass(
537    Widget 		/* widget */,
538    WidgetClass 	/* widgetClass */
539);
540
541extern Boolean XtIsObject(
542    Widget 		/* object */
543);
544
545extern Boolean _XtCheckSubclassFlag( /* implementation-private */
546    Widget		/* object */,
547    _XtXtEnum		/* type_flag */
548);
549
550extern Boolean _XtIsSubclassOf( /* implementation-private */
551    Widget		/* object */,
552    WidgetClass		/* widget_class */,
553    WidgetClass		/* flag_class */,
554    _XtXtEnum		/* type_flag */
555);
556
557extern Boolean XtIsManaged(
558    Widget 		/* rectobj */
559);
560
561extern Boolean XtIsRealized(
562    Widget 		/* widget */
563);
564
565extern Boolean XtIsSensitive(
566    Widget 		/* widget */
567);
568
569extern Boolean XtOwnSelection(
570    Widget 		/* widget */,
571    Atom 		/* selection */,
572    Time 		/* time */,
573    XtConvertSelectionProc /* convert */,
574    XtLoseSelectionProc	/* lose */,
575    XtSelectionDoneProc /* done */
576);
577
578extern Boolean XtOwnSelectionIncremental(
579    Widget 		/* widget */,
580    Atom 		/* selection */,
581    Time 		/* time */,
582    XtConvertSelectionIncrProc	/* convert_callback */,
583    XtLoseSelectionIncrProc	/* lose_callback */,
584    XtSelectionDoneIncrProc	/* done_callback */,
585    XtCancelConvertSelectionProc /* cancel_callback */,
586    XtPointer 		/* client_data */
587);
588
589extern XtGeometryResult XtMakeResizeRequest(
590    Widget 		/* widget */,
591    _XtDimension	/* width */,
592    _XtDimension	/* height */,
593    Dimension*		/* width_return */,
594    Dimension*		/* height_return */
595);
596
597extern void XtTranslateCoords(
598    Widget 		/* widget */,
599    _XtPosition		/* x */,
600    _XtPosition		/* y */,
601    Position*		/* rootx_return */,
602    Position*		/* rooty_return */
603);
604
605extern KeySym* XtGetKeysymTable(
606    Display*		/* dpy */,
607    KeyCode*		/* min_keycode_return */,
608    int*		/* keysyms_per_keycode_return */
609);
610
611extern void XtKeysymToKeycodeList(
612    Display*		/* dpy */,
613    KeySym 		/* keysym */,
614    KeyCode**		/* keycodes_return */,
615    Cardinal*		/* keycount_return */
616);
617
618extern void XtStringConversionWarning( /* obsolete */
619    _Xconst _XtString	/* from_value */,
620    _Xconst _XtString	/* to_type */
621);
622
623extern void XtDisplayStringConversionWarning(
624    Display*	 	/* dpy */,
625    _Xconst _XtString	/* from_value */,
626    _Xconst _XtString	/* to_type */
627);
628
629externalref XtConvertArgRec const colorConvertArgs[];
630externalref XtConvertArgRec const screenConvertArg[];
631
632extern void XtAppAddConverter( /* obsolete */
633    XtAppContext	/* app_context */,
634    _Xconst _XtString	/* from_type */,
635    _Xconst _XtString	/* to_type */,
636    XtConverter 	/* converter */,
637    XtConvertArgList	/* convert_args */,
638    Cardinal 		/* num_args */
639);
640
641extern void XtAddConverter( /* obsolete */
642    _Xconst _XtString	/* from_type */,
643    _Xconst _XtString 	/* to_type */,
644    XtConverter 	/* converter */,
645    XtConvertArgList 	/* convert_args */,
646    Cardinal 		/* num_args */
647);
648
649extern void XtSetTypeConverter(
650    _Xconst _XtString 	/* from_type */,
651    _Xconst _XtString 	/* to_type */,
652    XtTypeConverter 	/* converter */,
653    XtConvertArgList 	/* convert_args */,
654    Cardinal 		/* num_args */,
655    XtCacheType 	/* cache_type */,
656    XtDestructor 	/* destructor */
657);
658
659extern void XtAppSetTypeConverter(
660    XtAppContext 	/* app_context */,
661    _Xconst _XtString 	/* from_type */,
662    _Xconst _XtString 	/* to_type */,
663    XtTypeConverter 	/* converter */,
664    XtConvertArgList 	/* convert_args */,
665    Cardinal 		/* num_args */,
666    XtCacheType 	/* cache_type */,
667    XtDestructor 	/* destructor */
668);
669
670extern void XtConvert( /* obsolete */
671    Widget 		/* widget */,
672    _Xconst _XtString 	/* from_type */,
673    XrmValue*		/* from */,
674    _Xconst _XtString 	/* to_type */,
675    XrmValue*		/* to_return */
676);
677
678extern void XtDirectConvert( /* obsolete */
679    XtConverter 	/* converter */,
680    XrmValuePtr 	/* args */,
681    Cardinal 		/* num_args */,
682    XrmValuePtr 	/* from */,
683    XrmValue*		/* to_return */
684);
685
686/****************************************************************
687 *
688 * Translation Management
689 *
690 ****************************************************************/
691
692extern XtTranslations XtParseTranslationTable(
693    _Xconst _XtString	/* table */
694);
695
696extern XtAccelerators XtParseAcceleratorTable(
697    _Xconst _XtString	/* source */
698);
699
700extern void XtOverrideTranslations(
701    Widget 		/* widget */,
702    XtTranslations 	/* translations */
703);
704
705extern void XtAugmentTranslations(
706    Widget 		/* widget */,
707    XtTranslations 	/* translations */
708);
709
710extern void XtInstallAccelerators(
711    Widget 		/* destination */,
712    Widget		/* source */
713);
714
715extern void XtInstallAllAccelerators(
716    Widget 		/* destination */,
717    Widget		/* source */
718);
719
720extern void XtUninstallTranslations(
721    Widget 		/* widget */
722);
723
724extern void XtAppAddActions(
725    XtAppContext 	/* app_context */,
726    XtActionList 	/* actions */,
727    Cardinal 		/* num_actions */
728);
729
730extern void XtAddActions( /* obsolete */
731    XtActionList 	/* actions */,
732    Cardinal 		/* num_actions */
733);
734
735extern XtActionHookId XtAppAddActionHook(
736    XtAppContext 	/* app_context */,
737    XtActionHookProc 	/* proc */,
738    XtPointer 		/* client_data */
739);
740
741extern void XtRemoveActionHook(
742    XtActionHookId 	/* id */
743);
744
745extern void XtGetActionList(
746    WidgetClass		/* widget_class */,
747    XtActionList*	/* actions_return */,
748    Cardinal*		/* num_actions_return */
749);
750
751extern void XtCallActionProc(
752    Widget		/* widget */,
753    _Xconst _XtString	/* action */,
754    XEvent*		/* event */,
755    String*		/* params */,
756    Cardinal		/* num_params */
757);
758
759extern void XtRegisterGrabAction(
760    XtActionProc 	/* action_proc */,
761    _XtBoolean 		/* owner_events */,
762    unsigned int 	/* event_mask */,
763    int			/* pointer_mode */,
764    int	 		/* keyboard_mode */
765);
766
767extern void XtSetMultiClickTime(
768    Display*		/* dpy */,
769    int 		/* milliseconds */
770);
771
772extern int XtGetMultiClickTime(
773    Display*		/* dpy */
774);
775
776extern KeySym XtGetActionKeysym(
777    XEvent*		/* event */,
778    Modifiers*		/* modifiers_return */
779);
780
781/***************************************************************
782 *
783 * Keycode and Keysym procedures for translation management
784 *
785 ****************************************************************/
786
787extern void XtTranslateKeycode(
788    Display*		/* dpy */,
789    _XtKeyCode 		/* keycode */,
790    Modifiers 		/* modifiers */,
791    Modifiers*		/* modifiers_return */,
792    KeySym*		/* keysym_return */
793);
794
795extern void XtTranslateKey(
796    Display*		/* dpy */,
797    _XtKeyCode		/* keycode */,
798    Modifiers		/* modifiers */,
799    Modifiers*		/* modifiers_return */,
800    KeySym*		/* keysym_return */
801);
802
803extern void XtSetKeyTranslator(
804    Display*		/* dpy */,
805    XtKeyProc 		/* proc */
806);
807
808extern void XtRegisterCaseConverter(
809    Display*		/* dpy */,
810    XtCaseProc 		/* proc */,
811    KeySym 		/* start */,
812    KeySym 		/* stop */
813);
814
815extern void XtConvertCase(
816    Display*		/* dpy */,
817    KeySym 		/* keysym */,
818    KeySym*		/* lower_return */,
819    KeySym*		/* upper_return */
820);
821
822/****************************************************************
823 *
824 * Event Management
825 *
826 ****************************************************************/
827
828/* XtAllEvents is valid only for XtRemoveEventHandler and
829 * XtRemoveRawEventHandler; don't use it to select events!
830 */
831#define XtAllEvents ((EventMask) -1L)
832
833extern void XtAddEventHandler(
834    Widget 		/* widget */,
835    EventMask 		/* event_mask */,
836    _XtBoolean 		/* nonmaskable */,
837    XtEventHandler 	/* proc */,
838    XtPointer 		/* closure */
839);
840
841extern void XtRemoveEventHandler(
842    Widget 		/* widget */,
843    EventMask 		/* event_mask */,
844    _XtBoolean 		/* nonmaskable */,
845    XtEventHandler 	/* proc */,
846    XtPointer 		/* closure */
847);
848
849extern void XtAddRawEventHandler(
850    Widget 		/* widget */,
851    EventMask 		/* event_mask */,
852    _XtBoolean 		/* nonmaskable */,
853    XtEventHandler 	/* proc */,
854    XtPointer 		/* closure */
855);
856
857extern void XtRemoveRawEventHandler(
858    Widget 		/* widget */,
859    EventMask 		/* event_mask */,
860    _XtBoolean 		/* nonmaskable */,
861    XtEventHandler 	/* proc */,
862    XtPointer 		/* closure */
863);
864
865extern void XtInsertEventHandler(
866    Widget 		/* widget */,
867    EventMask 		/* event_mask */,
868    _XtBoolean 		/* nonmaskable */,
869    XtEventHandler 	/* proc */,
870    XtPointer 		/* closure */,
871    XtListPosition 	/* position */
872);
873
874extern void XtInsertRawEventHandler(
875    Widget 		/* widget */,
876    EventMask 		/* event_mask */,
877    _XtBoolean 		/* nonmaskable */,
878    XtEventHandler 	/* proc */,
879    XtPointer 		/* closure */,
880    XtListPosition 	/* position */
881);
882
883extern XtEventDispatchProc XtSetEventDispatcher(
884    Display*		/* dpy */,
885    int			/* event_type */,
886    XtEventDispatchProc	/* proc */
887);
888
889extern Boolean XtDispatchEventToWidget(
890    Widget		/* widget */,
891    XEvent*		/* event */
892);
893
894extern void XtInsertEventTypeHandler(
895    Widget		/* widget */,
896    int			/* type */,
897    XtPointer		/* select_data */,
898    XtEventHandler	/* proc */,
899    XtPointer		/* closure */,
900    XtListPosition	/* position */
901);
902
903extern void XtRemoveEventTypeHandler(
904    Widget		/* widget */,
905    int			/* type */,
906    XtPointer		/* select_data */,
907    XtEventHandler	/* proc */,
908    XtPointer		/* closure */
909);
910
911extern EventMask XtBuildEventMask(
912    Widget 		/* widget */
913);
914
915extern void XtRegisterExtensionSelector(
916    Display*		/* dpy */,
917    int			/* min_event_type */,
918    int			/* max_event_type */,
919    XtExtensionSelectProc /* proc */,
920    XtPointer		/* client_data */
921);
922
923extern void XtAddGrab(
924    Widget 		/* widget */,
925    _XtBoolean 		/* exclusive */,
926    _XtBoolean 		/* spring_loaded */
927);
928
929extern void XtRemoveGrab(
930    Widget 		/* widget */
931);
932
933extern void XtProcessEvent( /* obsolete */
934    XtInputMask 		/* mask */
935);
936
937extern void XtAppProcessEvent(
938    XtAppContext 		/* app_context */,
939    XtInputMask 		/* mask */
940);
941
942extern void XtMainLoop( /* obsolete */
943    void
944);
945
946extern void XtAppMainLoop(
947    XtAppContext 		/* app_context */
948);
949
950extern void XtAddExposureToRegion(
951    XEvent*		/* event */,
952    Region 		/* region */
953);
954
955extern void XtSetKeyboardFocus(
956    Widget		/* subtree */,
957    Widget 		/* descendent */
958);
959
960extern Widget XtGetKeyboardFocusWidget(
961    Widget		/* widget */
962);
963
964extern XEvent* XtLastEventProcessed(
965    Display*		/* dpy */
966);
967
968extern Time XtLastTimestampProcessed(
969    Display*		/* dpy */
970);
971
972/****************************************************************
973 *
974 * Event Gathering Routines
975 *
976 ****************************************************************/
977
978extern XtIntervalId XtAddTimeOut( /* obsolete */
979    unsigned long 	/* interval */,
980    XtTimerCallbackProc /* proc */,
981    XtPointer 		/* closure */
982);
983
984extern XtIntervalId XtAppAddTimeOut(
985    XtAppContext 	/* app_context */,
986    unsigned long 	/* interval */,
987    XtTimerCallbackProc /* proc */,
988    XtPointer 		/* closure */
989);
990
991extern void XtRemoveTimeOut(
992    XtIntervalId 	/* timer */
993);
994
995extern XtInputId XtAddInput( /* obsolete */
996    int 		/* source */,
997    XtPointer 		/* condition */,
998    XtInputCallbackProc /* proc */,
999    XtPointer 		/* closure */
1000);
1001
1002extern XtInputId XtAppAddInput(
1003    XtAppContext       	/* app_context */,
1004    int 		/* source */,
1005    XtPointer 		/* condition */,
1006    XtInputCallbackProc /* proc */,
1007    XtPointer 		/* closure */
1008);
1009
1010extern void XtRemoveInput(
1011    XtInputId 		/* id */
1012);
1013
1014extern XtSignalId XtAddSignal(
1015    XtSignalCallbackProc /* proc */,
1016    XtPointer		/* closure */);
1017
1018extern XtSignalId XtAppAddSignal(
1019    XtAppContext       	/* app_context */,
1020    XtSignalCallbackProc /* proc */,
1021    XtPointer 		/* closure */
1022);
1023
1024extern void XtRemoveSignal(
1025    XtSignalId 		/* id */
1026);
1027
1028extern void XtNoticeSignal(
1029    XtSignalId		/* id */
1030);
1031
1032extern void XtNextEvent( /* obsolete */
1033    XEvent* 		/* event */
1034);
1035
1036extern void XtAppNextEvent(
1037    XtAppContext 	/* app_context */,
1038    XEvent*		/* event_return */
1039);
1040
1041#define XtIMXEvent		1
1042#define XtIMTimer		2
1043#define XtIMAlternateInput	4
1044#define XtIMSignal		8
1045#define XtIMAll (XtIMXEvent | XtIMTimer | XtIMAlternateInput | XtIMSignal)
1046
1047extern Boolean XtPending( /* obsolete */
1048    void
1049);
1050
1051extern XtInputMask XtAppPending(
1052    XtAppContext 	/* app_context */
1053);
1054
1055extern XtBlockHookId XtAppAddBlockHook(
1056    XtAppContext 	/* app_context */,
1057    XtBlockHookProc 	/* proc */,
1058    XtPointer 		/* client_data */
1059);
1060
1061extern void XtRemoveBlockHook(
1062    XtBlockHookId 	/* id */
1063);
1064
1065/****************************************************************
1066 *
1067 * Random utility routines
1068 *
1069 ****************************************************************/
1070
1071#define XtIsRectObj(object)	(_XtCheckSubclassFlag(object, (XtEnum)0x02))
1072#define XtIsWidget(object)	(_XtCheckSubclassFlag(object, (XtEnum)0x04))
1073#define XtIsComposite(widget)	(_XtCheckSubclassFlag(widget, (XtEnum)0x08))
1074#define XtIsConstraint(widget)	(_XtCheckSubclassFlag(widget, (XtEnum)0x10))
1075#define XtIsShell(widget)	(_XtCheckSubclassFlag(widget, (XtEnum)0x20))
1076
1077#undef XtIsOverrideShell
1078extern Boolean XtIsOverrideShell(Widget /* object */);
1079#define XtIsOverrideShell(widget) \
1080    (_XtIsSubclassOf(widget, (WidgetClass)overrideShellWidgetClass, \
1081		     (WidgetClass)shellWidgetClass, (XtEnum)0x20))
1082
1083#define XtIsWMShell(widget)	(_XtCheckSubclassFlag(widget, (XtEnum)0x40))
1084
1085#undef XtIsVendorShell
1086extern Boolean XtIsVendorShell(Widget /* object */);
1087#define XtIsVendorShell(widget)	\
1088    (_XtIsSubclassOf(widget, (WidgetClass)vendorShellWidgetClass, \
1089		     (WidgetClass)wmShellWidgetClass, (XtEnum)0x40))
1090
1091#undef XtIsTransientShell
1092extern Boolean XtIsTransientShell(Widget /* object */);
1093#define XtIsTransientShell(widget) \
1094    (_XtIsSubclassOf(widget, (WidgetClass)transientShellWidgetClass, \
1095		     (WidgetClass)wmShellWidgetClass, (XtEnum)0x40))
1096#define XtIsTopLevelShell(widget) (_XtCheckSubclassFlag(widget, (XtEnum)0x80))
1097
1098#undef XtIsApplicationShell
1099extern Boolean XtIsApplicationShell(Widget /* object */);
1100#define XtIsApplicationShell(widget) \
1101    (_XtIsSubclassOf(widget, (WidgetClass)applicationShellWidgetClass, \
1102		     (WidgetClass)topLevelShellWidgetClass, (XtEnum)0x80))
1103
1104#undef XtIsSessionShell
1105extern Boolean XtIsSessionShell(Widget /* object */);
1106#define XtIsSessionShell(widget) \
1107    (_XtIsSubclassOf(widget, (WidgetClass)sessionShellWidgetClass, \
1108		     (WidgetClass)topLevelShellWidgetClass, (XtEnum)0x80))
1109
1110extern void XtRealizeWidget(
1111    Widget 		/* widget */
1112);
1113
1114void XtUnrealizeWidget(
1115    Widget 		/* widget */
1116);
1117
1118extern void XtDestroyWidget(
1119    Widget 		/* widget */
1120);
1121
1122extern void XtSetSensitive(
1123    Widget 		/* widget */,
1124    _XtBoolean 		/* sensitive */
1125);
1126
1127extern void XtSetMappedWhenManaged(
1128    Widget 		/* widget */,
1129    _XtBoolean 		/* mapped_when_managed */
1130);
1131
1132extern Widget XtNameToWidget(
1133    Widget 		/* reference */,
1134    _Xconst _XtString	/* names */
1135);
1136
1137extern Widget XtWindowToWidget(
1138    Display*		/* display */,
1139    Window 		/* window */
1140);
1141
1142extern XtPointer XtGetClassExtension(
1143    WidgetClass		/* object_class */,
1144    Cardinal		/* byte_offset */,
1145    XrmQuark		/* type */,
1146    long		/* version */,
1147    Cardinal		/* record_size */
1148);
1149
1150/***************************************************************
1151 *
1152 * Arg lists
1153 *
1154 ****************************************************************/
1155
1156
1157#define XtSetArg(arg, n, d) \
1158    ((void)( (arg).name = (n), (arg).value = (XtArgVal)(d) ))
1159
1160extern ArgList XtMergeArgLists(
1161    ArgList 		/* args1 */,
1162    Cardinal 		/* num_args1 */,
1163    ArgList 		/* args2 */,
1164    Cardinal 		/* num_args2 */
1165);
1166
1167/***************************************************************
1168 *
1169 * Vararg lists
1170 *
1171 ****************************************************************/
1172
1173#define XtVaNestedList  "XtVaNestedList"
1174#define XtVaTypedArg    "XtVaTypedArg"
1175
1176extern XtVarArgsList XtVaCreateArgsList(
1177    XtPointer		/*unused*/, ...
1178) _X_SENTINEL(0);
1179
1180/*************************************************************
1181 *
1182 * Information routines
1183 *
1184 ************************************************************/
1185
1186#ifndef _XtIntrinsicP_h
1187
1188/* We're not included from the private file, so define these */
1189
1190extern Display *XtDisplay(
1191    Widget 		/* widget */
1192);
1193
1194extern Display *XtDisplayOfObject(
1195    Widget 		/* object */
1196);
1197
1198extern Screen *XtScreen(
1199    Widget 		/* widget */
1200);
1201
1202extern Screen *XtScreenOfObject(
1203    Widget 		/* object */
1204);
1205
1206extern Window XtWindow(
1207    Widget 		/* widget */
1208);
1209
1210extern Window XtWindowOfObject(
1211    Widget 		/* object */
1212);
1213
1214extern String XtName(
1215    Widget 		/* object */
1216);
1217
1218extern WidgetClass XtSuperclass(
1219    Widget 		/* object */
1220);
1221
1222extern WidgetClass XtClass(
1223    Widget 		/* object */
1224);
1225
1226extern Widget XtParent(
1227    Widget 		/* widget */
1228);
1229
1230#endif /*_XtIntrinsicP_h*/
1231
1232#undef XtMapWidget
1233extern void XtMapWidget(Widget /* w */);
1234#define XtMapWidget(widget)	XMapWindow(XtDisplay(widget), XtWindow(widget))
1235
1236#undef XtUnmapWidget
1237extern void XtUnmapWidget(Widget /* w */);
1238#define XtUnmapWidget(widget)	\
1239		XUnmapWindow(XtDisplay(widget), XtWindow(widget))
1240
1241extern void XtAddCallback(
1242    Widget 		/* widget */,
1243    _Xconst _XtString 	/* callback_name */,
1244    XtCallbackProc 	/* callback */,
1245    XtPointer 		/* closure */
1246);
1247
1248extern void XtRemoveCallback(
1249    Widget 		/* widget */,
1250    _Xconst _XtString 	/* callback_name */,
1251    XtCallbackProc 	/* callback */,
1252    XtPointer 		/* closure */
1253);
1254
1255extern void XtAddCallbacks(
1256    Widget 		/* widget */,
1257    _Xconst _XtString	/* callback_name */,
1258    XtCallbackList 	/* callbacks */
1259);
1260
1261extern void XtRemoveCallbacks(
1262    Widget 		/* widget */,
1263    _Xconst _XtString 	/* callback_name */,
1264    XtCallbackList 	/* callbacks */
1265);
1266
1267extern void XtRemoveAllCallbacks(
1268    Widget 		/* widget */,
1269    _Xconst _XtString 	/* callback_name */
1270);
1271
1272
1273extern void XtCallCallbacks(
1274    Widget 		/* widget */,
1275    _Xconst _XtString 	/* callback_name */,
1276    XtPointer 		/* call_data */
1277);
1278
1279extern void XtCallCallbackList(
1280    Widget		/* widget */,
1281    XtCallbackList 	/* callbacks */,
1282    XtPointer 		/* call_data */
1283);
1284
1285extern XtCallbackStatus XtHasCallbacks(
1286    Widget 		/* widget */,
1287    _Xconst _XtString 	/* callback_name */
1288);
1289
1290/****************************************************************
1291 *
1292 * Geometry Management
1293 *
1294 ****************************************************************/
1295
1296
1297extern XtGeometryResult XtMakeGeometryRequest(
1298    Widget 		/* widget */,
1299    XtWidgetGeometry*	/* request */,
1300    XtWidgetGeometry*	/* reply_return */
1301);
1302
1303extern XtGeometryResult XtQueryGeometry(
1304    Widget 		/* widget */,
1305    XtWidgetGeometry*	/* intended */,
1306    XtWidgetGeometry*	/* preferred_return */
1307);
1308
1309extern Widget XtCreatePopupShell(
1310    _Xconst _XtString	/* name */,
1311    WidgetClass 	/* widgetClass */,
1312    Widget 		/* parent */,
1313    ArgList 		/* args */,
1314    Cardinal 		/* num_args */
1315);
1316
1317extern Widget XtVaCreatePopupShell(
1318    _Xconst _XtString	/* name */,
1319    WidgetClass		/* widgetClass */,
1320    Widget		/* parent */,
1321    ...
1322) _X_SENTINEL(0);
1323
1324extern void XtPopup(
1325    Widget 		/* popup_shell */,
1326    XtGrabKind 		/* grab_kind */
1327);
1328
1329extern void XtPopupSpringLoaded(
1330    Widget 		/* popup_shell */
1331);
1332
1333extern void XtCallbackNone(
1334    Widget 		/* widget */,
1335    XtPointer 		/* closure */,
1336    XtPointer 		/* call_data */
1337);
1338
1339extern void XtCallbackNonexclusive(
1340    Widget 		/* widget */,
1341    XtPointer 		/* closure */,
1342    XtPointer 		/* call_data */
1343);
1344
1345extern void XtCallbackExclusive(
1346    Widget 		/* widget */,
1347    XtPointer 		/* closure */,
1348    XtPointer 		/* call_data */
1349);
1350
1351extern void XtPopdown(
1352    Widget 		/* popup_shell */
1353);
1354
1355extern void XtCallbackPopdown(
1356    Widget 		/* widget */,
1357    XtPointer 		/* closure */,
1358    XtPointer 		/* call_data */
1359);
1360
1361extern void XtMenuPopupAction(
1362    Widget 		/* widget */,
1363    XEvent*		/* event */,
1364    String*		/* params */,
1365    Cardinal*		/* num_params */
1366);
1367
1368extern Widget XtCreateWidget(
1369    _Xconst _XtString 	/* name */,
1370    WidgetClass 	/* widget_class */,
1371    Widget 		/* parent */,
1372    ArgList 		/* args */,
1373    Cardinal 		/* num_args */
1374);
1375
1376extern Widget XtCreateManagedWidget(
1377    _Xconst _XtString 	/* name */,
1378    WidgetClass 	/* widget_class */,
1379    Widget 		/* parent */,
1380    ArgList 		/* args */,
1381    Cardinal 		/* num_args */
1382);
1383
1384extern Widget XtVaCreateWidget(
1385    _Xconst _XtString	/* name */,
1386    WidgetClass		/* widget */,
1387    Widget		/* parent */,
1388    ...
1389) _X_SENTINEL(0);
1390
1391extern Widget XtVaCreateManagedWidget(
1392    _Xconst _XtString	/* name */,
1393    WidgetClass		/* widget_class */,
1394    Widget		/* parent */,
1395    ...
1396) _X_SENTINEL(0);
1397
1398extern Widget XtCreateApplicationShell( /* obsolete */
1399    _Xconst _XtString 	/* name */,
1400    WidgetClass 	/* widget_class */,
1401    ArgList 		/* args */,
1402    Cardinal 		/* num_args */
1403);
1404
1405extern Widget XtAppCreateShell(
1406    _Xconst _XtString	/* application_name */,
1407    _Xconst _XtString	/* application_class */,
1408    WidgetClass 	/* widget_class */,
1409    Display*		/* display */,
1410    ArgList 		/* args */,
1411    Cardinal 		/* num_args */
1412);
1413
1414extern Widget XtVaAppCreateShell(
1415    _Xconst _XtString	/* application_name */,
1416    _Xconst _XtString	/* application_class */,
1417    WidgetClass		/* widget_class */,
1418    Display*		/* display */,
1419    ...
1420) _X_SENTINEL(0);
1421
1422/****************************************************************
1423 *
1424 * Toolkit initialization
1425 *
1426 ****************************************************************/
1427
1428extern void XtToolkitInitialize(
1429    void
1430);
1431
1432extern XtLanguageProc XtSetLanguageProc(
1433    XtAppContext	/* app_context */,
1434    XtLanguageProc	/* proc */,
1435    XtPointer		/* client_data */
1436);
1437
1438extern void XtDisplayInitialize(
1439    XtAppContext 	/* app_context */,
1440    Display*		/* dpy */,
1441    _Xconst _XtString	/* application_name */,
1442    _Xconst _XtString	/* application_class */,
1443    XrmOptionDescRec* 	/* options */,
1444    Cardinal 		/* num_options */,
1445    int*		/* argc */,
1446    char**		/* argv */
1447);
1448
1449extern Widget XtOpenApplication(
1450    XtAppContext*	/* app_context_return */,
1451    _Xconst _XtString	/* application_class */,
1452    XrmOptionDescList 	/* options */,
1453    Cardinal 		/* num_options */,
1454    int*		/* argc_in_out */,
1455    String*		/* argv_in_out */,
1456    String*		/* fallback_resources */,
1457    WidgetClass		/* widget_class */,
1458    ArgList 		/* args */,
1459    Cardinal 		/* num_args */
1460);
1461
1462extern Widget XtVaOpenApplication(
1463    XtAppContext*	/* app_context_return */,
1464    _Xconst _XtString	/* application_class */,
1465    XrmOptionDescList	/* options */,
1466    Cardinal		/* num_options */,
1467    int*		/* argc_in_out */,
1468    String*		/* argv_in_out */,
1469    String*		/* fallback_resources */,
1470    WidgetClass		/* widget_class */,
1471    ...
1472) _X_SENTINEL(0);
1473
1474extern Widget XtAppInitialize( /* obsolete */
1475    XtAppContext*	/* app_context_return */,
1476    _Xconst _XtString	/* application_class */,
1477    XrmOptionDescList 	/* options */,
1478    Cardinal 		/* num_options */,
1479    int*		/* argc_in_out */,
1480    String*		/* argv_in_out */,
1481    String*		/* fallback_resources */,
1482    ArgList 		/* args */,
1483    Cardinal 		/* num_args */
1484);
1485
1486extern Widget XtVaAppInitialize( /* obsolete */
1487    XtAppContext*	/* app_context_return */,
1488    _Xconst _XtString	/* application_class */,
1489    XrmOptionDescList	/* options */,
1490    Cardinal		/* num_options */,
1491    int*		/* argc_in_out */,
1492    String*		/* argv_in_out */,
1493    String*		/* fallback_resources */,
1494    ...
1495) _X_SENTINEL(0);
1496
1497extern Widget XtInitialize( /* obsolete */
1498    _Xconst _XtString 	/* shell_name */,
1499    _Xconst _XtString 	/* application_class */,
1500    XrmOptionDescRec* 	/* options */,
1501    Cardinal 		/* num_options */,
1502    int*		/* argc */,
1503    char**		/* argv */
1504);
1505
1506extern Display *XtOpenDisplay(
1507    XtAppContext 	/* app_context */,
1508    _Xconst _XtString	/* display_string */,
1509    _Xconst _XtString	/* application_name */,
1510    _Xconst _XtString	/* application_class */,
1511    XrmOptionDescRec*	/* options */,
1512    Cardinal 		/* num_options */,
1513    int*		/* argc */,
1514    char**		/* argv */
1515);
1516
1517extern XtAppContext XtCreateApplicationContext(
1518    void
1519);
1520
1521extern void XtAppSetFallbackResources(
1522    XtAppContext 	/* app_context */,
1523    String*		/* specification_list */
1524);
1525
1526extern void XtDestroyApplicationContext(
1527    XtAppContext 	/* app_context */
1528);
1529
1530extern void XtInitializeWidgetClass(
1531    WidgetClass 	/* widget_class */
1532);
1533
1534extern XtAppContext XtWidgetToApplicationContext(
1535    Widget 		/* widget */
1536);
1537
1538extern XtAppContext XtDisplayToApplicationContext(
1539    Display*		/* dpy */
1540);
1541
1542extern XrmDatabase XtDatabase(
1543    Display*		/* dpy */
1544);
1545
1546extern XrmDatabase XtScreenDatabase(
1547    Screen*		/* screen */
1548);
1549
1550extern void XtCloseDisplay(
1551    Display*		/* dpy */
1552);
1553
1554extern void XtGetApplicationResources(
1555    Widget 		/* widget */,
1556    XtPointer 		/* base */,
1557    XtResourceList 	/* resources */,
1558    Cardinal 		/* num_resources */,
1559    ArgList 		/* args */,
1560    Cardinal 		/* num_args */
1561);
1562
1563extern void XtVaGetApplicationResources(
1564    Widget		/* widget */,
1565    XtPointer		/* base */,
1566    XtResourceList	/* resources */,
1567    Cardinal		/* num_resources */,
1568    ...
1569) _X_SENTINEL(0);
1570
1571extern void XtGetSubresources(
1572    Widget 		/* widget */,
1573    XtPointer 		/* base */,
1574    _Xconst _XtString 	/* name */,
1575    _Xconst _XtString 	/* class */,
1576    XtResourceList 	/* resources */,
1577    Cardinal 		/* num_resources */,
1578    ArgList 		/* args */,
1579    Cardinal 		/* num_args */
1580);
1581
1582extern void XtVaGetSubresources(
1583    Widget		/* widget */,
1584    XtPointer		/* base */,
1585    _Xconst _XtString	/* name */,
1586    _Xconst _XtString	/* class */,
1587    XtResourceList	/* resources */,
1588    Cardinal		/* num_resources */,
1589    ...
1590) _X_SENTINEL(0);
1591
1592extern void XtSetValues(
1593    Widget 		/* widget */,
1594    ArgList 		/* args */,
1595    Cardinal 		/* num_args */
1596);
1597
1598extern void XtVaSetValues(
1599    Widget		/* widget */,
1600    ...
1601) _X_SENTINEL(0);
1602
1603extern void XtGetValues(
1604    Widget 		/* widget */,
1605    ArgList 		/* args */,
1606    Cardinal 		/* num_args */
1607);
1608
1609extern void XtVaGetValues(
1610    Widget		/* widget */,
1611    ...
1612) _X_SENTINEL(0);
1613
1614extern void XtSetSubvalues(
1615    XtPointer 		/* base */,
1616    XtResourceList 	/* resources */,
1617    Cardinal 		/* num_resources */,
1618    ArgList 		/* args */,
1619    Cardinal 		/* num_args */
1620);
1621
1622extern void XtVaSetSubvalues(
1623    XtPointer		/* base */,
1624    XtResourceList	/* resources */,
1625    Cardinal		/* num_resources */,
1626    ...
1627) _X_SENTINEL(0);
1628
1629extern void XtGetSubvalues(
1630    XtPointer 		/* base */,
1631    XtResourceList 	/* resources */,
1632    Cardinal 		/* num_resources */,
1633    ArgList 		/* args */,
1634    Cardinal 		/* num_args */
1635);
1636
1637extern void XtVaGetSubvalues(
1638    XtPointer		/* base */,
1639    XtResourceList	/* resources */,
1640    Cardinal		/* num_resources */,
1641    ...
1642) _X_SENTINEL(0);
1643
1644extern void XtGetResourceList(
1645    WidgetClass 	/* widget_class */,
1646    XtResourceList*	/* resources_return */,
1647    Cardinal*		/* num_resources_return */
1648);
1649
1650extern void XtGetConstraintResourceList(
1651    WidgetClass 	/* widget_class */,
1652    XtResourceList*	/* resources_return */,
1653    Cardinal*		/* num_resources_return */
1654);
1655
1656#define XtUnspecifiedPixmap	((Pixmap)2)
1657#define XtUnspecifiedShellInt	(-1)
1658#define XtUnspecifiedWindow	((Window)2)
1659#define XtUnspecifiedWindowGroup ((Window)3)
1660#define XtCurrentDirectory	"XtCurrentDirectory"
1661#define XtDefaultForeground	"XtDefaultForeground"
1662#define XtDefaultBackground	"XtDefaultBackground"
1663#define XtDefaultFont		"XtDefaultFont"
1664#define XtDefaultFontSet	"XtDefaultFontSet"
1665
1666#if defined(CRAY)
1667#define XtOffset(p_type,field) _Offsetof(p_type,field)
1668#else	/* ! CRAY */
1669#define XtOffset(p_type,field) \
1670	((Cardinal) (((char *) (&(((p_type)NULL)->field))) - ((char *) NULL)))
1671#endif /* !CRAY */
1672
1673#ifdef offsetof
1674#define XtOffsetOf(s_type,field) offsetof(s_type,field)
1675#else
1676#define XtOffsetOf(s_type,field) XtOffset(s_type*,field)
1677#endif
1678
1679/*************************************************************
1680 *
1681 * Session Management
1682 *
1683 ************************************************************/
1684
1685typedef struct _XtCheckpointTokenRec {
1686    int		save_type;
1687    int		interact_style;
1688    Boolean	shutdown;
1689    Boolean	fast;
1690    Boolean	cancel_shutdown;
1691    int		phase;
1692    int		interact_dialog_type;	/* return */
1693    Boolean	request_cancel;		/* return */
1694    Boolean	request_next_phase;	/* return */
1695    Boolean	save_success;		/* return */
1696    int		type;		/* implementation private */
1697    Widget	widget;		/* implementation private */
1698} XtCheckpointTokenRec, *XtCheckpointToken;
1699
1700XtCheckpointToken XtSessionGetToken(
1701    Widget		/* widget */
1702);
1703
1704void XtSessionReturnToken(
1705    XtCheckpointToken	/* token */
1706);
1707
1708/*************************************************************
1709 *
1710 * Error Handling
1711 *
1712 ************************************************************/
1713
1714extern XtErrorMsgHandler XtAppSetErrorMsgHandler(
1715    XtAppContext 	/* app_context */,
1716    XtErrorMsgHandler 	/* handler */
1717);
1718
1719extern void XtSetErrorMsgHandler( /* obsolete */
1720    XtErrorMsgHandler 	/* handler */
1721);
1722
1723extern XtErrorMsgHandler XtAppSetWarningMsgHandler(
1724    XtAppContext 	/* app_context */,
1725    XtErrorMsgHandler 	/* handler */
1726);
1727
1728extern void XtSetWarningMsgHandler( /* obsolete */
1729    XtErrorMsgHandler 	/* handler */
1730);
1731
1732extern void XtAppErrorMsg(
1733    XtAppContext 	/* app_context */,
1734    _Xconst _XtString 	/* name */,
1735    _Xconst _XtString	/* type */,
1736    _Xconst _XtString	/* class */,
1737    _Xconst _XtString	/* default */,
1738    String*		/* params */,
1739    Cardinal*		/* num_params */
1740);
1741
1742extern void XtErrorMsg( /* obsolete */
1743    _Xconst _XtString 	/* name */,
1744    _Xconst _XtString	/* type */,
1745    _Xconst _XtString	/* class */,
1746    _Xconst _XtString	/* default */,
1747    String*		/* params */,
1748    Cardinal*		/* num_params */
1749);
1750
1751extern void XtAppWarningMsg(
1752    XtAppContext 	/* app_context */,
1753    _Xconst _XtString 	/* name */,
1754    _Xconst _XtString 	/* type */,
1755    _Xconst _XtString 	/* class */,
1756    _Xconst _XtString 	/* default */,
1757    String*		/* params */,
1758    Cardinal*		/* num_params */
1759);
1760
1761extern void XtWarningMsg( /* obsolete */
1762    _Xconst _XtString	/* name */,
1763    _Xconst _XtString	/* type */,
1764    _Xconst _XtString	/* class */,
1765    _Xconst _XtString	/* default */,
1766    String*		/* params */,
1767    Cardinal*		/* num_params */
1768);
1769
1770extern XtErrorHandler XtAppSetErrorHandler(
1771    XtAppContext 	/* app_context */,
1772    XtErrorHandler 	/* handler */
1773);
1774
1775extern void XtSetErrorHandler( /* obsolete */
1776    XtErrorHandler 	/* handler */
1777);
1778
1779extern XtErrorHandler XtAppSetWarningHandler(
1780    XtAppContext 	/* app_context */,
1781    XtErrorHandler 	/* handler */
1782);
1783
1784extern void XtSetWarningHandler( /* obsolete */
1785    XtErrorHandler 	/* handler */
1786);
1787
1788extern void XtAppError(
1789    XtAppContext 	/* app_context */,
1790    _Xconst _XtString	/* message */
1791);
1792
1793extern void XtError( /* obsolete */
1794    _Xconst _XtString	/* message */
1795);
1796
1797extern void XtAppWarning(
1798    XtAppContext 	/* app_context */,
1799    _Xconst _XtString	/* message */
1800);
1801
1802extern void XtWarning( /* obsolete */
1803    _Xconst _XtString	/* message */
1804);
1805
1806extern XrmDatabase *XtAppGetErrorDatabase(
1807    XtAppContext 	/* app_context */
1808);
1809
1810extern XrmDatabase *XtGetErrorDatabase( /* obsolete */
1811    void
1812);
1813
1814extern void XtAppGetErrorDatabaseText(
1815    XtAppContext 	/* app_context */,
1816    _Xconst _XtString	/* name */,
1817    _Xconst _XtString	/* type */,
1818    _Xconst _XtString	/* class */,
1819    _Xconst _XtString 	/* default */,
1820    String 		/* buffer_return */,
1821    int 		/* nbytes */,
1822    XrmDatabase 	/* database */
1823);
1824
1825extern void XtGetErrorDatabaseText( /* obsolete */
1826    _Xconst _XtString	/* name */,
1827    _Xconst _XtString	/* type */,
1828    _Xconst _XtString	/* class */,
1829    _Xconst _XtString 	/* default */,
1830    String 		/* buffer_return */,
1831    int 		/* nbytes */
1832);
1833
1834/****************************************************************
1835 *
1836 * Memory Management
1837 *
1838 ****************************************************************/
1839
1840extern char *XtMalloc(
1841    Cardinal 		/* size */
1842);
1843
1844extern char *XtCalloc(
1845    Cardinal		/* num */,
1846    Cardinal 		/* size */
1847);
1848
1849extern char *XtRealloc(
1850    char* 		/* ptr */,
1851    Cardinal 		/* num */
1852);
1853
1854extern void XtFree(
1855    char*		/* ptr */
1856);
1857
1858#ifdef XTTRACEMEMORY
1859
1860extern char *_XtMalloc( /* implementation-private */
1861    Cardinal	/* size */,
1862    char *	/* file */,
1863    int	        /* line */
1864);
1865
1866extern char *_XtRealloc( /* implementation-private */
1867    char *	/* ptr */,
1868    Cardinal    /* size */,
1869    char *	/* file */,
1870    int		/* line */
1871);
1872
1873extern char *_XtCalloc( /* implementation-private */
1874    Cardinal	/* num */,
1875    Cardinal 	/* size */,
1876    char *	/* file */,
1877    int		/* line */
1878);
1879
1880extern void _XtFree( /* implementation-private */
1881    char *	/* ptr */
1882);
1883
1884#define XtMalloc(size) _XtMalloc(size, __FILE__, __LINE__)
1885#define XtRealloc(ptr,size) _XtRealloc(ptr, size, __FILE__, __LINE__)
1886#define XtCalloc(num,size) _XtCalloc(num, size, __FILE__, __LINE__)
1887#define XtFree(ptr) _XtFree(ptr)
1888
1889#endif /* ifdef XTTRACEMEMORY */
1890
1891#define XtNew(type) ((type *) XtMalloc((unsigned) sizeof(type)))
1892
1893#undef XtNewString
1894extern String XtNewString(String /* str */);
1895#define XtNewString(str) \
1896    ((str) != NULL ? (strcpy(XtMalloc((unsigned)strlen(str) + 1), str)) : NULL)
1897
1898/*************************************************************
1899 *
1900 *  Work procs
1901 *
1902 **************************************************************/
1903
1904extern XtWorkProcId XtAddWorkProc( /* obsolete */
1905    XtWorkProc 		/* proc */,
1906    XtPointer 		/* closure */
1907);
1908
1909extern XtWorkProcId XtAppAddWorkProc(
1910    XtAppContext 	/* app_context */,
1911    XtWorkProc 		/* proc */,
1912    XtPointer 		/* closure */
1913);
1914
1915extern void  XtRemoveWorkProc(
1916    XtWorkProcId 	/* id */
1917);
1918
1919
1920/****************************************************************
1921 *
1922 * Graphic Context Management
1923 *****************************************************************/
1924
1925extern GC XtGetGC(
1926    Widget 		/* widget */,
1927    XtGCMask 		/* valueMask */,
1928    XGCValues* 		/* values */
1929);
1930
1931extern GC XtAllocateGC(
1932    Widget 		/* widget */,
1933    Cardinal		/* depth */,
1934    XtGCMask 		/* valueMask */,
1935    XGCValues* 		/* values */,
1936    XtGCMask		/* dynamicMask */,
1937    XtGCMask		/* unusedMask */
1938);
1939
1940/* This implementation of XtDestroyGC differs from the formal specification
1941 * for historic backwards compatibility reasons.  As other implementations
1942 * may conform to the spec, use of XtReleaseGC is strongly encouraged.
1943 */
1944extern void XtDestroyGC( /* obsolete */
1945    GC 			/* gc */
1946);
1947
1948extern void XtReleaseGC(
1949    Widget 		/* object */,
1950    GC 			/* gc */
1951);
1952
1953
1954
1955extern void XtAppReleaseCacheRefs(
1956    XtAppContext	/* app_context */,
1957    XtCacheRef*		/* cache_ref */
1958);
1959
1960extern void XtCallbackReleaseCacheRef(
1961    Widget 		/* widget */,
1962    XtPointer 		/* closure */,	/* XtCacheRef */
1963    XtPointer 		/* call_data */
1964);
1965
1966extern void XtCallbackReleaseCacheRefList(
1967    Widget 		/* widget */,
1968    XtPointer 		/* closure */,	/* XtCacheRef* */
1969    XtPointer 		/* call_data */
1970);
1971
1972extern void XtSetWMColormapWindows(
1973    Widget 		/* widget */,
1974    Widget*		/* list */,
1975    Cardinal		/* count */
1976);
1977
1978extern String XtFindFile(
1979    _Xconst _XtString	/* path */,
1980    Substitution	/* substitutions */,
1981    Cardinal 		/* num_substitutions */,
1982    XtFilePredicate	/* predicate */
1983);
1984
1985extern String XtResolvePathname(
1986    Display*		/* dpy */,
1987    _Xconst _XtString	/* type */,
1988    _Xconst _XtString	/* filename */,
1989    _Xconst _XtString	/* suffix */,
1990    _Xconst _XtString	/* path */,
1991    Substitution	/* substitutions */,
1992    Cardinal		/* num_substitutions */,
1993    XtFilePredicate 	/* predicate */
1994);
1995
1996/****************************************************************
1997 *
1998 * Selections
1999 *
2000 *****************************************************************/
2001
2002#define XT_CONVERT_FAIL (Atom)0x80000001
2003
2004extern void XtDisownSelection(
2005    Widget 		/* widget */,
2006    Atom 		/* selection */,
2007    Time 		/* time */
2008);
2009
2010extern void XtGetSelectionValue(
2011    Widget 		/* widget */,
2012    Atom 		/* selection */,
2013    Atom 		/* target */,
2014    XtSelectionCallbackProc /* callback */,
2015    XtPointer 		/* closure */,
2016    Time 		/* time */
2017);
2018
2019extern void XtGetSelectionValues(
2020    Widget 		/* widget */,
2021    Atom 		/* selection */,
2022    Atom*		/* targets */,
2023    int 		/* count */,
2024    XtSelectionCallbackProc /* callback */,
2025    XtPointer*		/* closures */,
2026    Time 		/* time */
2027);
2028
2029extern void XtAppSetSelectionTimeout(
2030    XtAppContext 	/* app_context */,
2031    unsigned long 	/* timeout */
2032);
2033
2034extern void XtSetSelectionTimeout( /* obsolete */
2035    unsigned long 	/* timeout */
2036);
2037
2038extern unsigned long XtAppGetSelectionTimeout(
2039    XtAppContext 	/* app_context */
2040);
2041
2042extern unsigned long XtGetSelectionTimeout( /* obsolete */
2043    void
2044);
2045
2046extern XSelectionRequestEvent *XtGetSelectionRequest(
2047    Widget 		/* widget */,
2048    Atom 		/* selection */,
2049    XtRequestId 	/* request_id */
2050);
2051
2052extern void XtGetSelectionValueIncremental(
2053    Widget 		/* widget */,
2054    Atom 		/* selection */,
2055    Atom 		/* target */,
2056    XtSelectionCallbackProc /* selection_callback */,
2057    XtPointer 		/* client_data */,
2058    Time 		/* time */
2059);
2060
2061extern void XtGetSelectionValuesIncremental(
2062    Widget 		/* widget */,
2063    Atom 		/* selection */,
2064    Atom*		/* targets */,
2065    int 		/* count */,
2066    XtSelectionCallbackProc /* callback */,
2067    XtPointer*		/* client_data */,
2068    Time 		/* time */
2069);
2070
2071extern void XtSetSelectionParameters(
2072    Widget		/* requestor */,
2073    Atom		/* selection */,
2074    Atom		/* type */,
2075    XtPointer		/* value */,
2076    unsigned long	/* length */,
2077    int			/* format */
2078);
2079
2080extern void XtGetSelectionParameters(
2081    Widget		/* owner */,
2082    Atom		/* selection */,
2083    XtRequestId		/* request_id */,
2084    Atom*		/* type_return */,
2085    XtPointer*		/* value_return */,
2086    unsigned long*	/* length_return */,
2087    int*		/* format_return */
2088);
2089
2090extern void XtCreateSelectionRequest(
2091    Widget		/* requestor */,
2092    Atom		/* selection */
2093);
2094
2095extern void XtSendSelectionRequest(
2096    Widget		/* requestor */,
2097    Atom		/* selection */,
2098    Time		/* time */
2099);
2100
2101extern void XtCancelSelectionRequest(
2102    Widget		/* requestor */,
2103    Atom		/* selection */
2104);
2105
2106extern Atom XtReservePropertyAtom(
2107    Widget		/* widget */
2108);
2109
2110extern void XtReleasePropertyAtom(
2111    Widget		/* widget */,
2112    Atom		/* selection */
2113);
2114
2115extern void XtGrabKey(
2116    Widget 		/* widget */,
2117    _XtKeyCode 		/* keycode */,
2118    Modifiers	 	/* modifiers */,
2119    _XtBoolean 		/* owner_events */,
2120    int 		/* pointer_mode */,
2121    int 		/* keyboard_mode */
2122);
2123
2124extern void XtUngrabKey(
2125    Widget 		/* widget */,
2126    _XtKeyCode 		/* keycode */,
2127    Modifiers	 	/* modifiers */
2128);
2129
2130extern int XtGrabKeyboard(
2131    Widget 		/* widget */,
2132    _XtBoolean 		/* owner_events */,
2133    int 		/* pointer_mode */,
2134    int 		/* keyboard_mode */,
2135    Time 		/* time */
2136);
2137
2138extern void XtUngrabKeyboard(
2139    Widget 		/* widget */,
2140    Time 		/* time */
2141);
2142
2143extern void XtGrabButton(
2144    Widget 		/* widget */,
2145    int 		/* button */,
2146    Modifiers	 	/* modifiers */,
2147    _XtBoolean 		/* owner_events */,
2148    unsigned int	/* event_mask */,
2149    int 		/* pointer_mode */,
2150    int 		/* keyboard_mode */,
2151    Window 		/* confine_to */,
2152    Cursor 		/* cursor */
2153);
2154
2155extern void XtUngrabButton(
2156    Widget 		/* widget */,
2157    unsigned int	/* button */,
2158    Modifiers	 	/* modifiers */
2159);
2160
2161extern int XtGrabPointer(
2162    Widget 		/* widget */,
2163    _XtBoolean 		/* owner_events */,
2164    unsigned int	/* event_mask */,
2165    int 		/* pointer_mode */,
2166    int 		/* keyboard_mode */,
2167    Window 		/* confine_to */,
2168    Cursor 		/* cursor */,
2169    Time 		/* time */
2170);
2171
2172extern void XtUngrabPointer(
2173    Widget 		/* widget */,
2174    Time 		/* time */
2175);
2176
2177extern void XtGetApplicationNameAndClass(
2178    Display*		/* dpy */,
2179    String*		/* name_return */,
2180    String*		/* class_return */
2181);
2182
2183extern void XtRegisterDrawable(
2184    Display*		/* dpy */,
2185    Drawable		/* drawable */,
2186    Widget		/* widget */
2187);
2188
2189extern void XtUnregisterDrawable(
2190    Display*		/* dpy */,
2191    Drawable		/* drawable */
2192);
2193
2194extern Widget XtHooksOfDisplay(
2195    Display*		/* dpy */
2196);
2197
2198typedef struct {
2199    String type;
2200    Widget widget;
2201    ArgList args;
2202    Cardinal num_args;
2203} XtCreateHookDataRec, *XtCreateHookData;
2204
2205typedef struct {
2206    String type;
2207    Widget widget;
2208    XtPointer event_data;
2209    Cardinal num_event_data;
2210} XtChangeHookDataRec, *XtChangeHookData;
2211
2212typedef struct {
2213    Widget old, req;
2214    ArgList args;
2215    Cardinal num_args;
2216} XtChangeHookSetValuesDataRec, *XtChangeHookSetValuesData;
2217
2218typedef struct {
2219    String type;
2220    Widget widget;
2221    XtGeometryMask changeMask;
2222    XWindowChanges changes;
2223} XtConfigureHookDataRec, *XtConfigureHookData;
2224
2225typedef struct {
2226    String type;
2227    Widget widget;
2228    XtWidgetGeometry* request;
2229    XtWidgetGeometry* reply;
2230    XtGeometryResult result;
2231} XtGeometryHookDataRec, *XtGeometryHookData;
2232
2233typedef struct {
2234    String type;
2235    Widget widget;
2236} XtDestroyHookDataRec, *XtDestroyHookData;
2237
2238extern void XtGetDisplays(
2239    XtAppContext	/* app_context */,
2240    Display***		/* dpy_return */,
2241    Cardinal*		/* num_dpy_return */
2242);
2243
2244extern Boolean XtToolkitThreadInitialize(
2245    void
2246);
2247
2248extern void XtAppSetExitFlag(
2249    XtAppContext	/* app_context */
2250);
2251
2252extern Boolean XtAppGetExitFlag(
2253    XtAppContext	/* app_context */
2254);
2255
2256extern void XtAppLock(
2257    XtAppContext	/* app_context */
2258);
2259
2260extern void XtAppUnlock(
2261    XtAppContext	/* app_context */
2262);
2263
2264/*
2265 *	Predefined Resource Converters
2266 */
2267
2268
2269/* String converters */
2270
2271extern Boolean XtCvtStringToAcceleratorTable(
2272    Display*	/* dpy */,
2273    XrmValuePtr /* args */,	/* none */
2274    Cardinal*   /* num_args */,
2275    XrmValuePtr	/* fromVal */,
2276    XrmValuePtr	/* toVal */,
2277    XtPointer*	/* closure_ret */
2278);
2279
2280extern Boolean XtCvtStringToAtom(
2281    Display*	/* dpy */,
2282    XrmValuePtr /* args */,	/* Display */
2283    Cardinal*   /* num_args */,
2284    XrmValuePtr	/* fromVal */,
2285    XrmValuePtr	/* toVal */,
2286    XtPointer*	/* closure_ret */
2287);
2288
2289extern Boolean XtCvtStringToBool(
2290    Display*	/* dpy */,
2291    XrmValuePtr /* args */,	/* none */
2292    Cardinal*   /* num_args */,
2293    XrmValuePtr	/* fromVal */,
2294    XrmValuePtr	/* toVal */,
2295    XtPointer*	/* closure_ret */
2296);
2297
2298extern Boolean XtCvtStringToBoolean(
2299    Display*	/* dpy */,
2300    XrmValuePtr /* args */,	/* none */
2301    Cardinal*   /* num_args */,
2302    XrmValuePtr	/* fromVal */,
2303    XrmValuePtr	/* toVal */,
2304    XtPointer*	/* closure_ret */
2305);
2306
2307extern Boolean XtCvtStringToCommandArgArray(
2308    Display*	/* dpy */,
2309    XrmValuePtr /* args */,	/* none */
2310    Cardinal*   /* num_args */,
2311    XrmValuePtr	/* fromVal */,
2312    XrmValuePtr	/* toVal */,
2313    XtPointer*	/* closure_ret */
2314);
2315
2316extern Boolean XtCvtStringToCursor(
2317    Display*	/* dpy */,
2318    XrmValuePtr /* args */,	/* Display */
2319    Cardinal*   /* num_args */,
2320    XrmValuePtr	/* fromVal */,
2321    XrmValuePtr	/* toVal */,
2322    XtPointer*	/* closure_ret */
2323);
2324
2325extern Boolean XtCvtStringToDimension(
2326    Display*	/* dpy */,
2327    XrmValuePtr /* args */,	/* none */
2328    Cardinal*   /* num_args */,
2329    XrmValuePtr	/* fromVal */,
2330    XrmValuePtr	/* toVal */,
2331    XtPointer*	/* closure_ret */
2332);
2333
2334extern Boolean XtCvtStringToDirectoryString(
2335    Display*	/* dpy */,
2336    XrmValuePtr /* args */,	/* none */
2337    Cardinal*   /* num_args */,
2338    XrmValuePtr	/* fromVal */,
2339    XrmValuePtr	/* toVal */,
2340    XtPointer*	/* closure_ret */
2341);
2342
2343extern Boolean XtCvtStringToDisplay(
2344    Display*	/* dpy */,
2345    XrmValuePtr /* args */,	/* none */
2346    Cardinal*   /* num_args */,
2347    XrmValuePtr	/* fromVal */,
2348    XrmValuePtr	/* toVal */,
2349    XtPointer*	/* closure_ret */
2350);
2351
2352extern Boolean XtCvtStringToFile(
2353    Display*	/* dpy */,
2354    XrmValuePtr /* args */,	/* none */
2355    Cardinal*   /* num_args */,
2356    XrmValuePtr	/* fromVal */,
2357    XrmValuePtr	/* toVal */,
2358    XtPointer*	/* closure_ret */
2359);
2360
2361extern Boolean XtCvtStringToFloat(
2362    Display*	/* dpy */,
2363    XrmValuePtr /* args */,	/* none */
2364    Cardinal*   /* num_args */,
2365    XrmValuePtr	/* fromVal */,
2366    XrmValuePtr	/* toVal */,
2367    XtPointer*	/* closure_ret */
2368);
2369
2370extern Boolean XtCvtStringToFont(
2371    Display*	/* dpy */,
2372    XrmValuePtr /* args */,	/* Display */
2373    Cardinal*   /* num_args */,
2374    XrmValuePtr	/* fromVal */,
2375    XrmValuePtr	/* toVal */,
2376    XtPointer*	/* closure_ret */
2377);
2378
2379extern Boolean XtCvtStringToFontSet(
2380    Display*	/* dpy */,
2381    XrmValuePtr /* args */,	/* Display, locale */
2382    Cardinal*   /* num_args */,
2383    XrmValuePtr	/* fromVal */,
2384    XrmValuePtr	/* toVal */,
2385    XtPointer*	/* closure_ret */
2386);
2387
2388extern Boolean XtCvtStringToFontStruct(
2389    Display*	/* dpy */,
2390    XrmValuePtr /* args */,	/* Display */
2391    Cardinal*   /* num_args */,
2392    XrmValuePtr	/* fromVal */,
2393    XrmValuePtr	/* toVal */,
2394    XtPointer*	/* closure_ret */
2395);
2396
2397extern Boolean XtCvtStringToGravity(
2398    Display*	/* dpy */,
2399    XrmValuePtr /* args */,
2400    Cardinal*   /* num_args */,
2401    XrmValuePtr	/* fromVal */,
2402    XrmValuePtr	/* toVal */,
2403    XtPointer*	/* closure_ret */
2404);
2405
2406extern Boolean XtCvtStringToInitialState(
2407    Display*	/* dpy */,
2408    XrmValuePtr /* args */,	/* none */
2409    Cardinal*   /* num_args */,
2410    XrmValuePtr	/* fromVal */,
2411    XrmValuePtr	/* toVal */,
2412    XtPointer*	/* closure_ret */
2413);
2414
2415extern Boolean XtCvtStringToInt(
2416    Display*	/* dpy */,
2417    XrmValuePtr /* args */,	/* none */
2418    Cardinal*   /* num_args */,
2419    XrmValuePtr	/* fromVal */,
2420    XrmValuePtr	/* toVal */,
2421    XtPointer*	/* closure_ret */
2422);
2423
2424extern Boolean XtCvtStringToPixel(
2425    Display*	/* dpy */,
2426    XrmValuePtr /* args */,	/* Screen, Colormap */
2427    Cardinal*   /* num_args */,
2428    XrmValuePtr	/* fromVal */,
2429    XrmValuePtr	/* toVal */,
2430    XtPointer*	/* closure_ret */
2431);
2432
2433#define XtCvtStringToPosition XtCvtStringToShort
2434
2435extern Boolean XtCvtStringToRestartStyle(
2436    Display*	/* dpy */,
2437    XrmValuePtr /* args */,	/* none */
2438    Cardinal*   /* num_args */,
2439    XrmValuePtr	/* fromVal */,
2440    XrmValuePtr	/* toVal */,
2441    XtPointer*	/* closure_ret */
2442);
2443
2444extern Boolean XtCvtStringToShort(
2445    Display*	/* dpy */,
2446    XrmValuePtr /* args */,	/* none */
2447    Cardinal*   /* num_args */,
2448    XrmValuePtr	/* fromVal */,
2449    XrmValuePtr	/* toVal */,
2450    XtPointer*	/* closure_ret */
2451);
2452
2453extern Boolean XtCvtStringToTranslationTable(
2454    Display*	/* dpy */,
2455    XrmValuePtr /* args */,	/* none */
2456    Cardinal*   /* num_args */,
2457    XrmValuePtr	/* fromVal */,
2458    XrmValuePtr	/* toVal */,
2459    XtPointer*	/* closure_ret */
2460);
2461
2462extern Boolean XtCvtStringToUnsignedChar(
2463    Display*	/* dpy */,
2464    XrmValuePtr /* args */,	/* none */
2465    Cardinal*   /* num_args */,
2466    XrmValuePtr	/* fromVal */,
2467    XrmValuePtr	/* toVal */,
2468    XtPointer*	/* closure_ret */
2469);
2470
2471extern Boolean XtCvtStringToVisual(
2472    Display*	/* dpy */,
2473    XrmValuePtr /* args */,	/* Screen, depth */
2474    Cardinal*   /* num_args */,
2475    XrmValuePtr	/* fromVal */,
2476    XrmValuePtr	/* toVal */,
2477    XtPointer*	/* closure_ret */
2478);
2479
2480/* int converters */
2481
2482extern Boolean XtCvtIntToBool(
2483    Display*	/* dpy */,
2484    XrmValuePtr /* args */,	/* none */
2485    Cardinal*   /* num_args */,
2486    XrmValuePtr	/* fromVal */,
2487    XrmValuePtr	/* toVal */,
2488    XtPointer*	/* closure_ret */
2489);
2490
2491extern Boolean XtCvtIntToBoolean(
2492    Display*	/* dpy */,
2493    XrmValuePtr /* args */,	/* none */
2494    Cardinal*   /* num_args */,
2495    XrmValuePtr	/* fromVal */,
2496    XrmValuePtr	/* toVal */,
2497    XtPointer*	/* closure_ret */
2498);
2499
2500extern Boolean XtCvtIntToColor(
2501    Display*	/* dpy */,
2502    XrmValuePtr /* args */,	/* Screen, Colormap */
2503    Cardinal*   /* num_args */,
2504    XrmValuePtr	/* fromVal */,
2505    XrmValuePtr	/* toVal */,
2506    XtPointer*	/* closure_ret */
2507);
2508
2509#define XtCvtIntToDimension XtCvtIntToShort
2510
2511extern Boolean XtCvtIntToFloat(
2512    Display*	/* dpy */,
2513    XrmValuePtr /* args */,	/* none */
2514    Cardinal*   /* num_args */,
2515    XrmValuePtr	/* fromVal */,
2516    XrmValuePtr	/* toVal */,
2517    XtPointer*	/* closure_ret */
2518);
2519
2520extern Boolean XtCvtIntToFont(
2521    Display*	/* dpy */,
2522    XrmValuePtr /* args */,	/* none */
2523    Cardinal*   /* num_args */,
2524    XrmValuePtr	/* fromVal */,
2525    XrmValuePtr	/* toVal */,
2526    XtPointer*	/* closure_ret */
2527);
2528
2529extern Boolean XtCvtIntToPixel(
2530    Display*	/* dpy */,
2531    XrmValuePtr /* args */,	/* none */
2532    Cardinal*   /* num_args */,
2533    XrmValuePtr	/* fromVal */,
2534    XrmValuePtr	/* toVal */,
2535    XtPointer*	/* closure_ret */
2536);
2537
2538extern Boolean XtCvtIntToPixmap(
2539    Display*	/* dpy */,
2540    XrmValuePtr /* args */,	/* none */
2541    Cardinal*   /* num_args */,
2542    XrmValuePtr	/* fromVal */,
2543    XrmValuePtr	/* toVal */,
2544    XtPointer*	/* closure_ret */
2545);
2546
2547#define XtCvtIntToPosition XtCvtIntToShort
2548
2549extern Boolean XtCvtIntToShort(
2550    Display*	/* dpy */,
2551    XrmValuePtr /* args */,	/* none */
2552    Cardinal*   /* num_args */,
2553    XrmValuePtr	/* fromVal */,
2554    XrmValuePtr	/* toVal */,
2555    XtPointer*	/* closure_ret */
2556);
2557
2558extern Boolean XtCvtIntToUnsignedChar(
2559    Display*	/* dpy */,
2560    XrmValuePtr /* args */,	/* none */
2561    Cardinal*   /* num_args */,
2562    XrmValuePtr	/* fromVal */,
2563    XrmValuePtr	/* toVal */,
2564    XtPointer*	/* closure_ret */
2565);
2566
2567/* Color converter */
2568
2569extern Boolean XtCvtColorToPixel(
2570    Display*	/* dpy */,
2571    XrmValuePtr /* args */,	/* none */
2572    Cardinal*   /* num_args */,
2573    XrmValuePtr	/* fromVal */,
2574    XrmValuePtr	/* toVal */,
2575    XtPointer*	/* closure_ret */
2576);
2577
2578/* Pixel converter */
2579
2580#define XtCvtPixelToColor XtCvtIntToColor
2581
2582
2583_XFUNCPROTOEND
2584
2585#endif /*_XtIntrinsic_h*/
2586/* DON'T ADD STUFF AFTER THIS #endif */
2587