diff options
Diffstat (limited to 'X11/Xaw')
71 files changed, 9445 insertions, 0 deletions
| diff --git a/X11/Xaw/AllWidgets.h b/X11/Xaw/AllWidgets.h new file mode 100644 index 000000000..0200ac4cc --- /dev/null +++ b/X11/Xaw/AllWidgets.h @@ -0,0 +1,38 @@ +/* + * $Xorg: AllWidgets.h,v 1.5 2001/02/09 02:03:42 xorgcvs Exp $ + * +Copyright 1990, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + */ + +#ifndef _XawAllWidgets_h +#define _XawAllWidgets_h + +#include <X11/Xmu/WidgetNode.h> + +/* + * This file matches the generated AllWidgets.c + */ +extern XmuWidgetNode XawWidgetArray[]; +extern int           XawWidgetCount; + +#endif /* _XawAllWidgets_h */ diff --git a/X11/Xaw/AsciiSink.h b/X11/Xaw/AsciiSink.h new file mode 100644 index 000000000..234927493 --- /dev/null +++ b/X11/Xaw/AsciiSink.h @@ -0,0 +1,82 @@ +/* + * $Xorg: AsciiSink.h,v 1.4 2001/02/09 02:03:42 xorgcvs Exp $ + */ + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/AsciiSink.h,v 1.5 2001/01/17 19:42:25 dawes Exp $ */ + +#ifndef _XawAsciiSink_h +#define _XawAsciiSink_h + +/* + * AsciiSink Object + */ + +#include <X11/Xaw/TextSink.h> + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + echo                Output             Boolean         True + displayNonprinting  Output             Boolean         True + +*/ + +#define XtCOutput "Output" + +#define XtNdisplayNonprinting "displayNonprinting" +#define XtNecho "echo" + +/* Class record constants */ +extern WidgetClass asciiSinkObjectClass; + +typedef struct _AsciiSinkClassRec *AsciiSinkObjectClass; +typedef struct _AsciiSinkRec      *AsciiSinkObject; + +#endif /* _XawAsciiSink_h */ diff --git a/X11/Xaw/AsciiSinkP.h b/X11/Xaw/AsciiSinkP.h new file mode 100644 index 000000000..b160092f3 --- /dev/null +++ b/X11/Xaw/AsciiSinkP.h @@ -0,0 +1,101 @@ +/* +* $Xorg: AsciiSinkP.h,v 1.4 2001/02/09 02:03:42 xorgcvs Exp $ +*/ + + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/AsciiSinkP.h,v 1.9 2001/01/17 19:42:25 dawes Exp $ */ + +#ifndef _XawAsciiSinkP_h +#define _XawAsciiSinkP_h + +/* + * AsciiSink Object Private Data + */ +#include <X11/Xaw/TextSinkP.h>  +#include <X11/Xaw/AsciiSink.h>  + +/* New fields for the AsciiSink object class record */ +typedef struct _AsciiSinkClassPart { +    XtPointer extension; +} AsciiSinkClassPart; + +/* Full class record declaration */ +typedef struct _AsciiSinkClassRec { +    ObjectClassPart     object_class; +    TextSinkClassPart	text_sink_class; +    AsciiSinkClassPart	ascii_sink_class; +} AsciiSinkClassRec; + +extern AsciiSinkClassRec asciiSinkClassRec; + +/* New fields for the AsciiSink object record */ +typedef struct { +    /* resources */ +    XFontStruct *font;          /* Font to draw in. */ +    Boolean echo; +    Boolean display_nonprinting; + +    /* private */ +    GC normgc, invgc, xorgc; +    XawTextPosition cursor_position; +    XawTextInsertState laststate; +    short cursor_x, cursor_y;	/* Cursor Location. */ +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} AsciiSinkPart; + +/* Full instance record declaration */ +typedef struct _AsciiSinkRec { +    ObjectPart          object; +    TextSinkPart	text_sink; +    AsciiSinkPart	ascii_sink; +} AsciiSinkRec; + +#endif /* _XawAsciiSinkP_h */ diff --git a/X11/Xaw/AsciiSrc.h b/X11/Xaw/AsciiSrc.h new file mode 100644 index 000000000..8728dd9ea --- /dev/null +++ b/X11/Xaw/AsciiSrc.h @@ -0,0 +1,175 @@ +/* $Xorg: AsciiSrc.h,v 1.4 2001/02/09 02:03:42 xorgcvs Exp $ */ + +/* + +Copyright 1989, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + +*/ +/* $XFree86: xc/lib/Xaw/AsciiSrc.h,v 1.7 2001/01/17 19:42:25 dawes Exp $ */ + + +/* + * AsciiSrc.h - Public Header file for Ascii Text Source. + * + * This is the public header file for the Ascii Text Source. + * It is intended to be used with the Text widget, the simplest way to use + * this text source is to use the AsciiText Object. + * + * Date:    June 29, 1989 + * + * By:      Chris D. Peterson + *          MIT X Consortium  + *          kit@expo.lcs.mit.edu + */ + + +#ifndef _XawAsciiSrc_h +#define _XawAsciiSrc_h + +#include <X11/Xaw/TextSrc.h> + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + dataCompression     DataCompression	Boolean		True + length		     Length		int		(internal) + pieceSize	     PieceSize		int		BUFSIZ + string		     String		String		NULL + type		     Type		XawAsciiType	XawAsciiString + useStringInPlace    UseStringInPlace	Boolean		False + +*/ +  +extern WidgetClass asciiSrcObjectClass; + +typedef struct _AsciiSrcClassRec *AsciiSrcObjectClass; +typedef struct _AsciiSrcRec      *AsciiSrcObject; + +#define AsciiSourceObjectClass AsciiSrcObjectClass +#define AsciiSourceObject      AsciiSrcObject + +/* + * Resource Definitions + */ +#define XtCDataCompression "DataCompression" +#define XtCPieceSize "PieceSize" +#define XtCType "Type" +#define XtCUseStringInPlace "UseStringInPlace" + +#define XtNdataCompression "dataCompression" +#define XtNpieceSize "pieceSize" +#define XtNtype "type" +#define XtNuseStringInPlace "useStringInPlace" + +#define XtRAsciiType "AsciiType" + +#define XtEstring "string" +#define XtEfile "file" + +typedef enum { +  XawAsciiFile, +  XawAsciiString +} XawAsciiType; + +/* + * Public routines + */ + +_XFUNCPROTOBEGIN + +/* + * Function: + *	XawAsciiSourceFreeString + * + * Parameters: + *	w - AsciiSrc object + * + * Description: + *	  Frees the string returned by a get values call + *		     on the string when the source is of type string. + */ +void XawAsciiSourceFreeString +( + Widget		w + ); + +/* + * Function: + *	XawAsciiSave + * + * Arguments: + *	w - asciiSrc Object. + * + * Description: + *	Saves all the pieces into a file or string as required. + * + * Returns: + *	True if the save was successful + */ +Bool XawAsciiSave +( + Widget		w + ); + +/* + * Function: + *	XawAsciiSaveAsFile + * + * Parameters: + *	w    - asciiSrc object + *	name - name of the file to save this file into + * + * Description: + *	Save the current buffer as a file. + * + * Returns: + *	True if the save was successful + */ +Bool XawAsciiSaveAsFile +( + Widget		w, + _Xconst char	*name + ); + +/* + * Function: + *	XawAsciiSourceChanged + * + * Parameters: + *	w - asciiSource object + * + * Description: + *	Returns true if the source has changed since last saved. + * + * Returns: + *	a Boolean (see description) + */ +Bool XawAsciiSourceChanged +( + Widget		w + ); + +_XFUNCPROTOEND + +#endif /* _XawAsciiSrc_h */ diff --git a/X11/Xaw/AsciiSrcP.h b/X11/Xaw/AsciiSrcP.h new file mode 100644 index 000000000..22d30082a --- /dev/null +++ b/X11/Xaw/AsciiSrcP.h @@ -0,0 +1,145 @@ +/* +* $Xorg: AsciiSrcP.h,v 1.4 2001/02/09 02:03:42 xorgcvs Exp $ +*/ + + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/AsciiSrcP.h,v 1.8 2001/01/17 19:42:25 dawes Exp $ */ + +/* + * AsciiSrcP.h - Private Header for Ascii Text Source. + * + * This is the private header file for the Ascii Text Source. + * It is intended to be used with the Text widget, the simplest way to use + * this text source is to use the AsciiText Object. + * + * Date:    June 29, 1989 + * + * By:      Chris D. Peterson + *          MIT X Consortium  + *          kit@expo.lcs.mit.edu + */ + +#ifndef _XawAsciiSrcP_h +#define _XawAsciiSrcP_h + +#include <X11/Xaw/TextSrcP.h> +#include <X11/Xaw/AsciiSrc.h> + +#ifdef L_tmpnam +#define TMPSIZ L_tmpnam +#else +#ifdef PATH_MAX +#define TMPSIZ PATH_MAX +#else +#define TMPSIZ 1024		/* bytes to allocate for tmpnam */ +#endif +#endif + +typedef struct _Piece {		/* Piece of the text file of BUFSIZ allocated  +				   characters */ +    char *text;			/* The text in this buffer */ +    XawTextPosition used;	/* The number of characters of this buffer  +				   that have been used */ +    struct _Piece *prev, *next;	/* linked list pointers */ +} Piece; + +typedef struct _AsciiSrcClassPart { +    XtPointer extension; +} AsciiSrcClassPart; + +/* Full class record */ +typedef struct _AsciiSrcClassRec { +    ObjectClassPart     object_class; +    TextSrcClassPart	text_src_class; +    AsciiSrcClassPart	ascii_src_class; +} AsciiSrcClassRec; + +extern AsciiSrcClassRec asciiSrcClassRec; + +/* New fields for the AsciiSrc object */ +typedef struct _AsciiSrcPart { +    /* resources */ +    char *string;		/* either the string, or the +				   file name, depending upon the type */ +    XawAsciiType type;		/* either string or disk */ +    XawTextPosition piece_size;	/* Size of text buffer for each piece */ +    Boolean data_compression;	/* compress to minimum memory automatically +				   on save? */ +#ifdef OLDXAW +    XtCallbackList callback; +#endif +    Boolean use_string_in_place;/* Use the string passed in place */ +    int ascii_length;		/* length field for ascii string emulation */ + +#ifdef ASCII_DISK +    String filename;		/* name of file for Compatability */ +#endif /* ASCII_DISK */ + +    /* private */ +    Boolean is_tempfile;	/* Is this a temporary file? */ +#ifdef OLDXAW +    Boolean changes; +#endif +    Boolean allocated_string;	/* Have I allocated the +				   string in ascii_src->string? */ +    XawTextPosition length; 	/* length of file */ +    Piece *first_piece;		/* first piece of the text */ +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} AsciiSrcPart; + +/* instance record */ +typedef struct _AsciiSrcRec { +    ObjectPart    object; +    TextSrcPart   text_src; +    AsciiSrcPart  ascii_src; +} AsciiSrcRec; + +#endif /* _XawAsciiSrcP_h */  diff --git a/X11/Xaw/AsciiText.h b/X11/Xaw/AsciiText.h new file mode 100644 index 000000000..e6b4bc863 --- /dev/null +++ b/X11/Xaw/AsciiText.h @@ -0,0 +1,128 @@ +/* + * $Xorg: AsciiText.h,v 1.4 2001/02/09 02:03:42 xorgcvs Exp $ + */ + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/AsciiText.h,v 1.5 2001/01/17 19:42:25 dawes Exp $ */ + +/* + * AsciiText.h - Public header file for AsciiText Widget + * + * This Widget is intended to be used as a simple front end to the  + * text widget with an ascii source and ascii sink attached to it + * + * Date:    June 29, 1989 + * + * By:      Chris D. Peterson + *          MIT X Consortium  + *          kit@expo.lcs.mit.edu + */ +#ifndef _AsciiText_h +#define _AsciiText_h + +#include <X11/Xaw/Text.h> +#include <X11/Xaw/AsciiSrc.h> +#include <X11/Xaw/MultiSrc.h> + +/* Resources: + + Name		     Class		RepType		  Default Value + ----		     -----		-------		  ------------- + autoFill	     AutoFill		Boolean		  False + background	     Background		Pixel		  XtDefaultBackground + border		     BorderColor	Pixel		  XtDefaultForeground + borderWidth	     BorderWidth	Dimension	  1 + bottomMargin	     Margin		Position	  2 + cursor		     Cursor		Cursor		  xterm + destroyCallback     Callback		Pointer		  NULL + displayCaret	     Output		Boolean		  True + displayPosition     TextPosition	int		  0 + editType	     EditType		XawTextEditType	  XawtextRead + font		     Font		XFontStruct*	  Fixed + foreground	     Foreground		Pixel		  Black + height		     Height		Dimension	  font height + insertPosition	     TextPosition	int		  0 + international	     International		Boolean		false + leftMargin	     Margin		Position	  2 + mappedWhenManaged   MappedWhenManaged	Boolean		  True + resize		     Resize		XawTextResizeMode XawtextResizeNever + rightMargin	     Margin		Position	  4 + scrollHorizontal    Scroll		XawTextScrollMode XawtextScrollNever + scrollVertical	     Scroll		XawTextScrollMode XawtextScrollNever + selectTypes	     SelectTypes	Pointer		  pos/word/line/par/all + selection	     Selection		Pointer		  (empty selection) + sensitive	     Sensitive		Boolean		  True + sink		     TextSink		Widget		  (none) + source		     TextSource		Widget		  (none) + string		     String		String		  NULL + topMargin	     Margin		Position	  2 + width		     Width		Dimension	  100 + wrap		     Wrap		XawTextWrapMode	  XawtextWrapNever + x		     Position		Position	  0 + y		     Position		Position	  0 + + (see also *Src.h and *Sink.h) +*/ + +typedef struct _AsciiTextClassRec	*AsciiTextWidgetClass; +typedef struct _AsciiRec	        *AsciiWidget; + +extern WidgetClass asciiTextWidgetClass; + +/* + * Disk and String Emulation Info + */ +#ifdef ASCII_STRING +extern WidgetClass asciiStringWidgetClass; +#endif + +#ifdef ASCII_DISK +extern WidgetClass asciiDiskWidgetClass; +#endif + +#endif /* _AsciiText_h */ diff --git a/X11/Xaw/AsciiTextP.h b/X11/Xaw/AsciiTextP.h new file mode 100644 index 000000000..25e3eeeab --- /dev/null +++ b/X11/Xaw/AsciiTextP.h @@ -0,0 +1,169 @@ +/* + * $Xorg: AsciiTextP.h,v 1.4 2001/02/09 02:03:42 xorgcvs Exp $ + */ + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/AsciiTextP.h,v 1.8 2001/01/17 19:42:25 dawes Exp $ */ + +/* + * AsciiText.c - Private header file for AsciiText Widget. + * + * This Widget is intended to be used as a simple front end to the  + * text widget with an ascii source and ascii sink attached to it. + * + * Date:    June 29, 1989 + * + * By:      Chris D. Peterson + *          MIT X Consortium  + *          kit@expo.lcs.mit.edu + */ + +#ifndef _AsciiTextP_h +#define _AsciiTextP_h + +#include <X11/Xaw/TextP.h> +#include <X11/Xaw/AsciiText.h> +#include <X11/Xaw/AsciiSrc.h> +#include <X11/Xaw/MultiSrc.h> + +typedef struct { +  XtPointer extension; +} AsciiClassPart; + +typedef struct _AsciiTextClassRec { +    CoreClassPart	core_class; +    SimpleClassPart	simple_class; +    TextClassPart	text_class; +    AsciiClassPart	ascii_class; +} AsciiTextClassRec; + +extern AsciiTextClassRec asciiTextClassRec; + +typedef struct { +    int resource; +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} AsciiPart; + +typedef struct _AsciiRec { +    CorePart		core; +    SimplePart		simple; +    TextPart		text; +    AsciiPart		ascii; +} AsciiRec; + +/* + * Ascii String Emulation widget + */ +#ifdef ASCII_STRING +typedef struct { +  XtPointer extension; +} AsciiStringClassPart; + +typedef struct _AsciiStringClassRec { +    CoreClassPart	core_class; +    SimpleClassPart	simple_class; +    TextClassPart	text_class; +    AsciiClassPart	ascii_class; +    AsciiStringClassPart string_class; +} AsciiStringClassRec; + +extern AsciiStringClassRec asciiStringClassRec; + +typedef struct { +    int resource; +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} AsciiStringPart; + +typedef struct _AsciiStringRec { +    CorePart		core; +    SimplePart		simple; +    TextPart		text; +    AsciiPart           ascii; +    AsciiStringPart     ascii_str; +} AsciiStringRec; +#endif /* ASCII_STRING */ + +#ifdef ASCII_DISK +/* + * Ascii Disk Emulation widget + */ +typedef struct { +    XtPointer extension; +} AsciiDiskClassPart; + +typedef struct _AsciiDiskClassRec { +    CoreClassPart	core_class; +    SimpleClassPart	simple_class; +    TextClassPart	text_class; +    AsciiClassPart	ascii_class; +    AsciiDiskClassPart	disk_class; +} AsciiDiskClassRec; + +extern AsciiDiskClassRec asciiDiskClassRec; + +typedef struct { +    char resource; +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} AsciiDiskPart; + +typedef struct _AsciiDiskRec { +    CorePart		core; +    SimplePart		simple; +    TextPart		text; +    AsciiPart           ascii; +    AsciiDiskPart       ascii_disk; +} AsciiDiskRec; +#endif /* ASCII_DISK */ + +#endif /* _AsciiTextP_h */ diff --git a/X11/Xaw/Box.h b/X11/Xaw/Box.h new file mode 100644 index 000000000..17db281d6 --- /dev/null +++ b/X11/Xaw/Box.h @@ -0,0 +1,108 @@ +/* +* $Xorg: Box.h,v 1.4 2001/02/09 02:03:43 xorgcvs Exp $ +*/ + + +/*********************************************************** + +Copyright 1987, 1988, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/Box.h,v 1.7 2001/01/17 19:42:25 dawes Exp $ */ + +#ifndef _XawBox_h +#define _XawBox_h + +#include <X11/Xmu/Converters.h> + +/* + * Box Widget (subclass of CompositeClass) + */ + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + background	     Background		Pixel		XtDefaultBackground + border		     BorderColor	Pixel		XtDefaultForeground + borderWidth	     BorderWidth	Dimension	1 + destroyCallback     Callback		Pointer		NULL + displayList	     DisplayList	XawDisplayList*	NULL + hSpace 	     HSpace		Dimension	4 + height		     Height		Dimension	0 + mappedWhenManaged   MappedWhenManaged	Boolean		True + orientation	     Orientation	XtOrientation	vertical + vSpace 	     VSpace		Dimension	4 + width		     Width		Dimension	0 + x		     Position		Position	0 + y		     Position		Position	0 + +*/ + +#ifndef _XtStringDefs_h_ +#define XtNhSpace "hSpace" +#define XtNvSpace "vSpace" +#endif + +#ifndef OLDXAW +#ifndef XawNdisplayList +#define XawNdisplayList "displayList" +#endif +  +#ifndef XawCDisplayList +#define XawCDisplayList "DisplayList" +#endif + +#ifndef XawRDisplayList +#define XawRDisplayList "XawDisplayList" +#endif +#endif /* OLDXAW */ + +/* Class record constants */ +extern WidgetClass boxWidgetClass; + +typedef struct _BoxClassRec *BoxWidgetClass; +typedef struct _BoxRec      *BoxWidget; + +#endif /* _XawBox_h */ diff --git a/X11/Xaw/BoxP.h b/X11/Xaw/BoxP.h new file mode 100644 index 000000000..a64142e7d --- /dev/null +++ b/X11/Xaw/BoxP.h @@ -0,0 +1,103 @@ +/* +* $Xorg: BoxP.h,v 1.4 2001/02/09 02:03:43 xorgcvs Exp $ +*/ + + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/BoxP.h,v 1.10 2001/01/17 19:42:25 dawes Exp $ */ + +#ifndef _XawBoxP_h +#define _XawBoxP_h + +/* + * Box Widget Private Data + */ +#include <X11/Xaw/Box.h> +#include <X11/Xmu/Converters.h> +#include <X11/Xaw/XawInit.h> + +/* New fields for the Box widget class record */ +typedef struct { +    XtPointer extension; +} BoxClassPart; + +/* Full class record declaration */ +typedef struct _BoxClassRec { +    CoreClassPart	core_class; +    CompositeClassPart  composite_class; +    BoxClassPart	box_class; +} BoxClassRec; + +extern BoxClassRec boxClassRec; + +/* New fields for the Box widget record */ +typedef struct { +    /* resources */ +    Dimension h_space, v_space; +    XtOrientation orientation; + +    /* private state */ +    Dimension preferred_width, preferred_height; +    Dimension last_query_width, last_query_height; +    XtGeometryMask last_query_mode; +#ifndef OLDXAW +    XawDisplayList *display_list; +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} BoxPart; + +/* + * Full instance record declaration + */ +typedef struct _BoxRec { +    CorePart	    core; +    CompositePart   composite; +    BoxPart 	    box; +} BoxRec; + +#endif /* _XawBoxP_h */ diff --git a/X11/Xaw/Cardinals.h b/X11/Xaw/Cardinals.h new file mode 100644 index 000000000..a8b3dfc41 --- /dev/null +++ b/X11/Xaw/Cardinals.h @@ -0,0 +1,43 @@ +/* $Xorg: Cardinals.h,v 1.4 2001/02/09 02:03:43 xorgcvs Exp $ */ +/* + +Copyright 1985, 1986, 1987, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + +*/ + +#ifndef _Cardinals_h +#define _Cardinals_h + +#define ZERO	((Cardinal)0) +#define ONE	((Cardinal)1) +#define TWO	((Cardinal)2) +#define THREE	((Cardinal)3) +#define FOUR	((Cardinal)4) +#define FIVE	((Cardinal)5) +#define SIX	((Cardinal)6) +#define SEVEN	((Cardinal)7) +#define EIGHT	((Cardinal)8) +#define NINE	((Cardinal)9) +#define TEN	((Cardinal)10) + +#endif /* _Cardinals_h */ diff --git a/X11/Xaw/Command.h b/X11/Xaw/Command.h new file mode 100644 index 000000000..49eb99122 --- /dev/null +++ b/X11/Xaw/Command.h @@ -0,0 +1,119 @@ +/* $Xorg: Command.h,v 1.4 2001/02/09 02:03:43 xorgcvs Exp $ */ + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/Command.h,v 1.5 2001/01/17 19:42:26 dawes Exp $ */ + +#ifndef _XawCommand_h +#define _XawCommand_h + +#include <X11/Xaw/Label.h> + +/* Command widget resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + accelerators	     Accelerators	AcceleratorTable NULL + ancestorSensitive   AncestorSensitive	Boolean		True + background	     Background		Pixel		XtDefaultBackground + backgroundPixmap    Pixmap		Pixmap		XtUnspecifiedPixmap + bitmap		     Pixmap		Pixmap		None + borderColor	     BorderColor	Pixel		XtDefaultForeground + borderPixmap	     Pixmap		Pixmap		XtUnspecifiedPixmap + borderWidth	     BorderWidth	Dimension	1 + callback	     Callback		XtCallbackList	NULL + colormap	     Colormap		Colormap	parent's colormap + cornerRoundPercent  CornerRoundPercent	Dimension	25 + cursor		     Cursor		Cursor		None + cursorName	     Cursor		String		NULL + depth		     Depth		int		parent's depth + destroyCallback     Callback		XtCallbackList	NULL + displayList	     DisplayList	XawDisplayList*	NULL + encoding	     Encoding		UnsignedChar	XawTextEncoding8bit + font		     Font		XFontStruct*	XtDefaultFont + foreground	     Foreground		Pixel		XtDefaultForeground + height		     Height		Dimension	text height + highlightThickness  Thickness		Dimension	0 if shaped, else 2 + insensitiveBorder   Insensitive	Pixmap		Gray + internalHeight	     Height		Dimension	2 + internalWidth	     Width		Dimension	4 + justify	     Justify		XtJustify	XtJustifyCenter + label		     Label		String		NULL + leftBitmap	     LeftBitmap		Pixmap		None + mappedWhenManaged   MappedWhenManaged	Boolean		True + pointerColor	     Foreground		Pixel		XtDefaultForeground + pointerColorBackground Background	Pixel		XtDefaultBackground + resize		     Resize		Boolean		True + screen		     Screen		Screen		parent's Screen + sensitive	     Sensitive		Boolean		True + shapeStyle	     ShapeStyle		ShapeStyle	Rectangle + translations	     Translations	TranslationTable see doc or source + width		     Width		Dimension	text width + x		     Position		Position	0 + y		     Position		Position	0 + +*/ + +#define XtNhighlightThickness "highlightThickness" + +#define XtNshapeStyle "shapeStyle" +#define XtCShapeStyle "ShapeStyle" +#define XtRShapeStyle "ShapeStyle" +#define XtNcornerRoundPercent "cornerRoundPercent" +#define XtCCornerRoundPercent "CornerRoundPercent" + +#define XawShapeRectangle XmuShapeRectangle +#define XawShapeOval XmuShapeOval +#define XawShapeEllipse XmuShapeEllipse +#define XawShapeRoundedRectangle XmuShapeRoundedRectangle + +extern WidgetClass     commandWidgetClass; + +typedef struct _CommandClassRec   *CommandWidgetClass; +typedef struct _CommandRec        *CommandWidget; + +#endif /* _XawCommand_h */ diff --git a/X11/Xaw/CommandP.h b/X11/Xaw/CommandP.h new file mode 100644 index 000000000..bc639f825 --- /dev/null +++ b/X11/Xaw/CommandP.h @@ -0,0 +1,117 @@ +/* +* $Xorg: CommandP.h,v 1.4 2001/02/09 02:03:43 xorgcvs Exp $ +*/ + + +/*********************************************************** + +Copyright 1987, 1988, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/CommandP.h,v 1.7 2001/01/17 19:42:26 dawes Exp $ */ + +#ifndef _XawCommandP_h +#define _XawCommandP_h + +/* + * Command Widget Private Data + */ +#include <X11/Xaw/Command.h> +#include <X11/Xaw/LabelP.h> + +typedef enum { +    HighlightNone,		/* Do not highlight */ +    HighlightWhenUnset,		/* Highlight only when unset, this is +				   to preserve current command widget  +				   functionality */ +    HighlightAlways		/* Always highlight, lets the toggle widget +				   and other subclasses do the right thing */ +} XtCommandHighlight; + +/* New fields for the Command widget class record */ +typedef struct _CommandClass { +    XtPointer extension; +} CommandClassPart; + +/* Full class record declaration */ +typedef struct _CommandClassRec { +    CoreClassPart	core_class; +    SimpleClassPart	simple_class; +    LabelClassPart	label_class; +    CommandClassPart    command_class; +} CommandClassRec; + +extern CommandClassRec commandClassRec; + +/* New fields for the Command widget record */ +typedef struct { +    /* resources */ +    Dimension   highlight_thickness; +    XtCallbackList callbacks; + +    /* private state */ +    Pixmap      	gray_pixmap; +    GC          	normal_GC; +    GC          	inverse_GC; +    Boolean     	set; +    XtCommandHighlight	highlighted; + +    /* more resources */ +    int			shape_style;     +    Dimension		corner_round; + +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} CommandPart; + +/* Full widget declaration */ +typedef struct _CommandRec { +    CorePart         core; +    SimplePart	     simple; +    LabelPart	     label; +    CommandPart      command; +} CommandRec; + +#endif /* _XawCommandP_h */ diff --git a/X11/Xaw/Dialog.h b/X11/Xaw/Dialog.h new file mode 100644 index 000000000..96fd36d38 --- /dev/null +++ b/X11/Xaw/Dialog.h @@ -0,0 +1,101 @@ +/* $Xorg: Dialog.h,v 1.4 2001/02/09 02:03:43 xorgcvs Exp $ */ + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/Dialog.h,v 1.5 2001/01/17 19:42:26 dawes Exp $ */ + +#ifndef _XawDialog_h +#define _XawDialog_h + +#include <X11/Xaw/Form.h> + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + background	     Background		Pixel		XtDefaultBackground + borderColor	     BorderColor	Pixel		XtDefaultForeground + borderWidth	     BorderWidth	Dimension	1 + destroyCallback     Callback		Pointer		NULL + height		     Height		Dimension	computed at create + icon		     Icon		Pixmap		0 + label		     Label		String		NULL + mappedWhenManaged   MappedWhenManaged	Boolean		True + sensitive	     Sensitive		Boolean		True + value		     Value		String		NULL + width		     Width		Dimension	computed at create + x		     Position		Position	0 + y		     Position		Position	0 + +*/ + +#define XtCIcon "Icon" +#define XtNicon "icon" + +typedef struct _DialogClassRec	*DialogWidgetClass; +typedef struct _DialogRec	*DialogWidget; + +extern WidgetClass dialogWidgetClass; + +_XFUNCPROTOBEGIN + +void XawDialogAddButton +( + Widget			dialog, + _Xconst char		*name, + XtCallbackProc		function, + XtPointer		client_data + ); + +char *XawDialogGetValueString +( + Widget			w +); + +_XFUNCPROTOEND + +#endif /* _XawDialog_h */ diff --git a/X11/Xaw/DialogP.h b/X11/Xaw/DialogP.h new file mode 100644 index 000000000..fcc2240d7 --- /dev/null +++ b/X11/Xaw/DialogP.h @@ -0,0 +1,104 @@ +/* $Xorg: DialogP.h,v 1.4 2001/02/09 02:03:43 xorgcvs Exp $ */ + + +/*********************************************************** + +Copyright 1987, 1988, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/DialogP.h,v 1.8 2001/01/17 19:42:26 dawes Exp $ */ + +#ifndef _DialogP_h +#define _DialogP_h + +#include <X11/Xaw/Dialog.h> +#include <X11/Xaw/FormP.h> + +typedef struct { +    XtPointer extension; +} DialogClassPart; + +typedef struct _DialogClassRec { +    CoreClassPart	core_class; +    CompositeClassPart	composite_class; +    ConstraintClassPart	constraint_class; +    FormClassPart	form_class; +    DialogClassPart	dialog_class; +} DialogClassRec; + +extern DialogClassRec dialogClassRec; + +typedef struct _DialogPart { +    /* resources */ +    String	label;		/* description of the dialog	 */ +    String	value;		/* for the user response	 */ +    Pixmap	icon;		/* icon bitmap			 */ + +    /* private */ +    Widget	iconW;		/* widget to display the icon	 */ +    Widget	labelW;		/* widget to display description */ +    Widget	valueW;		/* user response TextWidget	 */ +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} DialogPart; + +typedef struct _DialogRec { +    CorePart		core; +    CompositePart	composite; +    ConstraintPart	constraint; +    FormPart		form; +    DialogPart		dialog; +} DialogRec; + +typedef struct { +    XtPointer extension; +} DialogConstraintsPart; + +typedef struct _DialogConstraintsRec { +    FormConstraintsPart	  form; +    DialogConstraintsPart dialog; +} DialogConstraintsRec, *DialogConstraints; + +#endif /* _DialogP_h */ diff --git a/X11/Xaw/Form.h b/X11/Xaw/Form.h new file mode 100644 index 000000000..9eb1ad7d6 --- /dev/null +++ b/X11/Xaw/Form.h @@ -0,0 +1,171 @@ +/* $Xorg: Form.h,v 1.5 2001/02/09 02:03:43 xorgcvs Exp $ */ + + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/Form.h,v 1.8 2001/01/17 19:42:26 dawes Exp $ */ + +#ifndef _XawForm_h +#define _XawForm_h + +#include <X11/Intrinsic.h> + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + background	     Background		Pixel		XtDefaultBackground + border		     BorderColor	Pixel		XtDefaultForeground + borderWidth	     BorderWidth	Dimension	1 + defaultDistance     Thickness		int		4 + destroyCallback     Callback		Pointer		NULL + displayList	     DisplayList	XawDisplayList*	NULL + height		     Height		Dimension	computed at realize + mappedWhenManaged   MappedWhenManaged	Boolean		True + sensitive	     Sensitive		Boolean		True + width		     Width		Dimension	computed at realize + x		     Position		Position	0 + y		     Position		Position	0 + +*/ + +/* Constraint parameters: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + bottom		     Edge		XtEdgeType	XtRubber + fromHoriz	     Widget		Widget		(left edge of form) + fromVert	     Widget		Widget		(top of form) + horizDistance	     Thickness		int		defaultDistance + left		     Edge		XtEdgeType	XtRubber + resizable	     Boolean		Boolean		False + right		     Edge		XtEdgeType	XtRubber + top		     Edge		XtEdgeType	XtRubber + vertDistance	     Thickness		int		defaultDistance + +*/ + + +#ifndef _XtStringDefs_h_ +#define XtNtop "top" +#define XtRWidget "Widget" +#endif + +#define XtNdefaultDistance "defaultDistance" +#define XtNbottom "bottom" +#define XtNleft "left" +#define XtNright "right" +#define XtNfromHoriz "fromHoriz" +#define XtNfromVert "fromVert" +#define XtNhorizDistance "horizDistance" +#define XtNvertDistance "vertDistance" +#define XtNresizable "resizable" + +#define XtCEdge "Edge" +#define XtCWidget "Widget" + +typedef enum { +    XawChainTop,		/* Keep this edge a constant distance from +				   the top of the form */ +    XawChainBottom,		/* Keep this edge a constant distance from +				   the bottom of the form */ +    XawChainLeft,		/* Keep this edge a constant distance from +				   the left of the form */ +    XawChainRight,		/* Keep this edge a constant distance from +				   the right of the form */ +    XawRubber			/* Keep this edge a proportional distance +				   from the edges of the form */ +} XawEdgeType; + +#define XtEdgeType XawEdgeType + +#define XtChainTop XawChainTop +#define XtChainBottom XawChainBottom +#define XtChainLeft XawChainLeft +#define XtChainRight XawChainRight +#define XtRubber XawRubber + +#define XtEchainLeft		"chainLeft" +#define XtEchainRight		"chainRight" +#define XtEchainTop		"chainTop" +#define XtEchainBottom		"chainBottom" +#define XtErubber		"rubber" + +#ifndef OLDXAW +#ifndef XawNdisplayList +#define XawNdisplayList "displayList" +#endif +  +#ifndef XawCDisplayList +#define XawCDisplayList "DisplayList" +#endif + +#ifndef XawRDisplayList +#define XawRDisplayList "XawDisplayList" +#endif +#endif + +typedef struct _FormClassRec	*FormWidgetClass; +typedef struct _FormRec		*FormWidget; + +extern WidgetClass formWidgetClass; + +_XFUNCPROTOBEGIN + +void XawFormDoLayout +( + Widget		w, +#if NeedWidePrototypes + Bool		do_layout +#else + Boolean	do_layout +#endif + ); + +_XFUNCPROTOEND +  +#endif /* _XawForm_h */ diff --git a/X11/Xaw/FormP.h b/X11/Xaw/FormP.h new file mode 100644 index 000000000..7203dda0c --- /dev/null +++ b/X11/Xaw/FormP.h @@ -0,0 +1,142 @@ +/* $Xorg: FormP.h,v 1.4 2001/02/09 02:03:43 xorgcvs Exp $ */ + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/FormP.h,v 1.13 2001/12/14 19:54:40 dawes Exp $ */ + +/* Form widget private definitions */ + +#ifndef _XawFormP_h +#define _XawFormP_h + +#include <X11/Xfuncproto.h> + +#include <X11/Xaw/Form.h> +#include <X11/Xaw/XawInit.h> + +_XFUNCPROTOBEGIN + +#define XtREdgeType "EdgeType" + +typedef enum { +    LayoutPending, +    LayoutInProgress, +    LayoutDone +} LayoutState; + +#define XtInheritLayout							\ +((Boolean (*)(FormWidget, unsigned int, unsigned int, Bool))_XtInherit) + +typedef struct { +    Boolean(*layout)(FormWidget, unsigned int, unsigned int, Bool); +#ifndef OLDXAW +    XtPointer extension; +#endif +} FormClassPart; + +typedef struct _FormClassRec { +    CoreClassPart	core_class; +    CompositeClassPart	composite_class; +    ConstraintClassPart	constraint_class; +    FormClassPart	form_class; +} FormClassRec; + +extern FormClassRec formClassRec; + +typedef struct _FormPart { +    /* resources */ +    int		default_spacing;    /* default distance between children */ + +    /* private */ +    Dimension	old_width, old_height; /* reference value for *_virtual  */ +    int		no_refigure;	    /* no re-layout while > 0		 */ +    Boolean	needs_relayout;	    /* next time no_refigure == 0	 */ +    Boolean	resize_in_layout;   /* should layout() do geom request?  */ +    Dimension	preferred_width, preferred_height; /* cached from layout */ +    Boolean	resize_is_no_op;    /* Causes resize to take not action  */ +#ifndef OLDXAW +    XawDisplayList *display_list; +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} FormPart; + +typedef struct _FormRec { +    CorePart		core; +    CompositePart	composite; +    ConstraintPart	constraint; +    FormPart		form; +} FormRec; + +typedef struct _FormConstraintsPart { +    /* resources */ +    XtEdgeType top, bottom, left, right;/* where to drag edge on resize */ +    int		dx;		/* desired horiz offset			*/ +    int		dy;		/* desired vertical offset		*/ +    Widget	horiz_base;	/* measure dx from here if non-null	*/ +    Widget	vert_base;	/* measure dy from here if non-null	*/ +    Boolean	allow_resize;	/* True if child may request resize	*/ + +    /* private */ +    short	virtual_width, virtual_height; +    Position	new_x, new_y; +    LayoutState	layout_state;	/* temporary layout state		*/ +    Boolean	deferred_resize;/* was resized while no_refigure is set */ +#ifndef OLDXAW +    short	virtual_x, virtual_y; +    XtPointer	pad[2];		/* leave some space for further optimizations +				 * in the form widget geometry +				 */ +#endif +} FormConstraintsPart; + +typedef struct _FormConstraintsRec { +    FormConstraintsPart	form; +} FormConstraintsRec, *FormConstraints; + +_XFUNCPROTOEND + +#endif /* _XawFormP_h */ diff --git a/X11/Xaw/Grip.h b/X11/Xaw/Grip.h new file mode 100644 index 000000000..1c19f6043 --- /dev/null +++ b/X11/Xaw/Grip.h @@ -0,0 +1,99 @@ +/* $Xorg: Grip.h,v 1.4 2001/02/09 02:03:43 xorgcvs Exp $ */ + +/*********************************************************** + +Copyright 1987, 1988, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/Grip.h,v 1.6 2001/01/17 19:42:26 dawes Exp $ */ + +/* + *  Grip.h - Public Definitions for Grip widget (used by VPane Widget) + * + */ + +#ifndef _XawGrip_h +#define _XawGrip_h + +#include <X11/Xaw/Simple.h> + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + foreground	     Foreground		Pixel		XtDefaultForeground + border		     BorderColor	Pixel		XtDefaultForeground + borderWidth	     BorderWidth	Dimension	0 + callback	     Callback		Pointer		GripAction + cursor		     Cursor		Cursor		None + cursorName	     Cursor		String		NULL + destroyCallback     Callback		Pointer		NULL + height		     Height		Dimension	8 + mappedWhenManaged   MappedWhenManaged	Boolean		True + pointerColor	     Foreground		Pixel		XtDefaultForeground + pointerColorBackground Background	Pixel		XtDefaultBackground + sensitive	     Sensitive		Boolean		True + width		     Width		Dimension	8 + x		     Position		Position	0 + y		     Position		Position	0 + +*/ + +#define XtNgripTranslations "gripTranslations" + +typedef struct _XawGripCallData { +    XEvent *event;			/* the event causing the GripAction */ +    String *params;			/* the TranslationTable params */ +    Cardinal num_params;		/* count of params */ +} XawGripCallDataRec, *XawGripCallData, +  GripCallDataRec, *GripCallData; /* supported for R4 compatibility */ + +/* Class Record Constant */ + +extern WidgetClass gripWidgetClass; + +typedef struct _GripClassRec *GripWidgetClass; +typedef struct _GripRec      *GripWidget; + +#endif /* _XawGrip_h */ diff --git a/X11/Xaw/GripP.h b/X11/Xaw/GripP.h new file mode 100644 index 000000000..f40a8d1e7 --- /dev/null +++ b/X11/Xaw/GripP.h @@ -0,0 +1,91 @@ +/* +* $Xorg: GripP.h,v 1.4 2001/02/09 02:03:43 xorgcvs Exp $ +*/ + + +/*********************************************************** + +Copyright 1987, 1988, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/GripP.h,v 1.7 2001/01/17 19:42:26 dawes Exp $ */ + +#ifndef _XawGripP_h +#define _XawGripP_h + +#include <X11/Xaw/Grip.h> +#include <X11/Xaw/SimpleP.h> + +#define DEFAULT_GRIP_SIZE 8 + +/* New fields for the Grip widget class */ +typedef struct { +    XtPointer extension; +} GripClassPart; + +/* Full Class record */ +typedef struct _GripClassRec { +    CoreClassPart    core_class; +    SimpleClassPart  simple_class; +    GripClassPart    grip_class; +} GripClassRec; + +extern GripClassRec gripClassRec; + +/* New fields for the Grip widget */ +typedef struct { +    XtCallbackList grip_action; +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} GripPart; + +/* Full instance record */ +typedef struct _GripRec { +    CorePart	core; +    SimplePart	simple; +    GripPart	grip; +} GripRec; + +#endif /* _XawGripP_h */ diff --git a/X11/Xaw/Label.h b/X11/Xaw/Label.h new file mode 100644 index 000000000..fc3942b01 --- /dev/null +++ b/X11/Xaw/Label.h @@ -0,0 +1,135 @@ +/* $Xorg: Label.h,v 1.4 2001/02/09 02:03:44 xorgcvs Exp $ */ + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/Label.h,v 1.6 2001/01/17 19:42:27 dawes Exp $ */ + +#ifndef _XawLabel_h +#define _XawLabel_h + +/* + * Label Widget + */ + +#include <X11/Xaw/Simple.h> + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + background	     Background		Pixel		XtDefaultBackground + bitmap		     Pixmap		Pixmap		None + border		     BorderColor	Pixel		XtDefaultForeground + borderWidth	     BorderWidth	Dimension	1 + cursor		     Cursor		Cursor		None + cursorName	     Cursor		String		NULL + destroyCallback     Callback		XtCallbackList	NULL + encoding	     Encoding		UnsignedChar	XawTextEncoding8bit + font		     Font		XFontStruct*	XtDefaultFont + foreground	     Foreground		Pixel		XtDefaultForeground + height		     Height		Dimension	text height + insensitiveBorder   Insensitive	Pixmap		Gray + internalHeight	     Height		Dimension	2 + internalWidth	     Width		Dimension	4 + justify	     Justify		XtJustify	XtJustifyCenter + label		     Label		String		NULL + leftBitmap	     LeftBitmap		Pixmap		None + mappedWhenManaged   MappedWhenManaged	Boolean		True + pointerColor	     Foreground		Pixel		XtDefaultForeground + pointerColorBackground Background	Pixel		XtDefaultBackground + resize		     Resize		Boolean		True + sensitive	     Sensitive		Boolean		True + width		     Width		Dimension	text width + x		     Position		Position	0 + y		     Position		Position	0 + +*/ + +#define XawTextEncoding8bit	0 +#define XawTextEncodingChar2b	1 + +#define XtNleftBitmap "leftBitmap" +#define XtCLeftBitmap "LeftBitmap" +#define XtNencoding "encoding" +#define XtCEncoding "Encoding" + +#ifndef XtNfontSet +#define XtNfontSet "fontSet" +#endif + +#ifndef XtCFontSet +#define XtCFontSet "FontSet" +#endif + +#ifndef _XtStringDefs_h_ +#define XtNbitmap "bitmap" +#define XtNforeground "foreground" +#define XtNlabel "label" +#define XtNfont "font" +#define XtNinternalWidth "internalWidth" +#define XtNinternalHeight "internalHeight" +#define XtNresize "resize" +#define XtCResize "Resize" +#define XtCBitmap "Bitmap" +#endif + +#ifndef XtNlabelX +#define XtNlabelX "labelX" +#endif + +#ifndef XtNlabelY +#define XtNlabelY "labelY" +#endif + +/* Class record constants */ + +extern WidgetClass labelWidgetClass; + +typedef struct _LabelClassRec *LabelWidgetClass; +typedef struct _LabelRec      *LabelWidget; + +#endif /* _XawLabel_h */ diff --git a/X11/Xaw/LabelP.h b/X11/Xaw/LabelP.h new file mode 100644 index 000000000..9f49fdd4f --- /dev/null +++ b/X11/Xaw/LabelP.h @@ -0,0 +1,121 @@ +/* +* $Xorg: LabelP.h,v 1.4 2001/02/09 02:03:44 xorgcvs Exp $ +*/ + + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/LabelP.h,v 1.7 2001/01/17 19:42:27 dawes Exp $ */ + +#ifndef _XawLabelP_h +#define _XawLabelP_h + +/* + * Label Widget Private Data + */ +#include <X11/Xaw/Label.h> +#include <X11/Xaw/SimpleP.h> + +/* New fields for the Label widget class record */ +typedef struct { +  XtPointer extension; +} LabelClassPart; + +/* Full class record declaration */ +typedef struct _LabelClassRec { +    CoreClassPart	core_class; +    SimpleClassPart	simple_class; +    LabelClassPart	label_class; +} LabelClassRec; + +extern LabelClassRec labelClassRec; + +/* New fields for the Label widget record */ +typedef struct { +    /* resources */ +    Pixel	foreground; +    XFontStruct	*font; +    XFontSet 	fontset; +    char	*label; +    XtJustify	justify; +    Dimension	internal_width; +    Dimension	internal_height; +    Pixmap	pixmap; +    Boolean	resize; +    unsigned char encoding; +    Pixmap	left_bitmap; + +    /* private state */ +    GC		normal_GC; +    GC          gray_GC; +    Pixmap	stipple; +    Position	label_x; +    Position	label_y; +    Dimension	label_width; +    Dimension	label_height; +    Dimension	label_len; +    int		lbm_y;			/* where in label */ +    unsigned int lbm_width, lbm_height;	 /* size of pixmap */ +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} LabelPart; + +/* + * Full instance record declaration + */ +typedef struct _LabelRec { +    CorePart	core; +    SimplePart	simple; +    LabelPart	label; +} LabelRec; + +#define LEFT_OFFSET(lw) ((lw)->label.left_bitmap \ +			 ? (lw)->label.lbm_width + (lw)->label.internal_width \ +			 : 0) + +#endif /* _XawLabelP_h */ diff --git a/X11/Xaw/List.h b/X11/Xaw/List.h new file mode 100644 index 000000000..2115eefd4 --- /dev/null +++ b/X11/Xaw/List.h @@ -0,0 +1,237 @@ +/* $Xorg: List.h,v 1.4 2001/02/09 02:03:44 xorgcvs Exp $ */ + +/* +Copyright 1989, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. +*/ +/* $XFree86: xc/lib/Xaw/List.h,v 1.7 2001/01/17 19:42:27 dawes Exp $ */ + +/*  This is the List widget, it is useful to display a list, without the + *  overhead of having a widget for each item in the list.  It allows  + *  the user to select an item in a list and notifies the application through + *  a callback function. + * + *	Created: 	8/13/88 + *	By:		Chris D. Peterson + *                      MIT X Consortium + */ + +#ifndef _XawList_h +#define _XawList_h + +#include <X11/Xaw/Simple.h> + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + background	     Background		Pixel		XtDefaultBackground + borderColor	     BorderColor	Pixel		XtDefaultForeground + borderWidth	     BorderWidth	Dimension	1 + callback            Callback           XtCallbackList  NULL       **6 + columnSpacing       Spacing            Dimension       6 + cursor		     Cursor		Cursor		left_ptr + cursorName	     Cursor		String		NULL + defaultColumns      Columns            int             2          **5 + destroyCallback     Callback		Pointer		NULL  + font		     Font		XFontStruct*	XtDefaultFont + forceColumns        Columns            Boolean         False      **5 + foreground	     Foreground		Pixel		XtDefaultForeground + height		     Height		Dimension	0          **1 + insensitiveBorder   Insensitive	Pixmap		Gray + internalHeight	     Height		Dimension	2 + internalWidth	     Width		Dimension	4 + list		     List		String*		NULL	   **2 + longest             Longest            int             0          **3  **4 + mappedWhenManaged   MappedWhenManaged	Boolean		True + numberStrings       NumberStrings      int             0          **4 + pasteBuffer         Boolean            Boolean         False + pointerColor	     Foreground		Pixel		XtDefaultForeground + pointerColorBackground Background	Pixel		XtDefaultBackground + rowSpacing          Spacing            Dimension       4 + sensitive	     Sensitive		Boolean		True + verticalList        Boolean            Boolean         False + width		     Width		Dimension	0          **1 + x		     Position		Position	0 + y		     Position		Position	0 + + **1 - If the Width or Height of the list widget is zero (0) then the value +       is set to the minimum size necessay to fit the entire list. + +       If both Width and Height are zero then they are adjusted to fit the +       entire list that is created width the number of default columns  +       specified in the defaultColumns resource. + + **2 - This is an array of strings the specify elements of the list. +       This resource must be specified.  +       (What good is a list widget without a list??  :-) + + **3 - Longest is the length of the widest string in pixels. + + **4 - If either of these values are zero (0) then the list widget calculates +       the correct value.  + +       (This allows you to make startup faster if you already have  +        this information calculated) + +       NOTE: If the numberStrings value is zero the list must  +             be NULL terminated. + + **5 - By setting the List.Columns resource you can force the application to +       have a given number of columns.	      +         + **6 - This returns the name and index of the item selected in an  +       XawListReturnStruct that is pointed to by the client_data +       in the CallbackProc. + +*/ + +/* + * Value returned when there are no highlighted objects + */ +#define XAW_LIST_NONE -1	 + +#define XtCList "List" +#define XtCSpacing "Spacing" +#define XtCColumns "Columns" +#define XtCLongest "Longest" +#define XtCNumberStrings "NumberStrings" + +#define XtNcursor "cursor" +#define XtNcolumnSpacing "columnSpacing" +#define XtNdefaultColumns "defaultColumns" +#define XtNforceColumns "forceColumns" +#define XtNlist "list" +#define XtNlongest "longest" +#define XtNnumberStrings "numberStrings" +#define XtNpasteBuffer "pasteBuffer" +#define XtNrowSpacing "rowSpacing" +#define XtNverticalList "verticalList" +#define XtNshowCurrent "showCurrent" +  +#ifndef XtNfontSet +#define XtNfontSet "fontSet" +#endif + +#ifndef XtCFontSet +#define XtCFontSet "FontSet" +#endif + +extern WidgetClass listWidgetClass; + +typedef struct _ListClassRec *ListWidgetClass; +typedef struct _ListRec      *ListWidget; + +/* list return structure */ +typedef struct _XawListReturnStruct { +  String string; +  int list_index; +} XawListReturnStruct; + +_XFUNCPROTOBEGIN + +/* + * Function: + *	XawListChange + * + * Parameters: + *	w	- list widget + *	list	- new list + *	nitems	- number of items in the list + *	longest - length (in Pixels) of the longest element in the list + *	resize	- if True the the list widget will try to resize itself + * + * Description: + *	Changes the list being used and shown. + * + * Note: + *	If nitems of longest are <= 0 then they will be caluculated + *	If nitems is <= 0 then the list needs to be NULL terminated + */ +void XawListChange +( + Widget			w, + String			*list, + int			nitems, + int			longest, +#if NeedWidePrototypes + int			resize +#else + Boolean		resize +#endif + ); + +/* + * Function: + *	XawListUnhighlight + * + * Parameters: + *	w - list widget + * + * Description: + *	Unlights the current highlighted element. + */ +void XawListUnhighlight +( + Widget			w + ); + +/* + * Function: + *	XawListHighlight + * + * Parameters: + *	w    - list widget + *	item - item to highlight + * + * Description: + *	Highlights the given item. + */ +void XawListHighlight +( + Widget			w, + int			item + ); + + +/* + * Function: + *	XawListShowCurrent + * + * Paraneters: + *	w - list widget + * + * Description: + *	Returns the currently highlighted object. + * + * Returns: + *	The info about the currently highlighted object + */ + +XawListReturnStruct *XawListShowCurrent +( + Widget			w + ); + +_XFUNCPROTOEND + +#endif /* _XawList_h */ diff --git a/X11/Xaw/ListP.h b/X11/Xaw/ListP.h new file mode 100644 index 000000000..2b8fc4639 --- /dev/null +++ b/X11/Xaw/ListP.h @@ -0,0 +1,118 @@ +/* $Xorg: ListP.h,v 1.4 2001/02/09 02:03:44 xorgcvs Exp $ */ + +/* +Copyright 1989, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. +*/ +/* $XFree86: xc/lib/Xaw/ListP.h,v 1.8 2001/01/17 19:42:27 dawes Exp $ */ + + +/*  + * This is a List widget.  It allows the user to select an item in a list and + * notifies the application through a callback function. + * + *	Created: 	8/13/88 + *	By:		Chris D. Peterson + *                      MIT - Project Athena + */ + +#ifndef _XawListP_h +#define _XawListP_h + +/* + * List Widget Private Data + */ +#include <X11/Xaw/SimpleP.h> +#include <X11/Xaw/List.h> + +#define NO_HIGHLIGHT            XAW_LIST_NONE +#define OUT_OF_RANGE            -1 +#define OKAY                     0 + +/* New fields for the List widget class */ +typedef struct { +    XtPointer extension; +} ListClassPart; + +/* Full class record */ +typedef struct _ListClassRec { +    CoreClassPart	core_class; +    SimpleClassPart	simple_class; +    ListClassPart	list_class; +} ListClassRec; + +extern ListClassRec listClassRec; + +/* New fields for the List widget */ +typedef struct { +    /* resources */ +    Pixel foreground; +    Dimension internal_width;		/* if not 3d, user sets directly */ +    Dimension internal_height; +    Dimension column_space;		/* half of *_space is add on +					   top/bot/left of */ +    Dimension row_space;		/* each item's text bounding box +					   half added to longest for right */ +    int default_cols; +    Boolean force_cols; +    Boolean paste; +    Boolean vertical_cols; +    int longest;			/* in pixels */ +    int nitems; +    XFontStruct	*font; +    XFontSet fontset;			/* Sheeran, Omron KK, 93/03/05 */ +    String *list;			/* for i18n, always in multibyte +					   format */ +    XtCallbackList callback; + +    /* private */ +    int is_highlighted;			/* set to the item currently +					   highlighted */ +    int highlight;			/* set to the item that should be +					   highlighted */ +    int col_width;			/* width of each column */ +    int row_height;			/* height of each row */ +    int nrows;				/* number of rows in the list */ +    int ncols;				/* number of columns in the list */ +    GC normgc; +    GC revgc; +    GC graygc; +    int freedoms;			/* flags for resizing height +					   and width */ +#ifndef OLDXAW +    int selected; +    Boolean show_current; +    char pad1[(sizeof(XtPointer) - sizeof(Boolean)) + +		 (sizeof(XtPointer) - sizeof(int))]; +    XtPointer pad2[2];	/* for future use and keep binary compatability */ +#endif +} ListPart; + + +/* Full instance record */ +typedef struct _ListRec { +    CorePart	core; +    SimplePart	simple; +    ListPart	list; +} ListRec; + +#endif /* _XawListP_h */ diff --git a/X11/Xaw/MenuButtoP.h b/X11/Xaw/MenuButtoP.h new file mode 100644 index 000000000..416fdf9b5 --- /dev/null +++ b/X11/Xaw/MenuButtoP.h @@ -0,0 +1,80 @@ +/* $Xorg: MenuButtoP.h,v 1.4 2001/02/09 02:03:44 xorgcvs Exp $  + * +Copyright 1989,1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + */ +/* $XFree86: xc/lib/Xaw/MenuButtoP.h,v 1.7 2001/01/17 19:42:27 dawes Exp $ */ + +/* + * MenuButtonP.h - Private Header file for MenuButton widget. + * + * This is the private header file for the Athena MenuButton widget. + * It is intended to provide an easy method of activating pulldown menus. + * + * Date:    May 2, 1989 + * + * By:      Chris D. Peterson + *          MIT X Consortium  + *          kit@expo.lcs.mit.edu + */ + +#ifndef _XawMenuButtonP_h +#define _XawMenuButtonP_h + +#include <X11/Xaw/MenuButton.h> +#include <X11/Xaw/CommandP.h> + +/* New fields for the MenuButton widget class */ +typedef struct _MenuButtonClass { +    XtPointer extension; +} MenuButtonClassPart; + +/* class record declaration */ +typedef struct _MenuButtonClassRec { +    CoreClassPart	    core_class; +    SimpleClassPart	    simple_class; +    LabelClassPart	    label_class; +    CommandClassPart	    command_class; +    MenuButtonClassPart	    menuButton_class; +} MenuButtonClassRec; + +extern MenuButtonClassRec menuButtonClassRec; + +/* New fields for the MenuButton widget */ +typedef struct { +    /* resources */ +    String menu_name; +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} MenuButtonPart; + +/* widget declaration */ +typedef struct _MenuButtonRec { +    CorePart         core; +    SimplePart	     simple; +    LabelPart	     label; +    CommandPart	     command; +    MenuButtonPart   menu_button; +} MenuButtonRec; + +#endif /* _XawMenuButtonP_h */ diff --git a/X11/Xaw/MenuButton.h b/X11/Xaw/MenuButton.h new file mode 100644 index 000000000..59744c26c --- /dev/null +++ b/X11/Xaw/MenuButton.h @@ -0,0 +1,91 @@ +/* + * $Xorg: MenuButton.h,v 1.4 2001/02/09 02:03:44 xorgcvs Exp $ + * +Copyright 1989, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + */ +/* $XFree86: xc/lib/Xaw/MenuButton.h,v 1.5 2001/01/17 19:42:27 dawes Exp $ */ + +/*********************************************************************** + * + * MenuButton Widget + * + ***********************************************************************/ + +/* + * MenuButton.h - Public Header file for MenuButton widget. + * + * This is the public header file for the Athena MenuButton widget. + * It is intended to provide an easy method of activating pulldown menus. + * + * Date:    May 2, 1989 + * + * By:      Chris D. Peterson + *          MIT X Consortium  + *          kit@expo.lcs.mit.edu + */ + +#ifndef _XawMenuButton_h +#define _XawMenuButton_h + +#include <X11/Xaw/Command.h> + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + background	     Background		Pixel		XtDefaultBackground + bitmap		     Pixmap		Pixmap		None + border		     BorderColor	Pixel		XtDefaultForeground + borderWidth	     BorderWidth	Dimension	1 + callback	     Callback		Pointer		NULL + cursor		     Cursor		Cursor		None + destroyCallback     Callback		Pointer		NULL + displayList	     DisplayList	XawDisplayList*	NULL + font		     Font		XFontStruct*	XtDefaultFont + foreground	     Foreground		Pixel		XtDefaultForeground + height		     Height		Dimension	text height + highlightThickness  Thickness		Dimension	2 + insensitiveBorder   Insensitive	Pixmap		Gray + internalHeight	     Height		Dimension	2 + internalWidth	     Width		Dimension	4 + justify	     Justify		XtJustify	XtJustifyCenter + label		     Label		String		NULL + mappedWhenManaged   MappedWhenManaged	Boolean		True + menuName            MenuName           String          "menu" + resize		     Resize		Boolean		True + sensitive	     Sensitive		Boolean		True + width		     Width		Dimension	text width + x		     Position		Position	0 + y		     Position		Position	0 + +*/ + +#define XtNmenuName "menuName" +#define XtCMenuName "MenuName" + +extern WidgetClass     menuButtonWidgetClass; + +typedef struct _MenuButtonClassRec   *MenuButtonWidgetClass; +typedef struct _MenuButtonRec        *MenuButtonWidget; + +#endif /* _XawMenuButton_h */ diff --git a/X11/Xaw/MultiSink.h b/X11/Xaw/MultiSink.h new file mode 100644 index 000000000..49ef1df2e --- /dev/null +++ b/X11/Xaw/MultiSink.h @@ -0,0 +1,113 @@ +/* $Xorg: MultiSink.h,v 1.4 2001/02/09 02:03:44 xorgcvs Exp $ */ + +/* + * Copyright 1991 by OMRON Corporation + * + * Permission to use, copy, modify, distribute, and sell this software and its + * documentation for any purpose is hereby granted without fee, provided that + * the above copyright notice appear in all copies and that both that + * copyright notice and this permission notice appear in supporting + * documentation, and that the name OMRON is not be used in + * advertising or publicity pertaining to distribution of the software without + * specific, written prior permission.  OMRON makes no representations + * about the suitability of this software for any purpose.  It is provided + * "as is" without express or implied warranty. + * + * OMRON DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, + * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO + * EVENT SHALL OMRON BE LIABLE FOR ANY SPECIAL, INDIRECT OR + * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, + * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER + * TORTUOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + * PERFORMANCE OF THIS SOFTWARE. + * + *      Author: Li Yuhong	 OMRON Corporation + */ + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/MultiSink.h,v 1.5 2001/01/17 19:42:27 dawes Exp $ */ + +#ifndef _XawMultiSink_h +#define _XawMultiSink_h + +/* + * MultiSink Object + */ + +#include <X11/Xaw/TextSink.h> + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + echo                Output             Boolean         True + displayNonprinting  Output             Boolean         True + fontSet             FontSet            XFontSet        XtDefaultFontSet + +*/ + +#define XtCOutput "Output" + +#define XtNdisplayNonprinting "displayNonprinting" +#define XtNecho "echo" + +#ifndef XtNfontSet		/*Sheeran, Omron KK, 93/03/04*/ +#define XtNfontSet		"fontSet" +#endif + +#ifndef XtCFontSet		/*Sheeran, Omron KK, 93/03/04*/ +#define XtCFontSet		"FontSet" +#endif + +/* Class record constants */ +extern WidgetClass multiSinkObjectClass; + +typedef struct _MultiSinkClassRec *MultiSinkObjectClass; +typedef struct _MultiSinkRec      *MultiSinkObject; + +#endif /* _XawMultiSink_h */ diff --git a/X11/Xaw/MultiSinkP.h b/X11/Xaw/MultiSinkP.h new file mode 100644 index 000000000..537e0b12a --- /dev/null +++ b/X11/Xaw/MultiSinkP.h @@ -0,0 +1,141 @@ +/* $Xorg: MultiSinkP.h,v 1.4 2001/02/09 02:03:44 xorgcvs Exp $ */ + +/* + * Copyright 1991 by OMRON Corporation + * + * Permission to use, copy, modify, distribute, and sell this software and its + * documentation for any purpose is hereby granted without fee, provided that + * the above copyright notice appear in all copies and that both that + * copyright notice and this permission notice appear in supporting + * documentation, and that the name OMRON not be used in + * advertising or publicity pertaining to distribution of the software without + * specific, written prior permission.  OMRON make no representations + * about the suitability of this software for any purpose.  It is provided + * "as is" without express or implied warranty. + * + * OMRON DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, + * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO + * EVENT SHALL OMRON BE LIABLE FOR ANY SPECIAL, INDIRECT OR + * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, + * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER + * TORTUOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + * PERFORMANCE OF THIS SOFTWARE. + * + *      Author: Li Yuhong	 OMRON Corporation + */ + + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/MultiSinkP.h,v 1.8 2001/01/17 19:42:28 dawes Exp $ */ + +#ifndef _XawMultiSinkP_h +#define _XawMultiSinkP_h + +#include <X11/Xfuncproto.h> + +/* + * MultiSink Object Private Data + */ +#include <X11/Xaw/TextSinkP.h>  +#include <X11/Xaw/MultiSink.h>  + +/* new fields for the MultiSink object class */ +typedef struct _MultiSinkClassPart { +    XtPointer extension; +} MultiSinkClassPart; + +/* Full class record declaration */ +typedef struct _MultiSinkClassRec { +    ObjectClassPart     object_class; +    TextSinkClassPart	text_sink_class; +    MultiSinkClassPart	multi_sink_class; +} MultiSinkClassRec; + +extern MultiSinkClassRec multiSinkClassRec; + +/* New fields for the MultiSink object record */ +typedef struct { +    /* resources */ +    Boolean echo; +    Boolean display_nonprinting; + +    /* private */ +    GC normgc, invgc, xorgc; +    XawTextPosition cursor_position; +    XawTextInsertState laststate; +    short cursor_x, cursor_y;		/* Cursor Location */ +    XFontSet fontset;			/* font set to draw */ +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} MultiSinkPart; + +/* Full instance record declaration */ +typedef struct _MultiSinkRec { +    ObjectPart          object; +    TextSinkPart	text_sink; +    MultiSinkPart	multi_sink; +} MultiSinkRec; + +/* + * Semi-private functions + * for use by other Xaw modules only + */ +_XFUNCPROTOBEGIN + +void _XawMultiSinkPosToXY +( + Widget			w, + XawTextPosition	pos, + Position		*x, + Position		*y +); + +_XFUNCPROTOEND + +#endif /* _XawMultiSinkP_h */ diff --git a/X11/Xaw/MultiSrc.h b/X11/Xaw/MultiSrc.h new file mode 100644 index 000000000..00c27f6c7 --- /dev/null +++ b/X11/Xaw/MultiSrc.h @@ -0,0 +1,133 @@ +/* $Xorg: MultiSrc.h,v 1.4 2001/02/09 02:03:44 xorgcvs Exp $ */ + +/* + * Copyright 1991 by OMRON Corporation + * + * Permission to use, copy, modify, distribute, and sell this software and its + * documentation for any purpose is hereby granted without fee, provided that + * the above copyright notice appear in all copies and that both that + * copyright notice and this permission notice appear in supporting + * documentation, and that the name OMRON not be used in + * advertising or publicity pertaining to distribution of the software without + * specific, written prior permission.  OMRON makes no representations + * about the suitability of this software for any purpose.  It is provided + * "as is" without express or implied warranty. + * + * OMRON DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, + * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO + * EVENT SHALL OMRON BE LIABLE FOR ANY SPECIAL, INDIRECT OR + * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, + * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER + * TORTUOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + * PERFORMANCE OF THIS SOFTWARE. + * + *      Author: Li Yuhong	 OMRON Corporation + */ + +/* + +Copyright 1989, 1991, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + +*/ +/* $XFree86: xc/lib/Xaw/MultiSrc.h,v 1.6 2001/01/17 19:42:28 dawes Exp $ */ + +/* + * This file was modified from AsciiSrc.h. + * + * By Li Yuhong, Sept. 18, 1990 + */ + +#ifndef _XawMultiSrc_h +#define _XawMultiSrc_h + +#include <X11/Xaw/TextSrc.h> + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + dataCompression     DataCompression	Boolean		True + length		     Length		int		(internal) + pieceSize	     PieceSize		int		BUFSIZ + string		     String		String		NULL + type		     Type		XawAsciiType	XawAsciiString + useStringInPlace    UseStringInPlace	Boolean		False + +*/ +  +extern WidgetClass multiSrcObjectClass; + +typedef struct _MultiSrcClassRec *MultiSrcObjectClass; +typedef struct _MultiSrcRec      *MultiSrcObject; + +#define MultiSourceObjectClass MultiSrcObjectClass +#define MultiSourceObject      MultiSrcObject + +#define XtCDataCompression "DataCompression" +#define XtCPieceSize "PieceSize" +#define XtCType "Type" +#define XtCUseStringInPlace "UseStringInPlace" + +#define XtNdataCompression "dataCompression" +#define XtNpieceSize "pieceSize" +#define XtNtype "type" +#define XtNuseStringInPlace "useStringInPlace" + +#define XtRMultiType "MultiType" + +#define XtEstring "string" +#define XtEfile "file" + +/************************************************************ + * + * THESE ROUTINES ARE NOT PUBLIC: Source should call + * + * the AsciiSrc API which currently forwards requests here. + * + * future versions (like theres going to be an R7 Xaw!) may + * + * eliminate this file or at least these functions entirely. + * + ************************************************************/ + +_XFUNCPROTOBEGIN + +void XawMultiSourceFreeString +( + Widget			w + ); + +Bool _XawMultiSave +( + Widget			w +); + +Bool _XawMultiSaveAsFile +( + Widget			w, + _Xconst char		*name + ); + +_XFUNCPROTOEND + +#endif /* _XawMultiSrc_h  */ diff --git a/X11/Xaw/MultiSrcP.h b/X11/Xaw/MultiSrcP.h new file mode 100644 index 000000000..49f7abc3a --- /dev/null +++ b/X11/Xaw/MultiSrcP.h @@ -0,0 +1,182 @@ +/* $Xorg: MultiSrcP.h,v 1.4 2001/02/09 02:03:45 xorgcvs Exp $ */ + +/* + * Copyright 1991 by OMRON Corporation + * + * Permission to use, copy, modify, distribute, and sell this software and its + * documentation for any purpose is hereby granted without fee, provided that + * the above copyright notice appear in all copies and that both that + * copyright notice and this permission notice appear in supporting + * documentation, and that the name OMRON not be used in + * advertising or publicity pertaining to distribution of the software without + * specific, written prior permission.  OMRON make no representations + * about the suitability of this software for any purpose.  It is provided + * "as is" without express or implied warranty. + * + * OMRON DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, + * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO + * EVENT SHALL OMRON BE LIABLE FOR ANY SPECIAL, INDIRECT OR + * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, + * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER + * TORTUOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + * PERFORMANCE OF THIS SOFTWARE. + * + *      Author: Li Yuhong	 OMRON Corporation + */ + + +/*********************************************************** + +Copyright 1987, 1988, 1991, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/MultiSrcP.h,v 1.8 2001/01/17 19:42:28 dawes Exp $ */ + +/* + * MultiSrcP.h - Private Header for Multi Text Source. + * + * This is the private header file for the Multi Text Source. + * It is intended to be used with the Text widget, the simplest way to use + * this text source is to use the MultiText Object. + * + * Date:    June 29, 1989 + * + * By:      Chris D. Peterson + *          MIT X Consortium  + *          kit@expo.lcs.mit.edu + */ + +/*  + * This file was changed from AsciiSrcP.h. + * + * By Li Yuhong, Sept. 18, 1990 + */ + +#ifndef _XawMultiSrcP_h +#define _XawMultiSrcP_h + +#include <X11/Xfuncproto.h> +#include <X11/Xaw/TextSrcP.h> +#include <X11/Xaw/MultiSrc.h> + +#ifdef L_tmpnam +#define TMPSIZ L_tmpnam +#else +#ifdef PATH_MAX +#define TMPSIZ PATH_MAX +#else +#define TMPSIZ 1024		/* bytes to allocate for tmpnam */ +#endif +#endif + +typedef struct _MultiPiece {	/* Piece of the text file of BUFSIZ allocated  +				   characters */ +    wchar_t* text;		/* The text in this buffer */ +    XawTextPosition used;	/* The number of characters of this buffer  +				   that have been used */ +    struct _MultiPiece *prev, *next;	/* linked list pointers */ +} MultiPiece; + +/* New fields for the MultiSrc object class */ +typedef struct _MultiSrcClassPart { +    XtPointer extension; +} MultiSrcClassPart; + +/* Full class record */ +typedef struct _MultiSrcClassRec { +    ObjectClassPart     object_class; +    TextSrcClassPart	text_src_class; +    MultiSrcClassPart	multi_src_class; +} MultiSrcClassRec; + +extern MultiSrcClassRec multiSrcClassRec; + +/* New fields for the MultiSrc object */ +typedef struct _MultiSrcPart { +    /* resources */ +    XIC ic;			/* for X Input Method */ +    XtPointer string;		/* either the string, or the file name, depend- +				   ing upon the `type'.  ALWAYS IN MB FORMAT */ +    XawAsciiType type;		/* either string or disk */ +    XawTextPosition piece_size;	/* Size of text buffer for each piece */ +    Boolean data_compression;	/* compress to minimum memory automatically +				   on save? */ +#ifdef OLDXAW +    XtCallbackList callback; +#endif +    Boolean use_string_in_place;/* Use the string passed in place */ +    int multi_length;		/* length field for multi string emulation */ + +    /* private */ + +    Boolean is_tempfile;	  /* Is this a temporary file? */ +#ifdef OLDXAW +    Boolean changes; +#endif +    Boolean allocated_string;	/* Have I allocated the +				   string in multi_src->string? */ +    XawTextPosition length; 	/* length of file - IN CHARACTERS, NOT BYTES */ +    MultiPiece *first_piece;	/* first piece of the text */ +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} MultiSrcPart; + +/* Full instance record */ +typedef struct _MultiSrcRec { +  ObjectPart    object; +  TextSrcPart	text_src; +  MultiSrcPart	multi_src; +} MultiSrcRec; + +_XFUNCPROTOBEGIN + +void _XawMultiSourceFreeString +( + Widget		w + ); + +_XFUNCPROTOEND + +#endif /* _XawMultiSrcP_h */ diff --git a/X11/Xaw/Paned.h b/X11/Xaw/Paned.h new file mode 100644 index 000000000..aaa532030 --- /dev/null +++ b/X11/Xaw/Paned.h @@ -0,0 +1,264 @@ +/* +* $Xorg: Paned.h,v 1.5 2001/02/09 02:03:45 xorgcvs Exp $ +*/ + + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/Paned.h,v 1.6 2001/01/17 19:42:28 dawes Exp $ */ + +/* + * Paned.h - Paned Composite Widget's public header file. + * + * Updated and significantly modifided from the Athena VPaned Widget. + * + * Date:    March 1, 1989 + * + * By:      Chris D. Peterson + *          MIT X Consortium + *          kit@expo.lcs.mit.edu + */ + +#ifndef _XawPaned_h +#define _XawPaned_h + +#include <X11/Intrinsic.h> +#include <X11/Xmu/Converters.h> + +/* RESOURCES: + + Name		         Class		   RepType	    Default Value + ----		         -----		   -------	    ------------- + background	         Background	   Pixel	    XtDefaultBackground + betweenCursor	         Cursor	           Cursor	    ** + border		         BorderColor       Pixel	    XtDefaultForeground + borderWidth	         BorderWidth       Dimension	    1 + cursor		         Cursor	           Cursor	    None + destroyCallback         Callback	   Pointer	    NULL + height		         Height	           Dimension	    0 + gripIndent	         GripIndent	   Position	    16 + gripCursor	         Cursor	           Cursor	    ** + horizontalGripCursol    Cursor	           Cursor	    sb_h_double_arrow + horizontalBetweencursor Cursor	           Cursor	    sb_up_arrow + internalBorderColor     BorderColor	   Pixel	    XtDefaultForeground + internalBorderWidth     BorderWidth	   Position	    1 + leftCursor	         Cursor	           Cursor	    sb_left_arrow + lowerCursor	         Cursor	           Cursor	    sb_down_arrow + mappedWhenManaged       MappedWhenManaged Boolean	    True + orientation             Orientation       XtOrientation    XtorientVertical + refigureMode	         Boolean	   Boolean	    On + rightCursor	         Cursor	           Cursor           sb_right_arrow + sensitive	         Sensitive	   Boolean	    True + upperCursor	         Cursor	           Cursor	    sb_up_arrow + verticalBetweenCursor   Cursor	           Cursor           sb_left_arrow + verticalGripCursor      Cursor	           Cursor           sb_v_double_arrow + width		         Width	           Dimension	    0 + x		         Position	   Position	    0 + y		         Position	   Position    	    0 + +** These resources now are set to the vertical or horizontal cursor +   depending upon orientation, by default.  If a value is specified here +   then that cursor will be used reguardless of orientation. + + +CONSTRAINT RESOURCES: + + Name		      Class		RepType		Default Value + ----		      -----		-------		------------- + allowResize	      Boolean	        Boolean         False + max		      Max	        Dimension	unlimited + min		      Min		Dimension	Grip Size + preferredPaneSize    PreferredPaneSize Dimension	PANED_ASK_CHILD + resizeToPreferred    Boolean		Boolean	 	False + showGrip	      ShowGrip		Boolean		True + skipAdjust	      Boolean	        Boolean         False + +*/ + +#define PANED_ASK_CHILD 0 +#define PANED_GRIP_SIZE 0 + +#define XtNallowResize "allowResize" +#define XtNbetweenCursor "betweenCursor" +#define XtNverticalBetweenCursor "verticalBetweenCursor" +#define XtNhorizontalBetweenCursor "horizontalBetweenCursor" +#define XtNgripCursor "gripCursor" +#define XtNgripIndent "gripIndent" +#define XtNhorizontalGripCursor "horizontalGripCursor" +#define XtNinternalBorderColor "internalBorderColor" +#define XtNinternalBorderWidth "internalBorderWidth" +#define XtNleftCursor "leftCursor" +#define XtNlowerCursor "lowerCursor" +#define XtNrefigureMode "refigureMode" +#define XtNposition "position" +#define XtNmin "min" +#define XtNmax "max" +#define XtNpreferredPaneSize "preferredPaneSize" +#define XtNresizeToPreferred "resizeToPreferred" +#define XtNrightCursor "rightCursor" +#define XtNshowGrip "showGrip" +#define XtNskipAdjust "skipAdjust" +#define XtNupperCursor "upperCursor" +#define XtNverticalGripCursor "verticalGripCursor" + +#define XtCGripIndent "GripIndent" +#define XtCMin "Min" +#define XtCMax "Max" +#define XtCPreferredPaneSize "PreferredPaneSize" +#define XtCShowGrip "ShowGrip" + +/* Class record constant */ +extern WidgetClass panedWidgetClass; + +typedef struct _PanedClassRec	*PanedWidgetClass; +typedef struct _PanedRec	*PanedWidget; + +/* + *  Public Procedures  + */ + +_XFUNCPROTOBEGIN + +/* + * Function: + *	XawPanedSetMinMax + * + * Parameters: + *	widget - widget that is a child of the Paned widget + *	min    - new min and max size for the pane + *	max    - "" + * + * Description: + *	Sets the min and max size for a pane. + */ +void XawPanedSetMinMax +( + Widget			w, + int			min, + int			max + ); + +/* + * Function: + *	XawPanedGetMinMax + * + * Parameters: + *	widget - widget that is a child of the Paned widget + *	min    - return the current min and max size for the pane + *	max    - "" + * + * Description: + *	Gets the min and max size for a pane. + */ +void XawPanedGetMinMax +( + Widget			w, + int			*min_return, + int			*max_return + ); + +/* + * Function: + *	XawPanedSetRefigureMode + * + * Parameters: + *	w    - paned widget + *	mode - if False then inhibit refigure + * + * Description: + *	  Allows a flag to be set the will inhibit  the paned widgets + *	relayout routine. + */ +void XawPanedSetRefigureMode +( + Widget			w, +#if NeedWidePrototypes + int			mode +#else + Boolean		mode +#endif + ); + +/* + * Function: + *	XawPanedGetNumSub + * + * Parameters: + *	w - paned widget + * + * Returns: + *	Number of panes in the paned widget. + */ +int XawPanedGetNumSub +( + Widget			w + ); + +/* + * Function: + *	XawPanedAllowResize + * + * Parameters: + *	widget - child of the paned widget + * + * Description: + *	  Allows a flag to be set that determines if the paned widget will + *	allow geometry requests from this child + */ +void XawPanedAllowResize +( + Widget			w, +#if NeedWidePrototypes + int			allow_resize +#else + Boolean		allow_resize +#endif + ); + +_XFUNCPROTOEND + +#endif /* _XawPaned_h */ diff --git a/X11/Xaw/PanedP.h b/X11/Xaw/PanedP.h new file mode 100644 index 000000000..a94b0f34d --- /dev/null +++ b/X11/Xaw/PanedP.h @@ -0,0 +1,180 @@ +/*********************************************************** + +  $Xorg: PanedP.h,v 1.4 2001/02/09 02:03:45 xorgcvs Exp $ + + +Copyright 1987, 1988, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/PanedP.h,v 1.7 2001/01/17 19:42:28 dawes Exp $ */ + +/* + * Updated and significantly modified from the Athena VPaned Widget. + * + * Date:    March 1, 1989 + * + * By:      Chris D. Peterson + *          MIT X Consortium + *          kit@expo.lcs.mit.edu + */ + +#ifndef _XawPanedP_h +#define _XawPanedP_h + +#include <X11/Xaw/Paned.h> + +/* New fields for the Paned widget class record */ +typedef struct _PanedClassPart { +    XtPointer extension; +} PanedClassPart; + +/* Full Class record declaration */ +typedef struct _PanedClassRec { +    CoreClassPart       core_class; +    CompositeClassPart  composite_class; +    ConstraintClassPart constraint_class; +    PanedClassPart      paned_class; +} PanedClassRec; + +extern PanedClassRec panedClassRec; + +/* Paned constraint record */ +typedef struct _PanedConstraintsPart { +    /* Resources */ +    Dimension	min;		/* Minimum height */ +    Dimension	max;		/* Maximum height */ +    Boolean	allow_resize;	/* True if child resize requests are ok */ +    Boolean	show_grip;	/* True if child will have grip below it, +				   when it is not the bottom pane */ +    Boolean skip_adjust;	/* True if child's height should not be +				   changed without explicit user action */ +    int		position;	/* position location in Paned (relative to +				   other children) ** NIY ** */ +    Dimension   preferred_size;	/* The Preferred size of the pane. +				   If this is zero then ask child for size*/ +    Boolean     resize_to_pref;	/* resize this pane to its preferred size +				   on a resize or change managed after  +				   realize */ + +    /* Private state */ +    Position	delta;		/* Desired Location */ +    Position	olddelta;	/* The last value of dy */ +    Boolean     paned_adjusted_me; /* Has the vpaned adjusted this widget w/o +				     user interaction to make things fit? */ +    Dimension	wp_size;	/* widget's preferred size */  +    int size;			/* the size the widget will actually get */ +    Widget	grip;		/* The grip for this child */ +} PanedConstraintsPart, *Pane; + +typedef struct _PanedConstraintsRec { +    PanedConstraintsPart paned; +} PanedConstraintsRec, *PanedConstraints; + +/* + * The Pane Stack Structure + */ +typedef struct _PaneStack { +    struct _PaneStack *next;	/* The next element on the stack */ +    Pane pane;			/* The pane in this element on the stack */ +    int start_size;		/* The size of this element when it +				   was pushed onto the stack */ +} PaneStack; + +/* New Fields for the Paned widget record */ +typedef struct { +    /* resources */ +    Position    grip_indent;               /* Location of grips (offset	 +					      from right margin) */ +    Boolean     refiguremode;              /* Whether to refigure changes  +					      right now */ +    XtTranslations grip_translations;      /* grip translation table */ +    Pixel	internal_bp;		/* color of internal borders */ +    Dimension	internal_bw;		/* internal border width */ +    XtOrientation orientation;		/* Orientation of paned widget */ + +    Cursor	cursor;		           /* Cursor for paned window */ +    Cursor	grip_cursor;               /* inactive grip cursor */ +    Cursor	v_grip_cursor;             /* inactive vert grip cursor */ +    Cursor	h_grip_cursor;             /* inactive horiz grip cursor */ +    Cursor	adjust_this_cursor;        /* active grip cursor: T */ +    Cursor	v_adjust_this_cursor;      /* active vert grip cursor: T */ +    Cursor	h_adjust_this_cursor;      /* active horiz grip cursor: T */ + +    /* vertical */ +    Cursor	adjust_upper_cursor;      /* active grip cursor: U */ +    Cursor	adjust_lower_cursor;      /* active grip cursor: D */ + +    /* horizontal */ +    Cursor	adjust_left_cursor;        /* active grip cursor: U */ +    Cursor	adjust_right_cursor;       /* active grip cursor: D */ + +    /* private */ +    Boolean	recursively_called;        /* for ChangeManaged */ +    Boolean	resize_children_to_pref;   /* override constrain resources +					      and resize all children to +					   preferred size */ +    int         start_loc;	           /* mouse origin when adjusting */ +    Widget      whichadd;                  /* Which pane to add changes to */ +    Widget      whichsub;                  /* Which pane to sub changes from */ +    GC          normgc;                    /* GC to use when drawing borders */ +    GC          invgc;                     /* GC to use when erasing borders */ +    GC		flipgc;			   /* GC to use when animating borders */ +    int		num_panes;                 /* count of managed panes */ +    PaneStack	*stack;			   /* The pane stack for this widget */ +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} PanedPart; + +/* + * Full instance record declaration + */ +typedef struct _PanedRec { +    CorePart	   core; +    CompositePart  composite; +    ConstraintPart constraint; +    PanedPart	   paned; +} PanedRec; + +#endif /* _XawPanedP_h */ diff --git a/X11/Xaw/Panner.h b/X11/Xaw/Panner.h new file mode 100644 index 000000000..594e2eb47 --- /dev/null +++ b/X11/Xaw/Panner.h @@ -0,0 +1,107 @@ +/* + * $Xorg: Panner.h,v 1.5 2001/02/09 02:03:45 xorgcvs Exp $ + * +Copyright 1989, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + * + * Author:  Jim Fulton, MIT X Consortium + */ +/* $XFree86: xc/lib/Xaw/Panner.h,v 1.5 2001/01/17 19:42:28 dawes Exp $ */ + +#ifndef _XawPanner_h +#define _XawPanner_h + +#include <X11/Intrinsic.h> +#include <X11/Xaw/Reports.h> + +/***************************************************************************** + *  + * Panner Widget (subclass of Simple) + *  + * This widget is used to represent navigation in a 2d coordinate system + *  + * Resources: + *  + *  Name		Class		Type		Default + *  ----		-----		----		------- + *  + *  allowOff		AllowOff	Boolean		FALSE + *  background		Background	Pixel		XtDefaultBackground + *  backgroundStipple	BackgroundStipple	String	NULL + *  canvasWidth		CanvasWidth	Dimension	0 + *  canvasHeight	CanvasHeight	Dimension	0 + *  defaultScale	DefaultScale	Dimension	8 percent + *  foreground		Foreground	Pixel		XtDefaultBackground + *  internalSpace	InternalSpace	Dimension	4 + *  lineWidth		LineWidth	Dimension	0 + *  reportCallback	ReportCallback	XtCallbackList	NULL + *  resize		Resize		Boolean		TRUE + *  rubberBand		RubberBand	Boolean		FALSE + *  shadowColor		ShadowColor	Pixel		XtDefaultForeground + *  shadowThickness	ShadowThickness	Dimension	2 + *  sliderX		SliderX		Position	0 + *  sliderY		SliderY		Position	0 + *  sliderWidth		SliderWidth	Dimension	0 + *  sliderHeight	SliderHeight	Dimension	0 + *  + *****************************************************************************/ + +#ifndef _XtStringDefs_h_ +#define XtNresize "resize" +#define XtCResize "Resize" +#endif + +#define XtNallowOff "allowOff" +#define XtCAllowOff "AllowOff" +#define XtNbackgroundStipple "backgroundStipple" +#define XtCBackgroundStipple "BackgroundStipple" +#define XtNdefaultScale "defaultScale" +#define XtCDefaultScale "DefaultScale" +#define XtNcanvasWidth "canvasWidth" +#define XtCCanvasWidth "CanvasWidth" +#define XtNcanvasHeight "canvasHeight" +#define XtCCanvasHeight "CanvasHeight" +#define XtNinternalSpace "internalSpace" +#define XtCInternalSpace "InternalSpace" +#define XtNlineWidth "lineWidth" +#define XtCLineWidth "LineWidth" +#define XtNrubberBand "rubberBand" +#define XtCRubberBand "RubberBand" +#define XtNshadowThickness "shadowThickness" +#define XtCShadowThickness "ShadowThickness" +#define XtNshadowColor "shadowColor" +#define XtCShadowColor "ShadowColor" +#define XtNsliderX "sliderX" +#define XtCSliderX "SliderX" +#define XtNsliderY "sliderY" +#define XtCSliderY "SliderY" +#define XtNsliderWidth "sliderWidth" +#define XtCSliderWidth "SliderWidth" +#define XtNsliderHeight "sliderHeight" +#define XtCSliderHeight "SliderHeight" + +extern WidgetClass pannerWidgetClass; + +typedef struct _PannerClassRec *PannerWidgetClass; +typedef struct _PannerRec      *PannerWidget; + +#endif /* _XawPanner_h */ diff --git a/X11/Xaw/PannerP.h b/X11/Xaw/PannerP.h new file mode 100644 index 000000000..aacf2e26c --- /dev/null +++ b/X11/Xaw/PannerP.h @@ -0,0 +1,108 @@ +/* + * $Xorg: PannerP.h,v 1.4 2001/02/09 02:03:45 xorgcvs Exp $ + * +Copyright 1989, 1998 The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + * + * Author:  Jim Fulton, MIT X Consortium + */ +/* $XFree86: xc/lib/Xaw/PannerP.h,v 1.7 2001/01/17 19:42:29 dawes Exp $ */ + +#ifndef _XawPannerP_h +#define _XawPannerP_h + +#include <X11/Xaw/Panner.h> +#include <X11/Xaw/SimpleP.h> + +/* new fields in widget class */ +typedef struct { +    XtPointer extension; +} PannerClassPart; + +/* Panner widget class */ +typedef struct _PannerClassRec { +    CoreClassPart core_class; +    SimpleClassPart simple_class; +    PannerClassPart panner_class; +} PannerClassRec; + +/* new fields in widget */ +typedef struct { +    /* resources */ +    XtCallbackList report_callbacks;	/* callback/Callback */ +    Boolean allow_off;			/* allowOff/AllowOff */ +    Boolean resize_to_pref;		/* resizeToPreferred/Boolean */ +    Pixel foreground;			/* foreground/Foreground */ +    Pixel shadow_color;			/* shadowColor/ShadowColor */ +    Dimension shadow_thickness;		/* shadowThickness/ShadowThickness */ +    Dimension default_scale;		/* defaultScale/DefaultScale */ +    Dimension line_width;		/* lineWidth/LineWidth */ +    Dimension canvas_width;		/* canvasWidth/CanvasWidth */ +    Dimension canvas_height;		/* canvasHeight/CanvasHeight */ +    Position slider_x;			/* sliderX/SliderX */ +    Position slider_y;			/* sliderY/SliderY */ +    Dimension slider_width;		/* sliderWidth/SliderWidth */ +    Dimension slider_height;		/* sliderHeight/SliderHeight */ +    Dimension internal_border;		/* internalBorderWidth/BorderWidth */ +    String stipple_name;		/* backgroundStipple/BackgroundStipple +					 */ +    /* private */ +    GC slider_gc;			/* background of slider */ +    GC shadow_gc;			/* edge of slider and shadow */ +    GC xor_gc;				/* for doing XOR tmp graphics */ +    double haspect, vaspect;		/* aspect ratio of core to canvas */ +    Boolean rubber_band;		/* true = rubber band, false = move */ +    struct { +	Boolean doing;			/* tmp graphics in progress */ +	Boolean showing;		/* true if tmp graphics displayed */ +	Position startx, starty;	/* initial position of slider */ +	Position dx, dy;		/* offset loc for tmp graphics */ +	Position x, y;			/* location for tmp graphics */ +    } tmp; +    Position knob_x, knob_y;		/* real upper left of knob in canvas */ +    Dimension knob_width, knob_height;	/* real size of knob in canvas */ +    Boolean shadow_valid;		/* true if rects are valid */ +    XRectangle shadow_rects[2];		/* location of shadows */ +    Position last_x, last_y;		/* previous location of knob */ +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} PannerPart; + +typedef struct _PannerRec { +    CorePart core; +    SimplePart simple; +    PannerPart panner; +} PannerRec; + +#define PANNER_HSCALE(pw,val)	((pw)->panner.haspect * ((double)(val))) +#define PANNER_VSCALE(pw,val)	((pw)->panner.vaspect * ((double)(val))) + +#define PANNER_DSCALE(pw,val) (Dimension)  \ +((((unsigned long)(val)) * (unsigned long)pw->panner.default_scale) / 100L) + +#define PANNER_DEFAULT_SCALE	8		/* percent */ +#define PANNER_OUTOFRANGE -30000 + +extern PannerClassRec pannerClassRec; + +#endif /* _XawPannerP_h */ diff --git a/X11/Xaw/Porthole.h b/X11/Xaw/Porthole.h new file mode 100644 index 000000000..68274d886 --- /dev/null +++ b/X11/Xaw/Porthole.h @@ -0,0 +1,63 @@ +/* + * $Xorg: Porthole.h,v 1.5 2001/02/09 02:03:45 xorgcvs Exp $ + * +Copyright 1990, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + * + * Author:  Jim Fulton, MIT X Consortium + */ +/* $XFree86: xc/lib/Xaw/Porthole.h,v 1.5 2001/01/17 19:42:29 dawes Exp $ */ + +#ifndef _XawPorthole_h +#define _XawPorthole_h + +#include <X11/Intrinsic.h> +#include <X11/Xaw/Reports.h> + +/***************************************************************************** + *  + * Porthole Widget (subclass of Composite) + *  + * This widget is similar to a viewport without scrollbars.  Child movement + * is done by external panners or scrollbars. + *  + * Parameters: + *  + *  Name		Class		Type		Default + *  ----		-----		----		------- + *  + *  background		Background	Pixel		XtDefaultBackground + *  border	        BorderColor	Pixel		XtDefaultForeground + *  borderWidth		BorderWidth	Dimension	1 + *  height		Height		Dimension	0 + *  reportCallback	ReportCallback	Pointer		NULL + *  width		Width		Dimension	0 + *  x 			Position	Position	0 + *  y			Position	Position	0 + *  + *****************************************************************************/ + +extern WidgetClass portholeWidgetClass; +typedef struct _PortholeClassRec *PortholeWidgetClass; +typedef struct _PortholeRec      *PortholeWidget; + +#endif /* _XawPorthole_h */ diff --git a/X11/Xaw/PortholeP.h b/X11/Xaw/PortholeP.h new file mode 100644 index 000000000..39dcbdc53 --- /dev/null +++ b/X11/Xaw/PortholeP.h @@ -0,0 +1,64 @@ +/* + * $Xorg: PortholeP.h,v 1.4 2001/02/09 02:03:45 xorgcvs Exp $ + * +Copyright 1990, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + * + * Author:  Jim Fulton, MIT X Consortium + */ +/* $XFree86: xc/lib/Xaw/PortholeP.h,v 1.7 2001/01/17 19:42:29 dawes Exp $ */ + +#ifndef _XawPortholeP_h +#define _XawPortholeP_h + +#include <X11/Xaw/Porthole.h> + +/* new fields in widget class */ +typedef struct { +    XtPointer extension; +} PortholeClassPart; + +/* widget class */ +typedef struct _PortholeClassRec { +    CoreClassPart core_class; +    CompositeClassPart composite_class; +    PortholeClassPart porthole_class; +} PortholeClassRec; + +/* new fields in widget */ +typedef struct { +    /* resources */ +    XtCallbackList report_callbacks;	/* callback/Callback */ +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} PortholePart; + +typedef struct _PortholeRec { +    CorePart core; +    CompositePart composite; +    PortholePart porthole; +} PortholeRec; + +extern PortholeClassRec portholeClassRec; + +#endif /* _XawPortholeP_h */ diff --git a/X11/Xaw/Repeater.h b/X11/Xaw/Repeater.h new file mode 100644 index 000000000..cfb2c5313 --- /dev/null +++ b/X11/Xaw/Repeater.h @@ -0,0 +1,75 @@ +/* + * $Xorg: Repeater.h,v 1.4 2001/02/09 02:03:45 xorgcvs Exp $ + * +Copyright 1989, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + * + * Author:  Jim Fulton, MIT X Consortium + */ +/* $XFree86: xc/lib/Xaw/Repeater.h,v 1.5 2001/01/17 19:42:29 dawes Exp $ */ + +#ifndef _XawRepeater_h +#define _XawRepeater_h + +#include <X11/Xaw/Command.h> + +/***************************************************************************** + *  + * Repeater Widget (subclass of Command) + *  + * This widget is a push button that repeatedly fires when held down + *  + * Parameters: + *  + *  Name		Class		Type		Default + *  ----		-----		----		------- + *  + *  decay		Decay		int		5 milliseconds + *  flash		Boolean		Boolean		FALSE + *  initialDelay	Delay		int		200 milliseconds + *  minimumDelay	MinimumDelay	int		10 milliseconds + *  repeatDelay		Delay		int		50 milliseconds + *  startCallback	StartCallback	XtCallbackList	NULL + *  stopCallback	StopCallback	XtCallbackList	NULL + *  + *****************************************************************************/ + +#define XtNdecay "decay" +#define XtCDecay "Decay" +#define XtNinitialDelay "initialDelay" +#define XtCDelay "Delay" +#define XtNminimumDelay "minimumDelay" +#define XtCMinimumDelay "MinimumDelay" +#define XtNrepeatDelay "repeatDelay" +#define XtNflash "flash" +#define XtNstartCallback "startCallback" +#define XtCStartCallback "StartCallback" +#define XtNstopCallback "stopCallback" +#define XtCStopCallback "StopCallback" + + +extern WidgetClass repeaterWidgetClass; + +typedef struct _RepeaterClassRec *RepeaterWidgetClass; +typedef struct _RepeaterRec      *RepeaterWidget; + +#endif /* _XawRepeater_h */ diff --git a/X11/Xaw/RepeaterP.h b/X11/Xaw/RepeaterP.h new file mode 100644 index 000000000..3ce0a498c --- /dev/null +++ b/X11/Xaw/RepeaterP.h @@ -0,0 +1,84 @@ +/* + * $Xorg: RepeaterP.h,v 1.4 2001/02/09 02:03:45 xorgcvs Exp $ + * +Copyright 1989, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + * + * Author:  Jim Fulton, MIT X Consortium + */ +/* $XFree86: xc/lib/Xaw/RepeaterP.h,v 1.7 2001/01/17 19:42:29 dawes Exp $ */ + +#ifndef _XawRepeaterP_h +#define _XawRepeaterP_h + +#include <X11/Xaw/CommandP.h> +#include <X11/Xaw/Repeater.h> + +/* new fields in widget class */ +typedef struct { +    XtPointer extension; +} RepeaterClassPart; + +/* repeater widget class */ +typedef struct _RepeaterClassRec { +    CoreClassPart core_class; +    SimpleClassPart simple_class; +    LabelClassPart label_class; +    CommandClassPart command_class; +    RepeaterClassPart repeater_class; +} RepeaterClassRec; + +typedef struct { +    /* resources */ +    int initial_delay;			/* initialDelay/Delay */ +    int repeat_delay;			/* repeatDelay/Delay */ +    int minimum_delay;			/* minimumDelay/MinimumDelay */ +    int decay;				/* decay to minimum delay */ +    Boolean flash;			/* flash/Boolean */ +    XtCallbackList start_callbacks;	/* startCallback/StartCallback */ +    XtCallbackList stop_callbacks;	/* stopCallback/StopCallback */ + +    /* private */ +    int next_delay;			/* next amount for timer */ +    XtIntervalId timer;			/* timer that will fire */ +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} RepeaterPart; + +typedef struct _RepeaterRec { +    CorePart core; +    SimplePart simple; +    LabelPart label; +    CommandPart command; +    RepeaterPart repeater; +} RepeaterRec; + +					/* milliseconds */ +#define REP_DEF_DECAY			5 +#define REP_DEF_INITIAL_DELAY		200 +#define REP_DEF_MINIMUM_DELAY		10 +#define REP_DEF_REPEAT_DELAY		50 + +extern RepeaterClassRec repeaterClassRec; + +#endif /* _XawRepeaterP_h */ diff --git a/X11/Xaw/Reports.h b/X11/Xaw/Reports.h new file mode 100644 index 000000000..33f18d187 --- /dev/null +++ b/X11/Xaw/Reports.h @@ -0,0 +1,56 @@ +/* + * $Xorg: Reports.h,v 1.5 2001/02/09 02:03:45 xorgcvs Exp $ + * +Copyright 1990, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + */ + +#ifndef _Xaw_Reports_h +#define _Xaw_Reports_h + +#include <X11/Intrinsic.h> + +/* + * XawPannerReport - this structure is used by the reportCallback of the + * Panner, Porthole, Viewport, and Scrollbar widgets to report its position. + * All fields must be filled in, although the changed field may be used as + * a hint as to which fields have been altered since the last report. + */ +typedef struct { +    unsigned int changed;		/* mask, see below */ +    Position slider_x, slider_y;	/* location of slider within outer */ +    Dimension slider_width, slider_height;  /* size of slider */ +    Dimension canvas_width, canvas_height;  /* size of canvas */ +} XawPannerReport; + +#define XawPRSliderX		(1 << 0) +#define XawPRSliderY		(1 << 1) +#define XawPRSliderWidth	(1 << 2) +#define XawPRSliderHeight	(1 << 3) +#define XawPRCanvasWidth	(1 << 4) +#define XawPRCanvasHeight	(1 << 5) +#define XawPRAll		(63)	/* union of above */ + +#define XtNreportCallback "reportCallback" +#define XtCReportCallback "reportCallback" + +#endif /* _Xaw_Reports_h */ diff --git a/X11/Xaw/Scrollbar.h b/X11/Xaw/Scrollbar.h new file mode 100644 index 000000000..c776d41e2 --- /dev/null +++ b/X11/Xaw/Scrollbar.h @@ -0,0 +1,137 @@ +/* $Xorg: Scrollbar.h,v 1.4 2001/02/09 02:03:45 xorgcvs Exp $ */ + + +/*********************************************************** + +Copyright 1987, 1988, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/Scrollbar.h,v 1.6 2001/01/17 19:42:29 dawes Exp $ */ + +#ifndef _Scrollbar_h +#define _Scrollbar_h + +/* + * Scrollbar Widget + */ + +#include <X11/Xmu/Converters.h> +#include <X11/Xfuncproto.h> + +/* Scrollbar resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + accelerators	     Accelerators	AcceleratorTable NULL + ancestorSensitive   AncestorSensitive	Boolean		True + background	     Background		Pixel		XtDefaultBackground + backgroundPixmap    Pixmap		Pixmap		XtUnspecifiedPixmap + borderColor	     BorderColor	Pixel		XtDefaultForeground + borderPixmap	     Pixmap		Pixmap		XtUnspecifiedPixmap + borderWidth	     BorderWidth	Dimension	1 + colormap	     Colormap		Colormap	parent's colormap + cursor		     Cursor		Cursor		None + cursorName	     Cursor		String		NULL + depth		     Depth		int		parent's depth + destroyCallback     Callback		XtCallbackList	NULL + foreground	     Foreground		Pixel		XtDefaultForeground + height		     Height		Dimension	length or thickness + insensitiveBorder   Insensitive	Pixmap		GreyPixmap + jumpProc	     Callback		XtCallbackList	NULL + length		     Length		Dimension	1 + mappedWhenManaged   MappedWhenManaged	Boolean		True + minimumThumb	     MinimumThumb	Dimension	7 + orientation	     Orientation	XtOrientation	XtorientVertical + pointerColor	     Foreground		Pixel		XtDefaultForeground + pointerColorBackground Background	Pixel		XtDefaultBackground + screen		     Screen		Screen		parent's screen + scrollDCursor	     Cursor		Cursor		XC_sb_down_arrow + scrollHCursor	     Cursor		Cursor		XC_sb_h_double_arrow + scrollLCursor	     Cursor		Cursor		XC_sb_left_arrow + scrollProc	     Callback		XtCallbackList	NULL + scrollRCursor	     Cursor		Cursor		XC_sb_right_arrow + scrollUCursor	     Cursor		Cursor		XC_sb_up_arrow + scrollVCursor	     Cursor		Cursor		XC_sb_v_double_arrow + sensitive	     Sensitive		Boolean		True + shown		     Shown		Float		0.0 + thickness	     Thickness		Dimension	14 + thumb		     Thumb		Bitmap		GreyPixmap + thumbProc	     Callback		XtCallbackList	NULL + topOfThumb	     TopOfThumb		Float		0.0 + translations	     Translations	TranslationTable see source or doc + width		     Width		Dimension	thickness or length + x		     Position		Position	0 + y		     Position		Position	0 + +*/ + +#define XtCMinimumThumb "MinimumThumb" +#define XtCShown "Shown" +#define XtCTopOfThumb "TopOfThumb" + +#define XtNminimumThumb "minimumThumb" +#define XtNtopOfThumb "topOfThumb" + +typedef struct _ScrollbarRec	  *ScrollbarWidget; +typedef struct _ScrollbarClassRec *ScrollbarWidgetClass; + +extern WidgetClass scrollbarWidgetClass; + +_XFUNCPROTOBEGIN + +void XawScrollbarSetThumb +( + Widget			scrollbar, +#if NeedWidePrototypes + double			top, + double			shown +#else + float			top, + float			shown +#endif		  + ); + +_XFUNCPROTOEND + +#endif /* _Scrollbar_h */ diff --git a/X11/Xaw/ScrollbarP.h b/X11/Xaw/ScrollbarP.h new file mode 100644 index 000000000..ec3af46f8 --- /dev/null +++ b/X11/Xaw/ScrollbarP.h @@ -0,0 +1,109 @@ +/* + * $Xorg: ScrollbarP.h,v 1.4 2001/02/09 02:03:45 xorgcvs Exp $ + */ + + +/*********************************************************** + +Copyright 1987, 1988, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/ScrollbarP.h,v 1.7 2001/01/17 19:42:29 dawes Exp $ */ + +#ifndef _ScrollbarP_h +#define _ScrollbarP_h + +#include <X11/Xaw/Scrollbar.h> +#include <X11/Xaw/SimpleP.h> + +typedef struct { +    /* resources */ +    Pixel	   foreground;	/* thumb foreground color */ +    XtOrientation  orientation;	/* horizontal or vertical */ +    XtCallbackList scrollProc;	/* proportional scroll */ +    XtCallbackList thumbProc;	/* jump (to position) scroll */ +    XtCallbackList jumpProc;	/* same as thumbProc but pass data by ref */ +    Pixmap	   thumb;			/* thumb pixmap */ +    Cursor	   upCursor;	/* scroll up cursor */ +    Cursor	   downCursor;	/* scroll down cursor */ +    Cursor	   leftCursor;	/* scroll left cursor */ +    Cursor	   rightCursor;	/* scroll right cursor */ +    Cursor	   verCursor;	/* scroll vertical cursor */ +    Cursor	   horCursor;	/* scroll horizontal cursor */ +    float	   top; +    float	   shown; +    Dimension	   length;	/* either height or width */ +    Dimension	   thickness;	/* either width or height */ +    Dimension	   min_thumb;	/* minium size for the thumb */ + +     /* private */ +    Cursor	   inactiveCursor; /* The normal cursor for scrollbar */ +    char	   direction;	/* a scroll has started; which direction */ +    GC		   gc;		/* a (shared) gc */ +    Position	   topLoc;	/* Pixel that corresponds to top */ +    Dimension	   shownLength;	/* Num pixels corresponding to shown */ +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} ScrollbarPart; + +typedef struct _ScrollbarRec { +    CorePart		core; +    SimplePart		simple; +    ScrollbarPart	scrollbar; +} ScrollbarRec; + +typedef struct { +  XtPointer extension; +} ScrollbarClassPart; + +typedef struct _ScrollbarClassRec { +    CoreClassPart		core_class; +    SimpleClassPart		simple_class; +    ScrollbarClassPart		scrollbar_class; +} ScrollbarClassRec; + +extern ScrollbarClassRec scrollbarClassRec; + +#endif /* _ScrollbarP_h */ diff --git a/X11/Xaw/Simple.h b/X11/Xaw/Simple.h new file mode 100644 index 000000000..7ba9354b9 --- /dev/null +++ b/X11/Xaw/Simple.h @@ -0,0 +1,116 @@ +/* $Xorg: Simple.h,v 1.4 2001/02/09 02:03:45 xorgcvs Exp $ */ + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/Simple.h,v 1.8 2001/01/17 19:42:30 dawes Exp $ */ + +#ifndef _Simple_h +#define _Simple_h + +#include <X11/Xmu/Converters.h> + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + background	     Background		Pixel		XtDefaultBackground + border		     BorderColor	Pixel		XtDefaultForeground + borderWidth	     BorderWidth	Dimension	1 + cursor		     Cursor		Cursor		None + cursorName	     Cursor		String		NULL + destroyCallback     Callback		Pointer		NULL + displayList	     DisplayList	XawDisplayList*	NULL + height		     Height		Dimension	0 + insensitiveBorder   Insensitive	Pixmap		Gray + mappedWhenManaged   MappedWhenManaged	Boolean		True + pointerColor        Foreground         Pixel           XtDefaultForeground + pointerColorBackground Background      Pixel           XtDefaultBackground + sensitive	     Sensitive		Boolean		True + tip		     Tip		String		NULL + width		     Width		Dimension	0 + x		     Position		Position	0 + y		     Position		Position	0 + +*/ + +#define XtNcursor "cursor" +#define XtNcursorName "cursorName" +#define XtNinsensitiveBorder "insensitiveBorder" + +#define XtCInsensitive "Insensitive" + +#ifndef XtCInternational +#define XtCInternational "International" +#endif + +#ifndef XtNinternational +#define XtNinternational "international" +#endif + +#ifndef OLDXAW +#ifndef XawNdisplayList +#define XawNdisplayList "displayList" +#endif + +#ifndef XawCDisplayList +#define XawCDisplayList "DisplayList" +#endif + +#ifndef XawRDisplayList +#define XawRDisplayList "XawDisplayList" +#endif + +#define XtNtip		"tip" +#define XtCTip		"Tip" +#endif	/* OLDXAW */ + +typedef struct _SimpleClassRec	*SimpleWidgetClass; +typedef struct _SimpleRec	*SimpleWidget; + +extern WidgetClass simpleWidgetClass; + +#endif /* _Simple_h */ diff --git a/X11/Xaw/SimpleMenP.h b/X11/Xaw/SimpleMenP.h new file mode 100644 index 000000000..46102059e --- /dev/null +++ b/X11/Xaw/SimpleMenP.h @@ -0,0 +1,101 @@ +/* + * $Xorg: SimpleMenP.h,v 1.4 2001/02/09 02:03:45 xorgcvs Exp $ + * +Copyright 1989, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + * + */ +/* $XFree86: xc/lib/Xaw/SimpleMenP.h,v 1.12 2001/01/17 19:42:30 dawes Exp $ */ + +/* + * SimpleMenuP.h - Private Header file for SimpleMenu widget. + * + * Date:    April 3, 1989 + * + * By:      Chris D. Peterson + *          MIT X Consortium + *          kit@expo.lcs.mit.edu + */ + +#ifndef _SimpleMenuP_h +#define _SimpleMenuP_h + +#include <X11/Xaw/SimpleMenu.h> +#include <X11/Xaw/SmeP.h> +#include <X11/ShellP.h> +#include <X11/Xaw/XawInit.h> + +typedef struct { +    XtPointer extension;		/* For future needs */ +} SimpleMenuClassPart; + +typedef struct _SimpleMenuClassRec { +    CoreClassPart	    core_class; +    CompositeClassPart	    composite_class; +    ShellClassPart	    shell_class; +    OverrideShellClassPart  override_shell_class; +    SimpleMenuClassPart	    simpleMenu_class; +} SimpleMenuClassRec; + +extern SimpleMenuClassRec simpleMenuClassRec; + +typedef struct _SimpleMenuPart { +  /* resources */ +    String	label_string;	/* The string for the label or NULL */ +    SmeObject	label;		/* If label_string is non-NULL then this is +				   the label widget */ +    WidgetClass	label_class;	/* Widget Class of the menu label object */ +    Dimension	top_margin;	/* Top and bottom margins */ +    Dimension	bottom_margin; +    Dimension	row_height;	/* height of each row (menu entry) */ +    Cursor	cursor;		/* The menu's cursor */ +    SmeObject	popup_entry;	/* The entry to position the cursor on for +				   when using XawPositionSimpleMenu */ +    Boolean	menu_on_screen;	/* Force the menus to be fully on the screen*/ +    int		backing_store;	/* What type of backing store to use */ + +    /* private */ +    Boolean	recursive_set_values; /* contain a possible infinite loop */ +    Boolean	menu_width;	/* If true then force width to remain  +				   core.width */ +    Boolean	menu_height;	/* Just like menu_width, but for height */ +    SmeObject	entry_set;	/* The entry that is currently set or +				   highlighted */ +#ifndef OLDXAW +    Dimension	left_margin; +    Dimension	right_margin; +    XawDisplayList *display_list; +    Widget	sub_menu; +    unsigned	char state; +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} SimpleMenuPart; + +typedef struct _SimpleMenuRec { +    CorePart		core; +    CompositePart 	composite; +    ShellPart		shell; +    OverrideShellPart	override; +    SimpleMenuPart	simple_menu; +} SimpleMenuRec; + +#endif /* _SimpleMenuP_h */ diff --git a/X11/Xaw/SimpleMenu.h b/X11/Xaw/SimpleMenu.h new file mode 100644 index 000000000..0ee689683 --- /dev/null +++ b/X11/Xaw/SimpleMenu.h @@ -0,0 +1,173 @@ +/* + * $Xorg: SimpleMenu.h,v 1.4 2001/02/09 02:03:45 xorgcvs Exp $ + * +Copyright 1989, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + * + * Author:  Chris D. Peterson, MIT X Consortium + */ +/* $XFree86: xc/lib/Xaw/SimpleMenu.h,v 1.7 2001/01/17 19:42:30 dawes Exp $ */ + +/* + * SimpleMenu.h - Public Header file for SimpleMenu widget. + * + * This is the public header file for the Athena SimpleMenu widget. + * It is intended to provide one pane pulldown and popup menus within + * the framework of the X Toolkit.  As the name implies it is a first and + * by no means complete implementation of menu code. It does not attempt to + * fill the needs of all applications, but does allow a resource oriented + * interface to menus. + * + * Date:    April 3, 1989 + * + * By:      Chris D. Peterson + *          MIT X Consortium  + *          kit@expo.lcs.mit.edu + */ + +#ifndef _SimpleMenu_h +#define _SimpleMenu_h + +#include <X11/Shell.h> +#include <X11/Xmu/Converters.h> + +/* + * SimpleMenu widget + */ + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + background	     Background		Pixel		XtDefaultBackground + backgroundPixmap    BackgroundPixmap	Pixmap          None + borderColor	     BorderColor	Pixel		XtDefaultForeground + borderPixmap	     BorderPixmap	Pixmap		None + borderWidth	     BorderWidth	Dimension	1 + bottomMargin        VerticalMargins    Dimension       VerticalSpace + columnWidth         ColumnWidth        Dimension       Width of widest text + cursor              Cursor             Cursor          None + destroyCallback     Callback		Pointer		NULL + displayList	     DisplayList	XawDisplayList*	NULL + height		     Height		Dimension	0 + label               Label              String          NULL (No label) + labelClass          LabelClass         Pointer         smeBSBObjectClass + leftMargin	     HorizontalMargins	Dimension	0 + mappedWhenManaged   MappedWhenManaged	Boolean		True + rightMargin	     HorizontalMargins	Dimension	0 + rowHeight           RowHeight          Dimension       Height of Font + sensitive	     Sensitive		Boolean		True + topMargin           VerticalMargins    Dimension       VerticalSpace + width		     Width		Dimension	0 + x		     Position		Position	0 + y		     Position		Position	0 + +*/ + +typedef struct _SimpleMenuClassRec*	SimpleMenuWidgetClass; +typedef struct _SimpleMenuRec*		SimpleMenuWidget; + +extern WidgetClass simpleMenuWidgetClass; + +#define XtNcursor "cursor" +#define XtNbottomMargin "bottomMargin" +#define XtNcolumnWidth "columnWidth" +#define XtNlabelClass "labelClass" +#define XtNmenuOnScreen "menuOnScreen" +#define XtNpopupOnEntry "popupOnEntry" +#define XtNrowHeight "rowHeight" +#define XtNtopMargin "topMargin" +#define XtNleftMargin "leftMargin" +#define XtNrightMargin "rightMargin" + +#define XtCColumnWidth "ColumnWidth" +#define XtCLabelClass "LabelClass" +#define XtCMenuOnScreen "MenuOnScreen" +#define XtCPopupOnEntry "PopupOnEntry" +#define XtCRowHeight "RowHeight" + +#define XtCVerticalMargins "VerticalMargins" + +#ifndef OLDXAW +#define XtCHorizontalMargins "HorizontalMargins" +#define XawNdisplayList "displayList" +#define XawCDisplayList "DisplayList" +#define XawRDisplayList "XawDisplayList" +#endif + +/* + * Public Functions + */ + +_XFUNCPROTOBEGIN + +/* + * Function: + *	XawSimpleMenuAddGlobalActions + * + * Parameters: + *	app_con - appcontext + * + * Description: + *	Adds the global actions to the simple menu widget. + */ +void XawSimpleMenuAddGlobalActions +( + XtAppContext		app_con + ); + +/* + * Function: + *	XawSimpleMenuGetActiveEntry + * + * Parameters: + *	w - smw widget + * + * Description: + *	Gets the currently active (set) entry. + * + * Returns: + *	The currently set entry or NULL if none is set + */ +Widget XawSimpleMenuGetActiveEntry +( + Widget			w + ); + +/* + * Function: + *	XawSimpleMenuClearActiveEntry + * + * Parameters: + *	w - smw widget + * + * Description: + *	Unsets the currently active (set) entry. + */ +void XawSimpleMenuClearActiveEntry +( + Widget			w +); + +_XFUNCPROTOEND + +#endif /* _SimpleMenu_h */ diff --git a/X11/Xaw/SimpleP.h b/X11/Xaw/SimpleP.h new file mode 100644 index 000000000..f2fa3fa22 --- /dev/null +++ b/X11/Xaw/SimpleP.h @@ -0,0 +1,102 @@ +/*********************************************************** + + $Xorg: SimpleP.h,v 1.4 2001/02/09 02:03:45 xorgcvs Exp $ + + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/SimpleP.h,v 1.12 2001/12/14 19:54:43 dawes Exp $ */ + +#ifndef _SimpleP_h +#define _SimpleP_h + +#include <X11/Xfuncproto.h> + +#include <X11/Xaw/Simple.h> + +_XFUNCPROTOBEGIN + +#include <X11/Xaw/XawInit.h> + +typedef struct { +    Bool (*change_sensitive)(Widget); +#ifndef OLDXAW +    XtPointer extension; +#endif +} SimpleClassPart; + +#define XtInheritChangeSensitive	((Bool (*)(Widget))_XtInherit) + +typedef struct _SimpleClassRec { +    CoreClassPart	core_class; +    SimpleClassPart	simple_class; +} SimpleClassRec; + +extern SimpleClassRec simpleClassRec; + +typedef struct { +    /* resources */ +    Cursor cursor; +    Pixmap insensitive_border; +    String cursor_name;			/* cursor specified by name */ +    Pixel pointer_fg, pointer_bg;	/* Pointer colors */ +    Boolean international; + +    /* private */ +#ifndef OLDXAW +    XawDisplayList *display_list; +    String tip; +    XtPointer pad[3];	/* for future use and keep binary compatability */ +#endif +} SimplePart; + +typedef struct _SimpleRec { +    CorePart	core; +    SimplePart	simple; +} SimpleRec; + +_XFUNCPROTOEND + +#endif /* _SimpleP_h */ diff --git a/X11/Xaw/Sme.h b/X11/Xaw/Sme.h new file mode 100644 index 000000000..fb87b0073 --- /dev/null +++ b/X11/Xaw/Sme.h @@ -0,0 +1,73 @@ +/* + * $Xorg: Sme.h,v 1.5 2001/02/09 02:03:45 xorgcvs Exp $ + * +Copyright 1989, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + */ +/* $XFree86: xc/lib/Xaw/Sme.h,v 1.5 2001/01/17 19:42:31 dawes Exp $ */ + +/* + * This is the public header file for the Athena Sme object. + * It is intended to be used with the simple menu widget.   + * + * Date:    April 3, 1989 + * + * By:      Chris D. Peterson + *          MIT X Consortium  + *          kit@expo.lcs.mit.edu + */ + +#ifndef _Sme_h +#define _Sme_h + +#include <X11/Intrinsic.h> +#include <X11/RectObj.h> + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + callback            Callback		Pointer		NULL + destroyCallback     Callback		Pointer		NULL + height		     Height		Dimension	0 + sensitive	     Sensitive		Boolean		True + width		     Width		Dimension	0 + x		     Position		Position	0 + y		     Position		Position	0 + +*/ + +#ifndef XtCInternational +#define XtCInternational	"International" +#endif + +#ifndef XtNinternational +#define XtNinternational	"international" +#endif + + +typedef struct _SmeClassRec *SmeObjectClass; +typedef struct _SmeRec *SmeObject; + +extern WidgetClass smeObjectClass; + +#endif /* _Sme_h */ diff --git a/X11/Xaw/SmeBSB.h b/X11/Xaw/SmeBSB.h new file mode 100644 index 000000000..094b558c3 --- /dev/null +++ b/X11/Xaw/SmeBSB.h @@ -0,0 +1,98 @@ +/* + * $Xorg: SmeBSB.h,v 1.4 2001/02/09 02:03:45 xorgcvs Exp $ + * +Copyright 1989, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + */ +/* $XFree86: xc/lib/Xaw/SmeBSB.h,v 1.6 2001/01/17 19:42:31 dawes Exp $ */ + +/* + * SmeBSB.h - Public Header file for SmeBSB object. + * + * This is the public header file for the Athena BSB Sme object. + * It is intended to be used with the simple menu widget.  This object + * provides bitmap - string - bitmap style entries. + * + * Date:    April 3, 1989 + * + * By:      Chris D. Peterson + *          MIT X Consortium  + *          kit@expo.lcs.mit.edu + */ + +#ifndef _SmeBSB_h +#define _SmeBSB_h + +#include <X11/Xmu/Converters.h> +#include <X11/Xaw/Sme.h> + +/* BSB Menu Entry Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + callback            Callback           Callback        NULL + destroyCallback     Callback		Pointer		NULL + font                Font               XFontStruct *   XtDefaultFont + foreground          Foreground         Pixel           XtDefaultForeground + height		     Height		Dimension	0 + label               Label              String          Name of entry + leftBitmap          LeftBitmap         Pixmap          None + leftMargin          HorizontalMargins  Dimension       4 + menuName	     MenuName		String		NULL + rightBitmap         RightBitmap        Pixmap          None + rightMargin         HorizontalMargins  Dimension       4 + sensitive	     Sensitive		Boolean		True + vertSpace           VertSpace          int             25 + width		     Width		Dimension	0 + x		     Position		Position	0 + y		     Position		Position	0 + +*/ + +typedef struct _SmeBSBClassRec    *SmeBSBObjectClass; +typedef struct _SmeBSBRec         *SmeBSBObject; + +extern WidgetClass smeBSBObjectClass; + +#define XtNleftBitmap "leftBitmap" +#define XtNleftMargin "leftMargin" +#define XtNrightBitmap "rightBitmap" +#define XtNrightMargin "rightMargin" +#define XtNvertSpace   "vertSpace" + +#define XtNmenuName "menuName" +#define XtCMenuName "MenuName" + +#ifndef XtNfontSet +#define XtNfontSet		"fontSet" +#endif + +#ifndef XtCFontSet +#define XtCFontSet		"FontSet" +#endif + +#define XtCLeftBitmap "LeftBitmap" +#define XtCHorizontalMargins "HorizontalMargins" +#define XtCRightBitmap "RightBitmap" +#define XtCVertSpace   "VertSpace" + +#endif /* _SmeBSB_h */ diff --git a/X11/Xaw/SmeBSBP.h b/X11/Xaw/SmeBSBP.h new file mode 100644 index 000000000..6b263e7a8 --- /dev/null +++ b/X11/Xaw/SmeBSBP.h @@ -0,0 +1,94 @@ +/* + * $Xorg: SmeBSBP.h,v 1.4 2001/02/09 02:03:45 xorgcvs Exp $ + * +Copyright 1989, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + * + * Author:  Chris D. Peterson, MIT X Consortium + */ +/* $XFree86: xc/lib/Xaw/SmeBSBP.h,v 1.8 2001/01/17 19:42:31 dawes Exp $ */ + +#ifndef _XawSmeBSBP_h +#define _XawSmeBSBP_h + +/* + * Sme Object Private Data + */ +#include <X11/Xaw/SmeP.h> +#include <X11/Xaw/SmeBSB.h> + +typedef struct _SmeBSBClassPart { +    XtPointer extension; +} SmeBSBClassPart; + +/* Full class record declaration */ +typedef struct _SmeBSBClassRec { +    RectObjClassPart	rect_class; +    SmeClassPart	sme_class; +    SmeBSBClassPart	sme_bsb_class; +} SmeBSBClassRec; + +extern SmeBSBClassRec smeBSBClassRec; + +/* New fields for the Sme Object record */ +typedef struct { +    /* resources */ +    String label;			/* The entry label */ +    int vert_space;			/* extra vert space to leave, as a +					   percentage of the font height of +					   the label */ +    Pixmap left_bitmap, right_bitmap;	/* bitmaps to show */ +    Dimension left_margin, right_margin;/* left and right margins */ +    Pixel foreground;			/* foreground color */ +    XFontStruct *font;			/* The font to show label in */ +    XFontSet fontset;			/* or fontset */ +    XtJustify justify;			/* Justification for the label. */ + +    /* private */ +    Boolean set_values_area_cleared;	/* do we need to unhighlight? */ +    GC norm_gc;				/* noral color gc */ +    GC rev_gc;				/* reverse color gc */ +    GC norm_gray_gc;			/* Normal color (grayed out) gc */ +    GC invert_gc;			/* gc for flipping colors */ +    Dimension left_bitmap_width;	/* size of each bitmap */ +    Dimension left_bitmap_height; +    Dimension right_bitmap_width; +    Dimension right_bitmap_height; + +#ifndef OLDXAW +    /* new resources */ +    String menu_name;			/* name of nested sub menu or NULL */ +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} SmeBSBPart; + +/* + * Full instance record declaration + */ +typedef struct _SmeBSBRec { +    ObjectPart	object; +    RectObjPart	rectangle; +    SmePart	sme; +    SmeBSBPart	sme_bsb; +} SmeBSBRec; + +#endif /* _XawSmeBSBP_h */ diff --git a/X11/Xaw/SmeLine.h b/X11/Xaw/SmeLine.h new file mode 100644 index 000000000..7c9d4e41a --- /dev/null +++ b/X11/Xaw/SmeLine.h @@ -0,0 +1,71 @@ +/* + * $Xorg: SmeLine.h,v 1.4 2001/02/09 02:03:45 xorgcvs Exp $ + * +Copyright 1989, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + * + */ +/* $XFree86: xc/lib/Xaw/SmeLine.h,v 1.5 2001/01/17 19:42:31 dawes Exp $ */ + +/* + * This is the public header file for the Athena SmeLine object. + * It is intended to be used with the simple menu widget.   + * + * Date:    April 3, 1989 + * + * By:      Chris D. Peterson + *          MIT X Consortium  + *          kit@expo.lcs.mit.edu + */ + +#ifndef _SmeLine_h +#define _SmeLine_h + +#include <X11/Xaw/Sme.h> +#include <X11/Xmu/Converters.h> + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + callback            Callback		Pointer		NULL + destroyCallback     Callback		Pointer		NULL + height		     Height		Dimension	0 + sensitive	     Sensitive		Boolean		True + width		     Width		Dimension	0 + x		     Position		Position	0 + y		     Position		Position	0 + +*/ + +#define XtCLineWidth "LineWidth" +#define XtCStipple "Stipple" + +#define XtNlineWidth "lineWidth" +#define XtNstipple "stipple" + +typedef struct _SmeLineClassRec *SmeLineObjectClass; +typedef struct _SmeLineRec *SmeLineObject; + +extern WidgetClass smeLineObjectClass; + +#endif /* _SmeLine_h */ diff --git a/X11/Xaw/SmeLineP.h b/X11/Xaw/SmeLineP.h new file mode 100644 index 000000000..7102d03f9 --- /dev/null +++ b/X11/Xaw/SmeLineP.h @@ -0,0 +1,75 @@ +/* + * $Xorg: SmeLineP.h,v 1.4 2001/02/09 02:03:46 xorgcvs Exp $ + * +Copyright 1989, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + * + * Author:  Chris D. Peterson, MIT X Consortium + */ +/* $XFree86: xc/lib/Xaw/SmeLineP.h,v 1.7 2001/01/17 19:42:31 dawes Exp $ */ + +#ifndef _XawSmeLineP_h +#define _XawSmeLineP_h + +/* + * SmeLine Widget Private Data + */ +#include <X11/Xaw/SmeP.h> +#include <X11/Xaw/SmeLine.h> + +/* New fields for the SmeLine widget class */ +typedef struct _SmeLineClassPart { +    XtPointer extension; +} SmeLineClassPart; + +/* Full class record */ +typedef struct _SmeLineClassRec { +    RectObjClassPart    rect_class; +    SmeClassPart	sme_class; +    SmeLineClassPart	sme_line_class; +} SmeLineClassRec; + +extern SmeLineClassRec smeLineClassRec; + +/* New fields for the SmeLine widget */ +typedef struct { +    /* resources */ +    Pixel foreground;		/* Foreground color */ +    Pixmap stipple;		/* Line Stipple */ +    Dimension line_width;	/* Width of the line */ + +    /* private */ +    GC gc;			/* Graphics context for drawing line */ +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} SmeLinePart; + +/* Full instance record */ +typedef struct _SmeLineRec { +    ObjectPart	object; +    RectObjPart	rectangle; +    SmePart	sme; +    SmeLinePart	sme_line; +} SmeLineRec; + +#endif /* _XawSmeLineP_h */ diff --git a/X11/Xaw/SmeP.h b/X11/Xaw/SmeP.h new file mode 100644 index 000000000..94342fffd --- /dev/null +++ b/X11/Xaw/SmeP.h @@ -0,0 +1,90 @@ +/* + * $Xorg: SmeP.h,v 1.4 2001/02/09 02:03:46 xorgcvs Exp $ + * +Copyright 1989, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + */ +/* $XFree86: xc/lib/Xaw/SmeP.h,v 1.8 2001/12/14 19:54:43 dawes Exp $ */ + +/* + * This is the private header file for the Athena Sme object. + * This object is intended to be used with the simple menu widget.   + * + * Date:    April 3, 1989 + * + * By:      Chris D. Peterson + *          MIT X Consortium  + *          kit@expo.lcs.mit.edu + */ + +#ifndef _XawSmeP_h +#define _XawSmeP_h + +/* + * Sme Widget Private Data + */ +#include <X11/Xfuncproto.h> + +#include <X11/Xaw/Sme.h> + +_XFUNCPROTOBEGIN + +/* New fields for the Sme widget class */ +typedef struct _SmeClassPart { +    XtWidgetProc highlight; +    XtWidgetProc unhighlight; +    XtWidgetProc notify; +    XtPointer	 extension; +} SmeClassPart; + +/* Full class record */ +typedef struct _SmeClassRec { +    RectObjClassPart    rect_class; +    SmeClassPart	sme_class; +} SmeClassRec; + +extern SmeClassRec smeClassRec; + +/* New fields for the Sme widget */ +typedef struct { +    /* resources */ +    XtCallbackList callbacks; +    Boolean international; +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} SmePart; + +/* Full instance record */ +typedef struct _SmeRec { +    ObjectPart	object; +    RectObjPart	rectangle; +    SmePart	sme; +} SmeRec; + +#define XtInheritHighlight	((XtWidgetProc)_XtInherit) +#define XtInheritUnhighlight XtInheritHighlight +#define XtInheritNotify      XtInheritHighlight + +_XFUNCPROTOEND + +#endif /* _XawSmeP_h */ diff --git a/X11/Xaw/StripCharP.h b/X11/Xaw/StripCharP.h new file mode 100644 index 000000000..50ed74c98 --- /dev/null +++ b/X11/Xaw/StripCharP.h @@ -0,0 +1,110 @@ +/* +* $Xorg: StripCharP.h,v 1.4 2001/02/09 02:03:46 xorgcvs Exp $ +*/ + + +/*********************************************************** + +Copyright 1987, 1988, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/StripCharP.h,v 1.7 2001/01/17 19:42:32 dawes Exp $ */ + +#ifndef _XawStripChartP_h +#define _XawStripChartP_h + +#include <X11/Xaw/StripChart.h> +#include <X11/Xaw/SimpleP.h> + +#define NO_GCS 0 +#define FOREGROUND	(1 << 0) +#define HIGHLIGHT	(1 << 1) +#define ALL_GCS (FOREGROUND | HIGHLIGHT) + +/* new fields for the stripChart widget */ +typedef struct { +    /* resources */ +    Pixel fgpixel;		/* color index for graph */ +    Pixel hipixel;		/* color index for lines */ +    GC fgGC;			/* graphics context for fgpixel */ +    GC hiGC;			/* graphics context for hipixel */ +     +    /* private */ +    int update;			/* update frequence */ +    int scale;			/* scale factor */ +    int min_scale;		/* smallest scale factor */ +    int interval;		/* data point interval */ +    XPoint *points;		/* Poly point for repairing graph lines */ +    double max_value;		/* Max Value in window */ +    double valuedata[2048];	/* record of data points */ +    XtIntervalId interval_id; +    XtCallbackList get_value;	/* proc to call to fetch load pt */ +    int jump_val;		/* Amount to jump on each scroll */ +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} StripChartPart; + +/* instance record declaration */ +typedef struct _StripChartRec { +    CorePart core; +    SimplePart simple; +    StripChartPart strip_chart; +} StripChartRec; + +/* new fields for the StripChart widget class record */ +typedef struct { +    XtPointer extension; +} StripChartClassPart; + +/* class record declaration */ +typedef struct _StripChartClassRec { +    CoreClassPart core_class; +    SimpleClassPart simple_class; +    StripChartClassPart strip_chart_class; +} StripChartClassRec; + +extern StripChartClassRec stripChartClassRec; + +#endif /* _XawStripChartP_h */ diff --git a/X11/Xaw/StripChart.h b/X11/Xaw/StripChart.h new file mode 100644 index 000000000..b6c6f212a --- /dev/null +++ b/X11/Xaw/StripChart.h @@ -0,0 +1,119 @@ +/* $Xorg: StripChart.h,v 1.5 2001/02/09 02:03:46 xorgcvs Exp $ */ + +/*********************************************************** + +Copyright 1987, 1988, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/StripChart.h,v 1.5 2001/01/17 19:42:32 dawes Exp $ */ + +#ifndef _XawStripChart_h +#define _XawStripChart_h + +#include <X11/Intrinsic.h> + +/*********************************************************************** + * + * StripChart Widget + * + ***********************************************************************/ + +/* StripChart resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + accelerators	     Accelerators	AcceleratorTable NULL + ancestorSensitive   AncestorSensitive	Boolean		True  + background	     Background		Pixel		XtDefaultBackground + backgroundPixmap    Pixmap		Pixmap		XtUnspecifiedPixmap + borderColor	     BorderColor	Pixel		XtDefaultForeground + borderPixmap	     Pixmap		Pixmap		XtUnspecifiedPixmap + borderWidth	     BorderWidth	Dimension	1 + colormap	     Colormap		Colormap	parent's colormap + cursor		     Cursor		Cursor		None + cursorName	     Cursor		String		NULL + depth		     Depth		int		parent's depth + destroyCallback     Callback		XtCallbackList	NULL + foreground	     Foreground		Pixel		XtDefaultForeground + getValue	     Callback		XtCallbackList	NULL + height		     Height		Dimension	120 + highlight	     Foreground		Pixel		XtDefaultForeground + insensitiveBorder   Insensitive	Pixmap		GreyPixmap + jumpScroll	     JumpScroll		int		1/2 width + mappedWhenManaged   MappedWhenManaged	Boolean		True + minScale	     Scale		int		1 + pointerColor	     Foreground		Pixel		XtDefaultForeground + pointerColorBackground Background	Pixel		XtDefaultBackground + screen		     Screen		Screen		parent's screen + sensitive	     Sensitive		Boolean		True + translations	     Translations	TranslationTable NULL + update		     Interval		int		10 (seconds) + width		     Width		Dimension	120 + x		     Position		Position	0 + y		     Position		Position	0 + +*/ + +#define DEFAULT_JUMP -1 + +#ifndef _XtStringDefs_h_ +#define XtNhighlight "highlight" +#define XtNupdate "update" +#endif + +#define XtCJumpScroll "JumpScroll" +#define XtCScale "Scale" + +#define XtNgetValue "getValue" +#define XtNjumpScroll "jumpScroll" +#define XtNminScale "minScale" +#define XtNscale "scale" +#define XtNvmunix "vmunix" +  +typedef struct _StripChartRec *StripChartWidget; +typedef struct _StripChartClassRec *StripChartWidgetClass; + +extern WidgetClass stripChartWidgetClass; + +#endif /* _XawStripChart_h */ diff --git a/X11/Xaw/Template.c b/X11/Xaw/Template.c new file mode 100644 index 000000000..9c3763b52 --- /dev/null +++ b/X11/Xaw/Template.c @@ -0,0 +1,198 @@ +/* $Xorg: Template.c,v 1.4 2001/02/09 02:03:46 xorgcvs Exp $ */ + +/* + +Copyright 1987, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + +*/ +/* $XFree86: xc/lib/Xaw/Template.c,v 1.8 2001/08/01 00:44:39 tsi Exp $ */ + +#ifdef HAVE_CONFIG_H +#include <config.h> +#endif +#include <X11/IntrinsicP.h> +#include <X11/StringDefs.h> +#include <X11/Xaw/TemplateP.h> + +/* + * Class Methods + */ +static void TemplateInitialize(Widget, Widget, ArgList, Cardinal*); + +/* + * Prototypes + */ +static Bool TemplateFunction(TemplateWidget, int, int, Bool); + +/* + * Actions + */ +static void TemplateAction(Widget, XEvent*, String*, Cardinal*); + +/* + * Initialization + */ +#define offset(field) XtOffsetOf(TemplateRec, template.field) +static XtResource resources[] = { +/*{ +    name, +    class, +    type, +    size, +    offset, +    default_type, +    default_addr +  },*/ +  { +    XtNtemplateResource, +    XtCTemplateResource, +    XtRTemplateResource, +    sizeof(char*), +    offset(resource), +    XtRString, +    (XtPointer)"default" +  }, +}; +#undef offset + +static XtActionsRec actions[] = +{ +    /*{name,		procedure},*/ +    {"template",	TemplateAction}, +}; + +static char translations[] = +"<Key>:"	"template()\n" +; + +#define Superclass	(&widgetClassRec) +TemplateClassRec templateClassRec = { +  /* core */ +  { +    (WidgetClass)Superclass,		/* superclass */ +    "Template",				/* class_name */ +    sizeof(TemplateRec),		/* widget_size */ +    NULL,				/* class_initialize */ +    NULL,				/* class_part_initialize */ +    False,				/* class_inited */ +    TemplateInitialize,			/* initialize */ +    NULL,				/* initialize_hook */ +    XtInheritRealize,			/* realize */ +    actions,				/* actions */ +    XtNumber(actions),			/* num_actions */ +    resources,				/* resources */ +    XtNumber(resources),		/* num_resources */ +    NULLQUARK,				/* xrm_class */ +    True,				/* compress_motion */ +    True,				/* compress_exposure */ +    True,				/* compress_enterleave */ +    False,				/* visible_interest */ +    NULL,				/* destroy */ +    NULL,				/* resize */ +    NULL,				/* expose */ +    NULL,				/* set_values */ +    NULL,				/* set_values_hook */ +    XtInheritSetValuesAlmost,		/* set_values_almost */ +    NULL,				/* get_values_hook */ +    NULL,				/* accept_focus */ +    XtVersion,				/* version */ +    NULL,				/* callback_private */ +    translations,			/* tm_table */ +    XtInheritQueryGeometry,		/* query_geometry */ +    XtInheritDisplayAccelerator,	/* display_accelerator */ +    NULL,				/* extension */ +  }, +  /* template */ +  { +    NULL,				/* extension */ +  } +}; + +WidgetClass templateWidgetClass = (WidgetClass)&templateClassRec; + +/* + * Implementation + */ +/* + * Function: + *	TemplateInitialize + * + * Parameters: + *	request - requested widget + *	w	- the widget + *	args	- arguments + *	num_args - number of arguments + * + * Description: + *	Initializes widget instance. + */ +/*ARGSUSED*/ +static void +TemplateInitialize(Widget request, Widget w, ArgList args, Cardinal *num_args) +{ +    TemplateWidget tw = (TemplateWidget)w; + +    tw->template.private = NULL; +} + +/* + * Function: + *	TemplateFunction + * + * Parameters: + *	tw    - template widget + *	x     - x coordinate + *	y     - y coordinate + *	force - force action + * + * Description: + *	This function does nothing. + * + * Return: + *	Parameter force + */ +/*ARGSUSED*/ +static Bool +TemplateFunction(TemplateWidget tw, int x, int y, Bool force) +{ +    return (force); +} + +/* + * Function: + *	TemplateAction + * + * Parameters: + *	w	   - template widget + *	event	   - event that caused this action + *	params	   - parameters + *	num_params - number of parameters + * + * Description: + *	This function does nothing. + */ +/*ARGSUSED*/ +static void +TemplateAction(Widget w, XEvent *event, String *params, Cardinal *num_params) +{ +} diff --git a/X11/Xaw/Template.h b/X11/Xaw/Template.h new file mode 100644 index 000000000..5ec0974cf --- /dev/null +++ b/X11/Xaw/Template.h @@ -0,0 +1,70 @@ +/* $Xorg: Template.h,v 1.5 2001/02/09 02:03:46 xorgcvs Exp $ */ + +/* + +Copyright 1987, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + +*/ +/* $XFree86: xc/lib/Xaw/Template.h,v 1.5 2001/01/17 19:42:32 dawes Exp $ */ + +#ifndef _Template_h +#define _Template_h + +#include <X11/Intrinsic.h> + +/**************************************************************** + * + * Template widget + * + ****************************************************************/ + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + background	     Background		Pixel		XtDefaultBackground + border		     BorderColor	Pixel		XtDefaultForeground + borderWidth	     BorderWidth	Dimension	1 + destroyCallback     Callback		Pointer		NULL + height		     Height		Dimension	0 + mappedWhenManaged   MappedWhenManaged	Boolean		True + sensitive	     Sensitive		Boolean		True + width		     Width		Dimension	0 + x		     Position		Position	0 + y		     Position		Position	0 + +*/ + +/* define any special resource names here that are not in <X11/StringDefs.h> */ +#define XtNtemplateResource "templateResource" + +#define XtCTemplateResource "TemplateResource" + +/* declare specific TemplateWidget class and instance datatypes */ +typedef struct _TemplateClassRec *TemplateWidgetClass; +typedef struct _TemplateRec *TemplateWidget; + +/* declare the class constant */ +extern WidgetClass templateWidgetClass; + +#endif /* _Template_h */ diff --git a/X11/Xaw/TemplateP.h b/X11/Xaw/TemplateP.h new file mode 100644 index 000000000..f3e3d67d5 --- /dev/null +++ b/X11/Xaw/TemplateP.h @@ -0,0 +1,68 @@ +/* $Xorg: TemplateP.h,v 1.5 2001/02/09 02:03:46 xorgcvs Exp $ */ + +/* + +Copyright 1987, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + +*/ +/* $XFree86: xc/lib/Xaw/TemplateP.h,v 1.6 2001/01/17 19:42:32 dawes Exp $ */ + +#ifndef _TemplateP_h +#define _TemplateP_h + +#include <X11/Xaw/Template.h> + +/* include superclass private header file */ +#include <X11/CoreP.h> + +/* define unique representation types not found in <X11/StringDefs.h> */ +#define XtRTemplateResource "TemplateResource" + +typedef struct { +    XtPointer extension; +} TemplateClassPart; + +typedef struct _TemplateClassRec { +    CoreClassPart	core_class; +    TemplateClassPart	template_class; +} TemplateClassRec; + +extern TemplateClassRec templateClassRec; + +typedef struct { +    /* resources */ +    char* resource; +    /* private */ +    char *private; +} TemplatePart; + +typedef struct _TemplateRec { +    CorePart		core; +#if defined(__cplusplus) || defined(c_plusplus) +    TemplatePart	c_template; +#else +    TemplatePart	template; +#endif +} TemplateRec; + +#endif /* _TemplateP_h */ diff --git a/X11/Xaw/Text.h b/X11/Xaw/Text.h new file mode 100644 index 000000000..af80ffcdb --- /dev/null +++ b/X11/Xaw/Text.h @@ -0,0 +1,373 @@ +/* $Xorg: Text.h,v 1.4 2001/02/09 02:03:46 xorgcvs Exp $ */ + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/Text.h,v 1.14 2001/01/17 19:42:34 dawes Exp $ */ + +#ifndef _XawText_h +#define _XawText_h + +#include <X11/Xaw/Simple.h> + +/* + + Class: 	textWidgetClass + Class Name:	Text + Superclass:	Simple + + Resources added by the Text widget: + + Name		     Class	     RepType		Default Value + ----		     -----	     -------		------------- + autoFill	    AutoFill	     Boolean		False + bottomMargin	    Margin	     Position		2 + displayPosition    TextPosition     XawTextPosition	0 + insertPosition	    TextPosition     XawTextPosition	0 + justify	    JustifyMode	     JustifyMode	left + leftColumn	    Column	     Column		0 + rightColumn	    Column	     Column		0 + leftMargin	    Margin	     Position		2 + rightMargin	    Margin	     Position		4 + positionCallback   Callback	     Callback		NULL + scrollHorizontal   Scroll	     Boolean		False + scrollVertical     Scroll	     Boolean		False + selectTypes        SelectTypes      Pointer            see documentation + textSink	    TextSink	     Widget		NULL + textSource	    TextSource	     Widget		NULL + topMargin	    Margin	     Position		2 + unrealizeCallback  Callback	     Callback		NULL + wrap		    Wrap	     XawTextWrapMode	XawTextWrapNever + +*/ + +typedef long XawTextPosition; + +#ifndef notdef +typedef enum { +  XawtextScrollNever, +  XawtextScrollWhenNeeded, +  XawtextScrollAlways +} XawTextScrollMode; + +typedef enum { +  XawtextResizeNever, +  XawtextResizeWidth, +  XawtextResizeHeight, +  XawtextResizeBoth +} XawTextResizeMode; +#endif + +typedef enum { +  XawtextWrapNever, +  XawtextWrapLine, +  XawtextWrapWord +} XawTextWrapMode; + +typedef enum { +  XawsdLeft, +  XawsdRight +} XawTextScanDirection; + +typedef enum { +  XawtextRead, +  XawtextAppend, +  XawtextEdit +} XawTextEditType; + +typedef enum { +  XawselectNull, +  XawselectPosition, +  XawselectChar, +  XawselectWord, +  XawselectLine, +  XawselectParagraph, +  XawselectAll, +  XawselectAlphaNumeric +} XawTextSelectType; + +typedef enum { +    XawjustifyLeft, +    XawjustifyRight, +    XawjustifyCenter, +    XawjustifyFull +} XawTextJustifyMode; + +typedef struct { +    int  firstPos; +    int  length; +    char *ptr; +    unsigned long format; +} XawTextBlock, *XawTextBlockPtr; + +#ifndef OLDXAW +typedef struct { +    int line_number; +    int column_number; +    XawTextPosition insert_position; +    XawTextPosition last_position; +    Boolean overwrite_mode; +} XawTextPositionInfo; + +typedef struct { +    XawTextPosition left, right; +    XawTextBlock *block; +} XawTextPropertyInfo; + +typedef struct _XawTextAnchor XawTextAnchor; +typedef struct _XawTextEntity XawTextEntity; +typedef struct _XawTextProperty XawTextProperty; +typedef struct _XawTextPropertyList XawTextPropertyList; +#endif + +#include <X11/Xaw/TextSink.h> +#include <X11/Xaw/TextSrc.h> + +#define XtEtextScrollNever "never" +#define XtEtextScrollWhenNeeded "whenneeded" +#define XtEtextScrollAlways "always" +#define XtEtextResizeNever "never" +#define XtEtextResizeWidth "width" +#define XtEtextResizeHeight "height" +#define XtEtextResizeBoth "both" + +#define XtEtextWrapNever	"never" +#define XtEtextWrapLine		"line" +#define XtEtextWrapWord		"word" + +#define XtNautoFill "autoFill" +#define XtNbottomMargin "bottomMargin" +#define XtNdialogHOffset "dialogHOffset" +#define XtNdialogVOffset "dialogVOffset" +#define XtNdisplayCaret "displayCaret" +#define XtNdisplayPosition "displayPosition" +#define XtNleftMargin "leftMargin" +#define XtNrightMargin "rightMargin" +#define XtNpositionCallback "positionCallback" +#define XtNscrollVertical "scrollVertical" +#define XtNscrollHorizontal "scrollHorizontal" +#define XtNselectTypes "selectTypes" +#define XtNtopMargin "topMargin" +#define XtNwrap "wrap" + +#define XtCColumn		"Column" +#define XtNleftColumn		"leftColumn" +#define XtNrightColumn		"rightColumn" + +#define XtCJustifyMode		XtCJustify +#define XtNjustifyMode		XtNjustify +#define XtEtextJustifyLeft	"left" +#define XtEtextJustifyRight	"right" +#define XtEtextJustifyCenter	"center" +#define XtEtextJustifyFull	"full" + +#define XtCAutoFill "AutoFill" +#define XtCSelectTypes "SelectTypes" +#define XtCWrap "Wrap" +#ifndef notdef +#define XtCScroll		"Scroll" +#endif + +#ifndef _XtStringDefs_h_ +#define XtNinsertPosition "insertPosition" +#ifndef notdef +#define XtNresize "resize" +#define XtCResize "Resize" +#endif +#define XtNselection		"selection" +#endif + +/* return Error code for XawTextSearch */ +#define XawTextSearchError      (-12345L) + +/* return codes from XawTextReplace */ +#define XawReplaceError	       -1 +#define XawEditDone		0 +#define XawEditError		1 +#define XawPositionError	2 + +/* XrmQuark is not unsigned long */ +#define XawTextFormat(tw,fmt) ((unsigned long)_XawTextFormat(tw) == (fmt)) + +extern unsigned long FMT8BIT; +extern unsigned long XawFmt8Bit; +extern unsigned long XawFmtWide; + +extern WidgetClass textWidgetClass; + +typedef struct _TextClassRec *TextWidgetClass; +typedef struct _TextRec      *TextWidget; + +_XFUNCPROTOBEGIN + +XrmQuark _XawTextFormat +( + TextWidget		tw + ); + +void XawTextDisplay +( + Widget			w + ); + +void XawTextEnableRedisplay +( + Widget			w + ); + +void XawTextDisableRedisplay +( + Widget			w + ); + +void XawTextSetSelectionArray +( + Widget			w, + XawTextSelectType	*sarray + ); + +void XawTextGetSelectionPos +( + Widget			w, + XawTextPosition	*begin_return, + XawTextPosition	*end_return + ); + +void XawTextSetSource +( + Widget			w, + Widget			source, + XawTextPosition	top + ); + +int XawTextReplace +( + Widget			w, + XawTextPosition	start, + XawTextPosition	end, + XawTextBlock		*text + ); + +XawTextPosition XawTextTopPosition +( + Widget			w + ); + +XawTextPosition XawTextLastPosition +( + Widget			w + ); + +void XawTextSetInsertionPoint +( + Widget			w, + XawTextPosition	position + ); + +XawTextPosition XawTextGetInsertionPoint +( + Widget			w + ); + +void XawTextUnsetSelection +( + Widget			w + ); + +void XawTextSetSelection +( + Widget			w, + XawTextPosition	left, + XawTextPosition	right + ); + +void XawTextInvalidate +( + Widget			w, + XawTextPosition	from, + XawTextPosition	to +); + +Widget XawTextGetSource +( + Widget			w + ); + +Widget XawTextGetSink +( + Widget			w + ); + +XawTextPosition XawTextSearch +( + Widget			w, +#if NeedWidePrototypes + int			dir, +#else + XawTextScanDirection	dir, +#endif + XawTextBlock		*text + ); + +void XawTextDisplayCaret +( + Widget			w, +#if NeedWidePrototypes + int			visible +#else + Boolean		visible +#endif + ); + +_XFUNCPROTOEND + +/* + * For R3 compatability only + */ +#include <X11/Xaw/AsciiSrc.h> +#include <X11/Xaw/AsciiSink.h> + +#endif /* _XawText_h */ diff --git a/X11/Xaw/TextP.h b/X11/Xaw/TextP.h new file mode 100644 index 000000000..d058e8bd3 --- /dev/null +++ b/X11/Xaw/TextP.h @@ -0,0 +1,323 @@ +/* +* $Xorg: TextP.h,v 1.4 2001/02/09 02:03:46 xorgcvs Exp $ +*/ + + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/TextP.h,v 3.21 2001/12/14 19:54:44 dawes Exp $ */ + +#ifndef _XawTextP_h +#define _XawTextP_h + +#include <X11/Xfuncproto.h> + +#include <X11/Xaw/Text.h> +#include <X11/Xaw/SimpleP.h> + +_XFUNCPROTOBEGIN + +#define MAXCUT	30000	/* Maximum number of characters that can be cut */ + +#define XawTextGetLastPosition(ctx)				\ +	XawTextSourceScan((ctx)->text.source, 0,		\ +			  XawstAll, XawsdRight, 1, True) +#define GETLASTPOS	XawTextGetLastPosition(ctx) + +#define zeroPosition ((XawTextPosition)0) + +extern XtActionsRec _XawTextActionsTable[]; +extern Cardinal _XawTextActionsTableCount; + +extern char _XawDefaultTextTranslations[]; + +#define XawLF	  0x0a +#define XawCR	  0x0d +#define XawTAB	  0x09 +#define XawBS	  0x08 +#define XawSP	  0x20 +#define XawDEL	  0x7f +#define XawESC	  0x1b +#define XawBSLASH '\\' + +/* constants that subclasses may want to know */ +#define DEFAULT_TEXT_HEIGHT ((Dimension)~0) +#define DEFAULT_TAB_SIZE	8 + +/* displayable text management data structures */ +typedef struct { +    XawTextPosition position; +    Position y; +#ifndef OLDXAW +    unsigned int textWidth; +#else +    Dimension textWidth; +#endif +} XawTextLineTableEntry, *XawTextLineTableEntryPtr; + +typedef struct { +    XawTextPosition left, right; +    XawTextSelectType type; +    Atom *selections; +    int atom_count; +    int array_size; +} XawTextSelection; + +typedef struct _XawTextSelectionSalt { +    struct _XawTextSelectionSalt *next; +    XawTextSelection	s; +    /*  +     * The element "contents" stores the CT string which is gotten in the +     * function _XawTextSaltAwaySelection() +    */  +    char		*contents; +    int			length; +} XawTextSelectionSalt; + +#ifndef OLDXAW +typedef struct _XawTextKillRing { +    struct _XawTextKillRing *next; +    char *contents; +    int length; +    unsigned refcount; +    unsigned long format; +} XawTextKillRing; + +extern XawTextKillRing *xaw_text_kill_ring; +#endif + +/* Line Tables are n+1 long - last position displayed is in last lt entry */ +typedef struct { +    XawTextPosition top;	 /* Top of the displayed text */ +    int lines;			 /* How many lines in this table */ +#ifndef OLDXAW +    int base_line;		 /* line number of first entry */ +#endif +    XawTextLineTableEntry *info; /* A dynamic array, one entry per line  */ +} XawTextLineTable, *XawTextLineTablePtr; + +typedef struct _XawTextMargin { +    Position left, right, top, bottom; +} XawTextMargin; + +typedef struct _XmuScanline XmuTextUpdate; + +#define VMargins(ctx)  ((ctx)->text.margin.top + (ctx)->text.margin.bottom) +#define HMargins(ctx)  ((ctx)->text.left_margin + (ctx)->text.margin.right) +#define RVMargins(ctx) ((ctx)->text.r_margin.top + (ctx)->text.r_margin.bottom) +#define RHMargins(ctx) ((ctx)->text.r_margin.left + (ctx)->text.r_margin.right) + +#define IsPositionVisible(ctx, pos) \ +(pos >= ctx->text.lt.info[0].position && \ +		 pos < ctx->text.lt.info[ctx->text.lt.lines].position) + +/* + * Search & Replace data structure + */ +struct SearchAndReplace { +    Boolean selection_changed;	/* flag so that the selection cannot be +				   changed out from underneath query-replace.*/ +    Widget search_popup;	/* The poppup widget that allows searches.*/ +    Widget label1;		/* The label widgets for the search window. */ +    Widget label2; +    Widget left_toggle; 	/* The left search toggle radioGroup. */ +    Widget right_toggle;	/* The right search toggle radioGroup. */ +    Widget rep_label;		/* The Replace label string. */ +    Widget rep_text;		/* The Replace text field. */ +    Widget search_text; 	/* The Search text field. */ +    Widget rep_one;		/* The Replace one button. */ +    Widget rep_all;		/* The Replace all button. */ +#ifndef OLDXAW +    Widget case_sensitive;	/* The "Case Sensitive" toggle */ +#endif +}; + +/* New fields for the Text widget class record */ +typedef struct { +  XtPointer extension; +} TextClassPart; + +/* Full class record declaration */ +typedef struct _TextClassRec { +    CoreClassPart	core_class; +    SimpleClassPart	simple_class; +    TextClassPart	text_class; +} TextClassRec; + +extern TextClassRec textClassRec; + +/* New fields for the Text widget record */ +typedef struct _TextPart { +    /* resources */ +    Widget source, sink; +    XawTextPosition insertPos; +    XawTextSelection s; +    XawTextSelectType *sarray;		     /* Array to cycle for selections */ +    XawTextSelectionSalt *salt;		     /* salted away selections */ +    int left_margin; +    int dialog_horiz_offset, dialog_vert_offset; /* position for popup dialog */ +    Boolean display_caret;		     /* insertion pt visible iff T */ +    Boolean auto_fill;			     /* Auto fill mode? */ +    XawTextScrollMode scroll_vert, scroll_horiz; +    XawTextWrapMode wrap;		     /* The type of wrapping */ +    XawTextResizeMode resize; +    XawTextMargin r_margin;		     /* The real margins */ +#ifndef OLDXAW +    XtCallbackList position_callbacks; +#else +    XtPointer pad1; +#endif + +    /* private state */ +    XawTextMargin margin;		     /* The current margins */ +    XawTextLineTable lt; +    XawTextScanDirection extendDir; +    XawTextSelection origSel;		     /* the selection being modified */ +    Time lasttime;			     /* timestamp of last processed action */ +    Time time;				     /* time of last key or button action */ +    Position ev_x, ev_y;		     /* x, y coords for key or button action */ +    Widget vbar, hbar;			     /* The scroll bars (none = NULL) */ +    struct SearchAndReplace *search;	     /* Search and replace structure */ +    Widget file_insert;			     /* The file insert popup widget */ +    XmuTextUpdate *update;		     /* Position intervals to update */ +#ifndef OLDXAW +    int line_number; +    short column_number; +    unsigned char kill_ring; +    Boolean selection_state; +#else +    XtPointer pad2; +    int pad3; +#endif +    int from_left;			     /* Cursor position */ +    XawTextPosition lastPos;		     /* Last position of source */ +    GC gc; +    Boolean showposition;		     /* True if we need to show the position */ +    Boolean hasfocus;			     /* TRUE if we currently have input focus*/ +    Boolean update_disabled;		     /* TRUE if display updating turned off */ +    Boolean clear_to_eol;		     /* Clear to eol when painting text? */ +    XawTextPosition old_insert;		     /* Last insertPos for batched updates */ +    short mult;				     /* Multiplier */ +#ifndef OLDXAW +    XawTextKillRing *kill_ring_ptr; +#else +    XtPointer pad4; +#endif + +    /* private state, shared w/Source and Sink */ +    Boolean redisplay_needed;		     /* in SetValues */ +    XawTextSelectionSalt *salt2;	     /* salted away selections */ + +#ifndef OLDXAW +    char numeric; +    char source_changed; +    Boolean overwrite;                      /* Overwrite mode */ + +    /* new resources and states, for text edition +     * Note: a fixed width font is required for these resources/states. +     */ +    short left_column, right_column; +    XawTextJustifyMode justify; +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} TextPart; + +#define XtRWrapMode	"WrapMode" +#define XtRScrollMode	"ScrollMode" +#define XtRResizeMode	"ResizeMode" +#define XtRJustifyMode	"JustifyMode" + +/* full instance record */ +typedef struct _TextRec { +    CorePart	core; +    SimplePart	simple; +    TextPart	text; +} TextRec; + +/* + * Semi-private functions + * for use by other Xaw modules only + */ +void _XawTextBuildLineTable +( + TextWidget		ctx, + XawTextPosition	top_pos, + _XtBoolean		force_rebuild + ); + +char *_XawTextGetSTRING +( + TextWidget		ctx, + XawTextPosition	left, + XawTextPosition	right + ); + +void _XawTextSaltAwaySelection +( + TextWidget		ctx, + Atom			*selections, + int			num_atoms + ); + +void _XawTextPosToXY +( + Widget			w, + XawTextPosition	pos, + Position		*x, + Position		*y + ); + +void _XawTextNeedsUpdating +( + TextWidget		ctx, + XawTextPosition	left, + XawTextPosition	right + ); + +_XFUNCPROTOEND + +#endif /* _XawTextP_h */ diff --git a/X11/Xaw/TextSink.h b/X11/Xaw/TextSink.h new file mode 100644 index 000000000..291b9600d --- /dev/null +++ b/X11/Xaw/TextSink.h @@ -0,0 +1,364 @@ +/* + * $Xorg: TextSink.h,v 1.4 2001/02/09 02:03:46 xorgcvs Exp $ + */ + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/TextSink.h,v 1.9 2001/01/17 19:42:35 dawes Exp $ */ + +#ifndef _XawTextSink_h +#define _XawTextSink_h + +#include <X11/Xaw/Text.h> + +/*********************************************************************** + * + * TextSink Object + * + ***********************************************************************/ + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + font                Font            XFontStruct *      XtDefaultFont + foreground          Foreground      Pixel              XtDefaultForeground + background          Background      Pixel              XtDefaultBackground + cursorColor	     Color	      Pixel		XtDefaultForeground +*/ +  +/* Class record constants */ + +extern WidgetClass textSinkObjectClass; + +typedef struct _TextSinkClassRec *TextSinkObjectClass; +typedef struct _TextSinkRec      *TextSinkObject; + +typedef enum {XawisOn, XawisOff} XawTextInsertState; + +#ifndef OLDXAW +#ifndef XtNcursorColor +#define XtNcursorColor		"cursorColor" +#endif + +#define XawNtextProperties	"textProperties" +#define XawCTextProperties	"TextProperties" +#define XawRTextProperties	"XawTextProperties" +#endif + +/* + * Public Functions + */ +_XFUNCPROTOBEGIN + +/* + * Function: + *	XawTextSinkDisplayText + * + * Parameters: + *	w	  - the TextSink Object + *	x	  - location to start drawing text + *	y	  - "" + *	pos1	  - location of starting and ending points in the text buffer + *	pos2	  - "" + *	highlight - hightlight this text? + * + * Description: + *	Stub function that in subclasses will display text.  + * + * Note: + *	  This function doesn't actually display anything, it is only a place + *	holder. + */ +void XawTextSinkDisplayText +( + Widget			w, +#if NeedWidePrototypes + int			x, + int			y, +#else + Position		x, + Position		y, +#endif + XawTextPosition	pos1, + XawTextPosition	pos2, +#if NeedWidePrototypes + int			highlight +#else + Boolean		highlight +#endif + ); + +/* + * Function: + *	XawTextSinkInsertCursor + * + * Parameters: + *	w	- the TextSink Object. + *	x	- location for the cursor. + *	y	- "" + *	state	- whether to turn the cursor on, or off + * + * Description: + *	Places the InsertCursor. + * + * Note: + *	  This function doesn't actually display anything, it is only a place + *	holder. + */ +void XawTextSinkInsertCursor +( + Widget			w, +#if NeedWidePrototypes + int			x, + int			y, + int			state +#else + Position		x, + Position		y, + XawTextInsertState	state +#endif + ); + +/* + * Function: + *	XawTextSinkClearToBackground + * + * Parameters: + *	w	- TextSink Object + *	x	- location of area to clear + *	y	- "" + *	width	- size of area to clear + *	height	- "" + * + * Description: + *	Clears a region of the sink to the background color. + * + * Note: + *	  This function doesn't actually display anything, it is only a place + *	holder. + */ +void XawTextSinkClearToBackground +( + Widget			w, +#if NeedWidePrototypes + int			x, + int			y, + unsigned int		width, + unsigned int		height +#else + Position		x, + Position		y, + Dimension		width, + Dimension		height +#endif + ); + +/* + * Function: + *	XawTextSinkFindPosition + * + * Parameters: + *	w		- TextSink Object + *	fromPos		- reference position + *	fromX		- reference location + *	width		- width of section to paint text + *	stopAtWordBreak - returned position is a word break? + *	resPos		- Position to return + *	resWidth	- Width actually used + *	resHeight	- Height actually used + * + * Description: + *	Finds a position in the text. + */ +void XawTextSinkFindPosition +( + Widget			w, + XawTextPosition	fromPos, + int			fromX, + int			width, +#if NeedWidePrototypes + int			stopAtWordBreak, +#else + Boolean		stopAtWordBreak, +#endif + XawTextPosition*	pos_return, + int			*width_return, + int			*height_return + ); + +/* + * Function: + *	XawTextSinkFindDistance + * + * Parameters: + *	w		- TextSink Object + *	fromPos		- starting Position + *	fromX		- x location of starting Position + *	toPos		- end Position + *	resWidth	- Distance between fromPos and toPos + *	resPos		- Acutal toPos used + *	resHeight	- Height required by this text + * + * Description: + *	Find the Pixel Distance between two text Positions. + */ +void XawTextSinkFindDistance +( + Widget			w, + XawTextPosition	fromPos, + int			fromX, + XawTextPosition	toPos, + int			*width_return, + XawTextPosition	*pos_return, + int			*height_return + ); + +/* + * Function: + *	XawTextSinkResolve + * + * Parameters: + *	w	- TextSink Object + *	pos	- reference Position + *	fromx	- reference Location + *	width	- width to move + *	resPos	- resulting position + * + * Description: + *	Resloves a location to a position. + */ +void XawTextSinkResolve +( + Widget			w, + XawTextPosition	fromPos, + int			fromX, + int			width, + XawTextPosition	*pos_return + ); + +/* + * Function: + *	XawTextSinkMaxLines + * + * Parameters: + *	w	- TextSink Object + *	height	- height to fit lines into + * + * Returns: + *	Number of lines that will fit + * + * Description: + *	Finds the Maximum number of lines that will fit in a given height. + */ +int XawTextSinkMaxLines +( + Widget			w, +#if NeedWidePrototypes + unsigned int		height +#else + Dimension		height +#endif + ); + +/* + * Function: + *	XawTextSinkMaxHeight + * + * Parameters: + *	w	- TextSink Object + *	lines	- number of lines + * + * Returns: + *	Height + * + * Description: + *	Finds the Minium height that will contain a given number lines. + */ +int XawTextSinkMaxHeight +( + Widget			w, + int			lines +); + +/* + * Function: + *	XawTextSinkSetTabs + * + * Parameters: + *	w		- TextSink Object + *	tab_count	- number of tabs in the list + *	tabs		- text positions of the tabs + * Description: + *	Sets the Tab stops. + */ +void XawTextSinkSetTabs +( + Widget			w, + int			tab_count, + int			*tabs +); +						   +/* + * Function: + *	XawTextSinkGetCursorBounds + * + * Parameters: + *	w	- TextSink Object + *	rect	- X rectance containing the cursor bounds + * Description: + *	Finds the bounding box for the insert curor (caret). + */ +void XawTextSinkGetCursorBounds +( + Widget			w, + XRectangle		*rect_return +); + +_XFUNCPROTOEND + +#endif /* _XawTextSink_h */ diff --git a/X11/Xaw/TextSinkP.h b/X11/Xaw/TextSinkP.h new file mode 100644 index 000000000..6cc873328 --- /dev/null +++ b/X11/Xaw/TextSinkP.h @@ -0,0 +1,306 @@ +/* +* $Xorg: TextSinkP.h,v 1.4 2001/02/09 02:03:46 xorgcvs Exp $ +*/ + + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/TextSinkP.h,v 1.11 2001/01/17 19:42:35 dawes Exp $ */ + +#ifndef _XawTextSinkP_h +#define _XawTextSinkP_h + +/* + * TextSink Object Private Data + */ +#include <X11/Xaw/TextSink.h> +#include <X11/Xaw/TextP.h>	/* This sink works with the Text widget */ +#include <X11/Xaw/TextSrcP.h>	/* This sink works with the Text Source */ +#include <X11/Xmu/Xmu.h> + +#ifndef OLDXAW +/* font/fontset defined? */ +#define XAW_TPROP_FONT		(1<<0) +#define XAW_TPROP_FONTSET	(1<<1) + +/* extra attributes */ +#define XAW_TPROP_FOREGROUND	(1<<2) +#define XAW_TPROP_BACKGROUND	(1<<3) +#define XAW_TPROP_FPIXMAP	(1<<4) +#define XAW_TPROP_BPIXMAP	(1<<5) +#define XAW_TPROP_UNDERLINE	(1<<6) +#define XAW_TPROP_OVERSTRIKE	(1<<7) +#define XAW_TPROP_SUBSCRIPT	(1<<8) +#define XAW_TPROP_SUPERSCRIPT	(1<<9) + +/* xlfd attributes */ +#define XAW_TPROP_FOUNDRY	(1<<0) +#define XAW_TPROP_FAMILY	(1<<1) +#define XAW_TPROP_WEIGHT	(1<<2) +#define XAW_TPROP_SLANT		(1<<3) +#define XAW_TPROP_SETWIDTH	(1<<4) +#define XAW_TPROP_ADDSTYLE	(1<<5) +#define XAW_TPROP_PIXELSIZE	(1<<6) +#define XAW_TPROP_POINTSIZE	(1<<7) +#define XAW_TPROP_RESX		(1<<8) +#define XAW_TPROP_RESY		(1<<9) +#define XAW_TPROP_SPACING	(1<<10) +#define XAW_TPROP_AVGWIDTH	(1<<11) +#define XAW_TPROP_REGISTRY	(1<<12) +#define XAW_TPROP_ENCODING	(1<<13) +struct _XawTextProperty {	/* to be extended/modified */ +    XrmQuark identifier, code; +    unsigned long mask; +    XFontStruct *font; +    XFontSet fontset; +    Pixel foreground, background; +    Pixmap foreground_pixmap, background_pixmap; +    XrmQuark xlfd; + +    unsigned long xlfd_mask; +    XrmQuark foundry, family, weight, slant, setwidth, addstyle, pixel_size, +	     point_size, res_x, res_y, spacing, avgwidth, registry, encoding; + +    short underline_position, underline_thickness; +}; + +struct _XawTextPropertyList { +    XrmQuark identifier; +    Screen *screen; +    Colormap colormap; +    int depth; +    XawTextProperty **properties; +    Cardinal num_properties; +    XawTextPropertyList *next; +}; + +typedef struct _XawTextPaintStruct XawTextPaintStruct; +struct _XawTextPaintStruct { +    XawTextPaintStruct *next; +    int x, y, width; +    char *text;			/* formatted text */ +    Cardinal length;		/* length of text */ +    XawTextProperty *property; +    int max_ascent, max_descent; +    XmuArea *backtabs; +    Boolean highlight; +}; + +typedef struct { +    XmuArea *clip, *hightabs;			/* clip list */ +    XawTextPaintStruct *paint, *bearings;	/* drawing information */ +} XawTextPaintList; + +typedef struct { +    XtPointer next_extension; +    XrmQuark record_type; +    long version; +    Cardinal record_size; +    Bool (*BeginPaint)(Widget); +    void (*PreparePaint)(Widget, int, int, +			 XawTextPosition, XawTextPosition, Bool); +    void (*DoPaint)(Widget); +    Bool (*EndPaint)(Widget); +} TextSinkExtRec, *TextSinkExt; +#endif + +typedef void (*_XawSinkDisplayTextProc) +     (Widget, int, int, XawTextPosition, XawTextPosition, Bool); + +typedef void (*_XawSinkInsertCursorProc) +     (Widget, int, int, XawTextInsertState); + +typedef void (*_XawSinkClearToBackgroundProc) +     (Widget, int, int, unsigned int, unsigned int); + +typedef void (*_XawSinkFindPositionProc) +     (Widget, XawTextPosition, int, int, Bool, XawTextPosition*, int*, int*); + +typedef void (*_XawSinkFindDistanceProc) +     (Widget, XawTextPosition, int, XawTextPosition, int*, +      XawTextPosition*, int*); + +typedef void (*_XawSinkResolveProc) +     (Widget, XawTextPosition, int, int, XawTextPosition*); + +typedef int  (*_XawSinkMaxLinesProc) +     (Widget, unsigned int); + +typedef int  (*_XawSinkMaxHeightProc) +     (Widget, int); + +typedef void (*_XawSinkSetTabsProc) +     (Widget, int, short*); + +typedef void (*_XawSinkGetCursorBoundsProc) +     (Widget, XRectangle*); + +typedef struct _TextSinkClassPart { +    _XawSinkDisplayTextProc DisplayText; +    _XawSinkInsertCursorProc InsertCursor; +    _XawSinkClearToBackgroundProc ClearToBackground; +    _XawSinkFindPositionProc FindPosition; +    _XawSinkFindDistanceProc FindDistance; +    _XawSinkResolveProc Resolve; +    _XawSinkMaxLinesProc MaxLines; +    _XawSinkMaxHeightProc MaxHeight; +    _XawSinkSetTabsProc	SetTabs; +    _XawSinkGetCursorBoundsProc GetCursorBounds; +#ifndef OLDXAW +    TextSinkExt extension; +#endif +} TextSinkClassPart; + +/* Full class record */ +typedef struct _TextSinkClassRec { +    ObjectClassPart     object_class; +    TextSinkClassPart	text_sink_class; +} TextSinkClassRec; + +extern TextSinkClassRec textSinkClassRec; + +/* New fields for the TextSink object */ +typedef struct { +    /* resources */ +    Pixel foreground;		/* Foreground color */ +    Pixel background;		/* Background color */ + +    /* private */ +    Position *tabs;		/* The tab stops as pixel values */ +    short *char_tabs;		/* The tabs stops as character values */ +    int tab_count;		/* number of items in tabs */ + +#ifndef OLDXAW +    /* more resources */ +    Pixel cursor_color; +    XawTextPropertyList *properties; +    XawTextPaintList *paint; +    XtPointer pad[2];	/* for future use and keep binary compatability */ +#endif +} TextSinkPart; + +/* Full instance record */ +typedef struct _TextSinkRec { +    ObjectPart	 object; +    TextSinkPart text_sink; +} TextSinkRec; + +/* Semi private routines */ +#ifndef OLDXAW +XawTextPropertyList *XawTextSinkConvertPropertyList +( + String			 name, + String			 spec, + Screen			*screen, + Colormap		 Colormap, + int			 depth + ); + +XawTextProperty *XawTextSinkGetProperty +( + Widget			 w, + XrmQuark		 property + ); + +XawTextProperty *XawTextSinkCopyProperty +( + Widget			w, + XrmQuark		property + ); + +XawTextProperty *XawTextSinkAddProperty +( + Widget			 w, + XawTextProperty	*property + ); + +XawTextProperty *XawTextSinkCombineProperty +( + Widget			 w, + XawTextProperty	*result_in_out, + XawTextProperty	*property, + Bool			 override + ); + +Bool XawTextSinkBeginPaint +( + Widget			w + ); + +void XawTextSinkPreparePaint +( + Widget			w, + int			y, + int			line, + XawTextPosition	from, + XawTextPosition	to, + Bool			highlight +); + +void XawTextSinkDoPaint +( + Widget			w + ); + +Bool XawTextSinkEndPaint +( + Widget			w + ); +#endif + +#define XtInheritDisplayText	   ((_XawSinkDisplayTextProc)_XtInherit) +#define XtInheritInsertCursor	   ((_XawSinkInsertCursorProc)_XtInherit) +#define XtInheritClearToBackground ((_XawSinkClearToBackgroundProc)_XtInherit) +#define XtInheritFindPosition	   ((_XawSinkFindPositionProc)_XtInherit) +#define XtInheritFindDistance	   ((_XawSinkFindDistanceProc)_XtInherit) +#define XtInheritResolve	   ((_XawSinkResolveProc)_XtInherit) +#define XtInheritMaxLines	   ((_XawSinkMaxLinesProc)_XtInherit) +#define XtInheritMaxHeight	   ((_XawSinkMaxHeightProc)_XtInherit) +#define XtInheritSetTabs	   ((_XawSinkSetTabsProc)_XtInherit) +#define XtInheritGetCursorBounds   ((_XawSinkGetCursorBoundsProc)_XtInherit) + +#endif /* _XawTextSinkP_h */ diff --git a/X11/Xaw/TextSrc.h b/X11/Xaw/TextSrc.h new file mode 100644 index 000000000..817132d48 --- /dev/null +++ b/X11/Xaw/TextSrc.h @@ -0,0 +1,280 @@ +/* + * $Xorg: TextSrc.h,v 1.4 2001/02/09 02:03:47 xorgcvs Exp $ + */ + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/TextSrc.h,v 1.11 2001/01/17 19:42:35 dawes Exp $ */ + +#ifndef _XawTextSrc_h +#define _XawTextSrc_h + +#include <X11/Xaw/Text.h> + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + callback	     Callback		Callback	NULL + editType	     EditType		XawTextEditType	XawtextRead + enableUndo	     Undo		Boolean		False + sourceChanged	     Changed		Boolean		False + +*/ +  +/* Class record constants */ +extern WidgetClass textSrcObjectClass; + +typedef struct _TextSrcClassRec *TextSrcObjectClass; +typedef struct _TextSrcRec      *TextSrcObject; + +typedef enum { +    XawstPositions, +    XawstWhiteSpace, +    XawstEOL, +    XawstParagraph, +    XawstAll, +    XawstAlphaNumeric +  } XawTextScanType; + +typedef enum { +    Normal, +    Selected +} highlightType; + +typedef enum { +    XawsmTextSelect, +    XawsmTextExtend +} XawTextSelectionMode; + +typedef enum { +    XawactionStart, +    XawactionAdjust, +    XawactionEnd +} XawTextSelectionAction; + +#define XawTextReadError -1 +#define XawTextScanError -1 + +#ifndef OLDXAW +#define XtNenableUndo		"enableUndo" +#define XtCUndo			"Undo" + +#define XtNsourceChanged	"sourceChanged" +#define XtCChanged		"Changed" + +#define XtNpropertyCallback	"propertyCallback" +#endif + +/* + * Public Functions + */ +_XFUNCPROTOBEGIN + +/* + * Function: + *	XawTextSourceRead + * + * Parameters: + *	w      - TextSrc Object + *	pos    - position of the text to retreive + *	text   - text block that will contain returned text + *	length - maximum number of characters to read + * + * Description: + *	This function reads the source. + * + * Returns: + *	The number of characters read into the buffer + */ +XawTextPosition XawTextSourceRead +( + Widget			w, + XawTextPosition	pos, + XawTextBlock		*text_return, + int			length + ); + +/* + * Function: + *	XawTextSourceReplace + * + * Parameters: + *	src	 - Text Source Object + *	startPos - ends of text that will be removed + *	endPos	 - "" + *	text	 - new text to be inserted into buffer at startPos + * + * Description: + *	Replaces a block of text with new text + * + * Returns: + *	XawEditError or XawEditDone + */ +int XawTextSourceReplace +( + Widget			w, + XawTextPosition	start, + XawTextPosition	end, + XawTextBlock		*text + ); + +/* + * Function: + *	XawTextSourceScan + * + * Parameters: + *	w	 - TextSrc Object + *	position - position to start scanning + *	type	 - type of thing to scan for + *	dir	 - direction to scan + *	count	 - which occurance if this thing to search for + *	include	 - whether or not to include the character found in + *		   the position that is returned.  + * + * Description: + *	Scans the text source for the number and type of item specified. + * + * Returns: + *	The position of the text + */ +XawTextPosition XawTextSourceScan +( + Widget			w, + XawTextPosition	position, +#if NeedWidePrototypes + int			type, + int			dir, + int			count, + int			include +#else + XawTextScanType	type, + XawTextScanDirection	dir, + int			count, + Boolean		include +#endif + ); + +/* + * Function: + *	XawTextSourceSearch + * + * Parameters: + *	w	 - TextSource Object + *	position - position to start scanning + *	dir	 - direction to search + *	text	 - the text block to search for + * + * Description: + *	Searchs the text source for the text block passed. + * + * Returns: + *	The position of the text we are searching for or XawTextSearchError + */ +XawTextPosition XawTextSourceSearch +( + Widget			w, + XawTextPosition	position, +#if NeedWidePrototypes + int			dir, +#else + XawTextScanDirection	dir, +#endif + XawTextBlock		*text + ); + +/* + * Function: + *	XawTextSourceConvertSelection + * + * Parameters: + *	w	  - TextSrc object + *	selection - current selection atom + *	target	  - current target atom + *	type	  - type to conver the selection to + *	value	  - return value that has been converted + *	length	  - "" + *	format	  - format of the returned value + * + * Returns: + *	True if the selection has been converted + */ +Boolean XawTextSourceConvertSelection +( + Widget			w, + Atom			*selection, + Atom			*target, + Atom			*type, + XtPointer		*value_return, + unsigned long		*length_return, + int			*format_return + ); + +/* + * Function: + *	XawTextSourceSetSelection + * + * Parameters: + *	w	  - TextSrc object + *	left	  - bounds of the selection + *	right	  - "" + *	selection - selection atom + * + * Description: + *	Allows special setting of the selection. + */ +void XawTextSourceSetSelection +( + Widget			w, + XawTextPosition	start, + XawTextPosition	end, + Atom			selection + ); + +_XFUNCPROTOEND + +#endif /* _XawTextSrc_h */ diff --git a/X11/Xaw/TextSrcP.h b/X11/Xaw/TextSrcP.h new file mode 100644 index 000000000..e26557b90 --- /dev/null +++ b/X11/Xaw/TextSrcP.h @@ -0,0 +1,264 @@ +/* +* $Xorg: TextSrcP.h,v 1.4 2001/02/09 02:03:47 xorgcvs Exp $ +*/ + + +/*********************************************************** + +Copyright 1987, 1988, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +******************************************************************/ +/* $XFree86: xc/lib/Xaw/TextSrcP.h,v 1.14 2001/12/14 19:54:45 dawes Exp $ */ + +#ifndef _XawTextSrcP_h +#define _XawTextSrcP_h + +/* + * TextSrc Object Private Data + */ +#include <X11/Xfuncproto.h> + +#include <X11/Xaw/TextSrc.h> +#include <X11/Xaw/TextP.h>	/* This source works with the Text widget */ + +_XFUNCPROTOBEGIN + +#ifndef OLDXAW +struct _XawTextAnchor { +    XawTextPosition position; +    XawTextEntity *entities, *cache; +}; + +#define	XAW_TENTF_HIDE		0x0001 +#define XAW_TENTF_READ		0x0002 +#define XAW_TENTF_REPLACE	0x0004 +struct _XawTextEntity { +    short type; +    short flags; +    XawTextEntity *next; +    XtPointer data; +    XawTextPosition offset;	/* from the anchor */ +    Cardinal length; +    XrmQuark property; +}; +#endif + +#if 0	/* no longer used */ +/* New fields for the TextSrc object class */ +typedef struct { +  XtPointer		next_extension; +  XrmQuark		record_type; +  long			version; +  Cardinal		record_size; +  int			(*Input)(); +} TextSrcExtRec, *TextSrcExt; +#endif + +typedef XawTextPosition (*_XawSrcReadProc) +     (Widget, XawTextPosition, XawTextBlock*, int); + +typedef int (*_XawSrcReplaceProc) +     (Widget, XawTextPosition, XawTextPosition, XawTextBlock*); + +typedef XawTextPosition (*_XawSrcScanProc) +     (Widget, XawTextPosition, XawTextScanType, XawTextScanDirection, +      int, Bool); + +typedef XawTextPosition (*_XawSrcSearchProc) +     (Widget, XawTextPosition, XawTextScanDirection, XawTextBlock*); + +typedef void (*_XawSrcSetSelectionProc) +     (Widget, XawTextPosition, XawTextPosition, Atom); + +typedef Boolean (*_XawSrcConvertSelectionProc) +     (Widget, Atom*, Atom*, Atom*, XtPointer*, unsigned long*, int*); + +typedef struct _TextSrcClassPart { +    _XawSrcReadProc Read; +    _XawSrcReplaceProc Replace; +    _XawSrcScanProc Scan; +    _XawSrcSearchProc Search; +    _XawSrcSetSelectionProc SetSelection; +    _XawSrcConvertSelectionProc ConvertSelection; +#ifndef OLDXAW +    XtPointer extension; +#endif +} TextSrcClassPart; + +/* Full class record */ +typedef struct _TextSrcClassRec { +    ObjectClassPart     object_class; +    TextSrcClassPart	textSrc_class; +} TextSrcClassRec; + +extern TextSrcClassRec textSrcClassRec; + +#ifndef OLDXAW +typedef struct _XawTextUndo XawTextUndo; +#endif + +/* New fields for the TextSrc object */ +typedef struct { +    /* resources */ +    XawTextEditType	edit_mode; +    XrmQuark text_format;		/* 2 formats: FMT8BIT for Ascii +					   FMTWIDE for ISO 10646 */ +#ifndef OLDXAW +    XtCallbackList callback;		/* A callback list to call when the +					   source is changed */ +    Boolean changed; +    Boolean enable_undo; + +    /* private state */ +    Boolean undo_state;			/* to protect undo manipulation */ +    XawTextUndo *undo; +    WidgetList text;			/* TextWidget's using this source */ +    Cardinal num_text; +    XtCallbackList property_callback; +    XawTextAnchor **anchors; +    int num_anchors; +    XtPointer pad[1];	/* for future use and keep binary compatability */ +#endif +} TextSrcPart; + +/* Full instance record */ +typedef struct _TextSrcRec { +    ObjectPart	object; +    TextSrcPart	textSrc; +} TextSrcRec; + +/* + * Semiprivate declarations of functions used in other modules + */ +char* _XawTextWCToMB +( + Display	*display, + wchar_t	*wstr, + int		*len_in_out + ); + +wchar_t* _XawTextMBToWC +( + Display	*display, + char		*str, + int		*len_in_out + ); + +#ifndef OLDXAW +XawTextAnchor *XawTextSourceAddAnchor +( + Widget			source, + XawTextPosition	position + ); + +XawTextAnchor *XawTextSourceFindAnchor +( + Widget			source, + XawTextPosition	position + ); + +XawTextAnchor *XawTextSourceNextAnchor +( + Widget			 source, + XawTextAnchor		*anchor + ); + +XawTextAnchor *XawTextSourcePrevAnchor +( + Widget			 source, + XawTextAnchor		*anchor + ); + +XawTextAnchor *XawTextSourceRemoveAnchor +( + Widget			 source, + XawTextAnchor		*anchor + ); + +Bool XawTextSourceAnchorAndEntity +( + Widget			  w, + XawTextPosition	  position, + XawTextAnchor		**anchor_return, + XawTextEntity		**entity_return + ); + +XawTextEntity *XawTextSourceAddEntity +( + Widget			source, + int			type, + int			flags, + XtPointer		data, + XawTextPosition	position, + Cardinal		length, + XrmQuark		property + ); + +void XawTextSourceClearEntities +( + Widget			w, + XawTextPosition	left, + XawTextPosition	right + ); +#endif + +#if 0	/* no longer used */ +typedef XawTextPosition (*_XawTextPositionFunc)(); +#endif + +#define XtInheritInput			((_XawTextPositionFunc)_XtInherit) +#define XtInheritRead			((_XawSrcReadProc)_XtInherit) +#define XtInheritReplace		((_XawSrcReplaceProc)_XtInherit) +#define XtInheritScan			((_XawSrcScanProc)_XtInherit) +#define XtInheritSearch			((_XawSrcSearchProc)_XtInherit) +#define XtInheritSetSelection		((_XawSrcSetSelectionProc)_XtInherit) +#define XtInheritConvertSelection     ((_XawSrcConvertSelectionProc)_XtInherit) +#if 0 +#define XtTextSrcExtVersion	      1 +#define XtTextSrcExtTypeString        "XT_TEXTSRC_EXT" +#endif + +_XFUNCPROTOEND + +#endif /* _XawTextSrcP_h */ diff --git a/X11/Xaw/Tip.h b/X11/Xaw/Tip.h new file mode 100644 index 000000000..f5b8d9be5 --- /dev/null +++ b/X11/Xaw/Tip.h @@ -0,0 +1,120 @@ +/* + * Copyright (c) 1999 by The XFree86 Project, Inc. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL + * THE XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF + * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + * Except as contained in this notice, the name of the XFree86 Project shall + * not be used in advertising or otherwise to promote the sale, use or other + * dealings in this Software without prior written authorization from the + * XFree86 Project. + * + * Author: Paulo César Pereira de Andrade + */ + +/* $XFree86$ */ + +#ifndef _XawTip_h +#define _XawTip_h + +/* + * Tip Widget + */ + +#include <X11/Xaw/Simple.h> + +/* Resources: + +  Name		    Class		RepType		Default Value +  ----		    -----		-------		------------- +  background	    Background		Pixel		XtDefaultBackground +  backgroundPixmap  BackgroundPixmap	Pixmap		XtUnspecifiedPixmap +  border	    BorderColor		Pixel		XtDefaultForeground +  borderWidth	    BorderWidth		Dimension	1 +  bottomMargin	    VerticalMargins	Dimension	2 +  destroyCallback   Callback		XtCallbackList	NULL +  displayList	    DisplayList		XawDisplayList*	NULL +  font		    Font		XFontStruct*	XtDefaultFont +  foreground	    Foreground		Pixel		XtDefaultForeground +  height	    Height		Dimension	text height +  leftMargin	    HorizontalMargins	Dimension	6 +  rightMargin	    HorizontalMargins	Dimension	6 +  timeout	    Timeout		Int		500 +  topMargin	    VerticalMargins	Dimension	2 +  width		    Width		Dimension	text width +  x		    Position		Position	0 +  y		    Position		Position	0 + +*/ + +typedef struct _TipClassRec *TipWidgetClass; +typedef struct _TipRec *TipWidget; + +extern WidgetClass tipWidgetClass; + +#define XtNbottomMargin		"bottomMargin" +#define XawNdisplayList		"displayList" +#define XtNencoding		"encoding" +#define XtNleftMargin		"leftMargin" +#define XtNrightMargin		"rightMargin" +#define XtNtimeout		"timeout" +#define XtNtopMargin		"topMargin" +#define XtNtip			"tip" + +#define XawCDisplayList		"DisplayList" +#define XtCHorizontalMargins	"HorizontalMargins" +#define XtCTimeout		"Timeout" +#define XtCVerticalMargins	"VerticalMargins" +#define XtCTip			"Tip" + +#define XawRDisplayList		"XawDisplayList" + +/* + * Public Functions + */ +/* + * Function: + *	XawTipEnable + * + * Parameters: + *	w - widget + * + * Description: + *	Enables the tip event handler for this widget. + */ +void XawTipEnable +( + Widget		w + ); + +/* + * Function: + *	XawTipEnable + * + * Parameters: + *	w - widget + * + * Description: + *	Disables the tip event handler for this widget. + */ +void XawTipDisable +( + Widget		w + ); + +#endif /* _XawTip_h */ diff --git a/X11/Xaw/TipP.h b/X11/Xaw/TipP.h new file mode 100644 index 000000000..2b9e12619 --- /dev/null +++ b/X11/Xaw/TipP.h @@ -0,0 +1,77 @@ +/* + * Copyright (c) 1999 by The XFree86 Project, Inc. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL + * THE XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF + * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + * + * Except as contained in this notice, the name of the XFree86 Project shall + * not be used in advertising or otherwise to promote the sale, use or other + * dealings in this Software without prior written authorization from the + * XFree86 Project. + * + * Author: Paulo César Pereira de Andrade + */ + +/* $XFree86$ */ + +#ifndef _XawTipP_h +#define _XawTipP_h + +#include <X11/Xaw/Tip.h> +#include <X11/CoreP.h> +#include <X11/Xaw/XawInit.h> + +typedef struct { +    XtPointer extension; +} TipClassPart; + +typedef struct _TipClassRec { +    CoreClassPart core_class; +    TipClassPart tip_class; +} TipClassRec; + +extern TipClassRec tipClassRec; + +typedef struct _TipPart { +    /* resources */ +    Pixel foreground; +    XFontStruct	*font; +    XFontSet fontset; +    Dimension top_margin; +    Dimension bottom_margin; +    Dimension left_margin; +    Dimension right_margin; +    int backing_store; +    int timeout; +    XawDisplayList *display_list; + +    /* private */ +    GC gc; +    XtIntervalId timer; +    String label; +    Boolean international; +    unsigned char encoding; +    XtPointer pad[4]; +} TipPart; + +typedef struct _TipRec { +    CorePart core; +    TipPart tip; +} TipRec; + +#endif /* _XawTipP_h */ diff --git a/X11/Xaw/Toggle.h b/X11/Xaw/Toggle.h new file mode 100644 index 000000000..4858961f2 --- /dev/null +++ b/X11/Xaw/Toggle.h @@ -0,0 +1,181 @@ +/* + * $Xorg: Toggle.h,v 1.4 2001/02/09 02:03:47 xorgcvs Exp $ + * +Copyright 1989, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + */ +/* $XFree86: xc/lib/Xaw/Toggle.h,v 1.5 2001/01/17 19:42:35 dawes Exp $ */ + +/* + * ToggleP.h - Private definitions for Toggle widget + * + * Author: Chris D. Peterson + *         MIT X Consortium + *         kit@expo.lcs.mit.edu + *   + * Date:   January 12, 1989 + */ + +#ifndef _XawToggle_h +#define _XawToggle_h + +#include <X11/Xaw/Command.h> + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + radioGroup          RadioGroup         Widget          NULL              + + radioData           RadioData          Pointer         (XPointer) Widget  ++ + state               State              Boolean         Off + + background	     Background		Pixel		XtDefaultBackground + bitmap		     Pixmap		Pixmap		None + border		     BorderColor	Pixel		XtDefaultForeground + borderWidth	     BorderWidth	Dimension	1 + callback	     Callback		Pointer		NULL + cursor		     Cursor		Cursor		None + destroyCallback     Callback		Pointer		NULL + displayList	     DisplayList	XawDisplayList*	NULL + font		     Font		XFontStructx*	XtDefaultFont + foreground	     Foreground		Pixel		XtDefaultForeground + height		     Height		Dimension	text height + highlightThickness  Thickness		Dimension	2 + insensitiveBorder   Insensitive	Pixmap		Gray + internalHeight	     Height		Dimension	2 + internalWidth	     Width		Dimension	4 + justify	     Justify		XtJustify	XtJustifyCenter + label		     Label		String		NULL + mappedWhenManaged   MappedWhenManaged	Boolean		True + resize		     Resize		Boolean		True + sensitive	     Sensitive		Boolean		True + width		     Width		Dimension	text width + x		     Position		Position	0 + y		     Position		Position	0 + ++ To use the toggle as a radio toggle button, set this resource to point to +  any other widget in the radio group. + +++ This is the data returned from a call to XtToggleGetCurrent, by default +   this is set to the name of toggle widget. + +*/ + +/* + * These should be in StringDefs.h but aren't so we will define + * them here if they are needed + */ +#define XtCWidget "Widget" +#define XtCState "State" +#define XtCRadioGroup "RadioGroup" +#define XtCRadioData "RadioData" + +#ifndef _XtStringDefs_h_ +#define XtRWidget "Widget" +#endif + +#define XtNstate "state" +#define XtNradioGroup "radioGroup" +#define XtNradioData "radioData" + +extern WidgetClass               toggleWidgetClass; + +typedef struct _ToggleClassRec   *ToggleWidgetClass; +typedef struct _ToggleRec        *ToggleWidget; + +/* + * Public Functions + */ + +_XFUNCPROTOBEGIN +    +/* + * Function: + *	XawToggleChangeRadioGroup + * + * Parameters: + *	w	    - toggle widget to change lists + *	radio_group - any widget in the new list + * + * Description: + *	Allows a toggle widget to change radio lists. + */ +void XawToggleChangeRadioGroup +( + Widget		w, + Widget		radio_group + ); + +/* + * Function: + *	XawToggleGetCurrent + * + * Parameters: + *	radio_group - any toggle widget in the toggle list + * + * Description: + *	  Returns the RadioData associated with the toggle + *                   widget that is currently active in a toggle list. + * Returns: + *	The XtNradioData associated with the toggle widget + */ + +XtPointer XawToggleGetCurrent +( + Widget		radio_group + ); + +/* + * Function: + *	XawToggleSetCurrent + * + * Parameters: + *	radio_group - any toggle widget in the toggle list + *	radio_data - radio data of the toggle widget to set + * + * Description: + *	Sets the Toggle widget associated with the radio_data specified. + */ +void XawToggleSetCurrent +( + Widget		radio_group, + XtPointer	radio_data + ); + +/* + * Function: + *	XawToggleUnsetCurrent + * + * Parameters: + *	radio_group - any toggle widget in the toggle list + * + * Description: + *	Unsets all Toggles in the radio_group specified. + */ +void XawToggleUnsetCurrent +( + Widget		radio_group + ); + +_XFUNCPROTOEND + +#endif /* _XawToggle_h */ diff --git a/X11/Xaw/ToggleP.h b/X11/Xaw/ToggleP.h new file mode 100644 index 000000000..c1477379d --- /dev/null +++ b/X11/Xaw/ToggleP.h @@ -0,0 +1,95 @@ +/* $Xorg: ToggleP.h,v 1.4 2001/02/09 02:03:47 xorgcvs Exp $ */ + +/* + +Copyright 1989, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + +*/ +/* $XFree86: xc/lib/Xaw/ToggleP.h,v 1.7 2001/01/17 19:42:35 dawes Exp $ */ + +/*  + * Author: Chris D. Peterson + *         MIT X Consortium + *         kit@expo.lcs.mit.edu + *   + * Date:   January 12, 1989 + * + */ + +#ifndef _XawToggleP_h +#define _XawToggleP_h + +#include <X11/Xaw/Toggle.h> +#include <X11/Xaw/CommandP.h> + +/* + * Toggle Widget Private Data + */ +#define streq(a, b)	(strcmp((a), (b)) == 0) + +typedef struct _RadioGroup { +    struct _RadioGroup *prev, *next; /* Pointers to other elements in group  */ +    Widget widget;		     /* Widget corrosponding to this element */ +} RadioGroup; + +/* New fields for the Toggle widget class */ +typedef struct _ToggleClass  { +    XtActionProc Set; +    XtActionProc Unset; +    XtPointer extension; +} ToggleClassPart; + +/* class record declaration */ +typedef struct _ToggleClassRec { +    CoreClassPart	core_class; +    SimpleClassPart	simple_class; +    LabelClassPart	label_class; +    CommandClassPart	command_class; +    ToggleClassPart	toggle_class; +} ToggleClassRec; + +extern ToggleClassRec toggleClassRec; + +/* New fields for the Toggle widget */ +typedef struct { +    /* resources */ +    Widget widget; +    XtPointer radio_data; + +    /* private */ +    RadioGroup *radio_group; +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} TogglePart; + +/* Full widget declaration */ +typedef struct _ToggleRec { +    CorePart	core; +    SimplePart	simple; +    LabelPart	label; +    CommandPart	command; +    TogglePart	toggle; +} ToggleRec; + +#endif /* _XawToggleP_h */ diff --git a/X11/Xaw/Tree.h b/X11/Xaw/Tree.h new file mode 100644 index 000000000..ae0990aa5 --- /dev/null +++ b/X11/Xaw/Tree.h @@ -0,0 +1,138 @@ +/* + * $Xorg: Tree.h,v 1.4 2001/02/09 02:03:47 xorgcvs Exp $ + * + +Copyright 1990, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + * Copyright 1989 Prentice Hall + * + * Permission to use, copy, modify, and distribute this software for any + * purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation. + *  + * Prentice Hall and the authors disclaim all warranties with regard + * to this software, including all implied warranties of merchantability and + * fitness.  In no event shall Prentice Hall or the authors be liable + * for any special, indirect or cosequential damages or any damages whatsoever + * resulting from loss of use, data or profits, whether in an action of + * contract, negligence or other tortious action, arising out of or in + * connection with the use or performance of this software. + *  + * Authors:  Jim Fulton, MIT X Consortium, + *           based on a version by Douglas Young, Prentice Hall + *  + * This widget is based on the Tree widget described on pages 397-419 of + * Douglas Young's book "The X Window System, Programming and Applications  + * with Xt OSF/Motif Edition."  The layout code has been rewritten to use + * additional blank space to make the structure of the graph easier to see + * as well as to support vertical trees. + */ +/* $XFree86: xc/lib/Xaw/Tree.h,v 1.6 2001/01/17 19:42:35 dawes Exp $ */ + + +#ifndef _XawTree_h +#define _XawTree_h + +#include <X11/Xmu/Converters.h> + +/****************************************************************************** + *  + * Tree Widget (subclass of ConstraintClass) + *  + ****************************************************************************** + *  + * Parameters: + *  + *  Name                Class              Type            Default + *  ----                -----              ----            ------- + *  + *  autoReconfigure     AutoReconfigure    Boolean         FALSE + *  background          Background         Pixel           XtDefaultBackground + *  foreground          Foreground         Pixel           XtDefaultForeground + *  gravity             Gravity            XtGravity       West + *  hSpace              HSpace             Dimension       20 + *  lineWidth           LineWidth          Dimension       0 + *  vSpace              VSpace             Dimension       6 + *  + *  + * Constraint Resources attached to children: + *  + *  treeGC              TreeGC             GC              NULL + *  treeParent          TreeParent         Widget          NULL + *  + *  + *****************************************************************************/ + +                                        /* new instance field names */ +#ifndef _XtStringDefs_h_ +#define XtNhSpace "hSpace" +#define XtNvSpace "vSpace" +#define XtCHSpace "HSpace" +#define XtCVSpace "VSpace" +#endif + +#define XtNautoReconfigure "autoReconfigure" +#define XtNlineWidth "lineWidth" +#define XtNtreeGC "treeGC" +#define XtNtreeParent "treeParent" +#define XtNgravity "gravity" + +                                        /* new class field names */ +#define XtCAutoReconfigure "AutoReconfigure" +#define XtCLineWidth "LineWidth" +#define XtCTreeGC "TreeGC" +#define XtCTreeParent "TreeParent" +#define XtCGravity "Gravity" + +#define XtRGC "GC" + +#ifndef OLDXAW +#ifndef XawNdisplayList +#define XawNdisplayList "displayList" +#endif +  +#ifndef XawCDisplayList +#define XawCDisplayList "DisplayList" +#endif + +#ifndef XawRDisplayList +#define XawRDisplayList "XawDisplayList" +#endif +#endif +                                        /* external declarations */ +extern WidgetClass treeWidgetClass; + +typedef struct _TreeClassRec *TreeWidgetClass; +typedef struct _TreeRec      *TreeWidget; + +_XFUNCPROTOBEGIN + +void XawTreeForceLayout +( + Widget		tree + ); + +_XFUNCPROTOEND + +#endif /* _XawTree_h */ diff --git a/X11/Xaw/TreeP.h b/X11/Xaw/TreeP.h new file mode 100644 index 000000000..00e59c0a4 --- /dev/null +++ b/X11/Xaw/TreeP.h @@ -0,0 +1,141 @@ +/* + * $Xorg: TreeP.h,v 1.4 2001/02/09 02:03:47 xorgcvs Exp $ + * + +Copyright 1990, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + * Copyright 1989 Prentice Hall + * + * Permission to use, copy, modify, and distribute this software for any + * purpose and without fee is hereby granted, provided that the above + * copyright notice appear in all copies and that both the copyright notice + * and this permission notice appear in supporting documentation. + *  + * Prentice Hall and the authors disclaim all warranties with regard + * to this software, including all implied warranties of merchantability and + * fitness.  In no event shall Prentice Hall or the authors be liable + * for any special, indirect or cosequential damages or any damages whatsoever + * resulting from loss of use, data or profits, whether in an action of + * contract, negligence or other tortious action, arising out of or in + * connection with the use or performance of this software. + *  + * Authors:  Jim Fulton, MIT X Consortium, + *           based on a version by Douglas Young, Prentice Hall + *  + * This widget is based on the Tree widget described on pages 397-419 of + * Douglas Young's book "The X Window System, Programming and Applications  + * with Xt OSF/Motif Edition."  The layout code has been rewritten to use + * additional blank space to make the structure of the graph easier to see + * as well as to support vertical trees. + */ +/* $XFree86: xc/lib/Xaw/TreeP.h,v 1.6 2001/01/17 19:42:35 dawes Exp $ */ + + +#ifndef _XawTreeP_h +#define _XawTreeP_h + +#include <X11/Xaw/Tree.h> + +typedef struct _TreeClassPart { +    XtPointer extension; +} TreeClassPart; + +typedef struct _TreeClassRec { +    CoreClassPart core_class; +    CompositeClassPart composite_class; +    ConstraintClassPart constraint_class; +    TreeClassPart tree_class; +} TreeClassRec; + +extern TreeClassRec treeClassRec; + +typedef struct { +    /* fields available through resources */ +    Dimension hpad;			/* hSpace/HSpace */ +    Dimension vpad;			/* vSpace/VSpace */ +    Dimension line_width;		/* lineWidth/LineWidth */ +    Pixel foreground;			/* foreground/Foreground */ +    XtGravity gravity;			/* gravity/Gravity */ +    Boolean auto_reconfigure;		/* autoReconfigure/AutoReconfigure */ +    /* private fields */ +    GC gc;				/* used to draw lines */ +    Widget tree_root;			/* hidden root off all children */ +    Dimension *largest;			/* list of largest per depth */ +    int n_largest;			/* number of elements in largest */ +    Dimension maxwidth, maxheight;	/* for shrink wrapping */ +#ifndef OLDXAW +    XawDisplayList *display_list; +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} TreePart; + + +typedef struct _TreeRec { +    CorePart core; +    CompositePart composite; +    ConstraintPart constraint; +    TreePart tree; +}  TreeRec; + + +/* + * structure attached to all children + */ +typedef struct _TreeConstraintsPart { +    /* resources */ +    Widget parent;			/* treeParent/TreeParent */ +    GC gc;				/* treeGC/TreeGC */ +    /* private data */ +    Widget *children; +    int n_children; +    int max_children; +    Dimension bbsubwidth, bbsubheight;	/* bounding box of sub tree */ +    Dimension bbwidth, bbheight;	/* bounding box including node */ +    Position x, y; +#ifndef OLDXAW +    XtPointer pad[2];	/* leave some space for future optimizations, and +			 * keep binary compatability +			 */ +#endif +} TreeConstraintsPart; + +typedef struct _TreeConstraintsRec { +   TreeConstraintsPart tree; +} TreeConstraintsRec, *TreeConstraints; + + +/* + * useful macros + */ + +#define TREE_CONSTRAINT(w) \ +                   ((TreeConstraints)((w)->core.constraints)) + +#define TREE_INITIAL_DEPTH 10		/* for allocating largest array */ +#define TREE_HORIZONTAL_DEFAULT_SPACING 20 +#define TREE_VERTICAL_DEFAULT_SPACING 6 + +#endif /* _XawTreeP_h */ + + + diff --git a/X11/Xaw/VendorEP.h b/X11/Xaw/VendorEP.h new file mode 100644 index 000000000..dc85b3644 --- /dev/null +++ b/X11/Xaw/VendorEP.h @@ -0,0 +1,84 @@ +/* $Xorg: VendorEP.h,v 1.4 2001/02/09 02:03:47 xorgcvs Exp $ */ + +/* + * Copyright 1991 by OMRON Corporation + * + * Permission to use, copy, modify, distribute, and sell this software and its + * documentation for any purpose is hereby granted without fee, provided that + * the above copyright notice appear in all copies and that both that + * copyright notice and this permission notice appear in supporting + * documentation, and that the name of OMRON not be used in advertising or + * publicity pertaining to distribution of the software without specific, + * written prior permission.  OMRON makes no representations about the + * suitability of this software for any purpose.  It is provided "as is" + * without express or implied warranty. + * + * OMRON DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING + * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL + * OMRON BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR + * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, + * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTUOUS ACTION, + * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS + * SOFTWARE.  + * + *	Author:	Seiji Kuwari	OMRON Corporation + *				kuwa@omron.co.jp + *				kuwa%omron.co.jp@uunet.uu.net + */				 + +/* + +Copyright 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + +*/ +/* $XFree86: xc/lib/Xaw/VendorEP.h,v 1.5 2001/01/17 19:42:36 dawes Exp $ */ + +#ifndef _VendorEP_h +#define _VendorEP_h + +#include <X11/Xaw/XawImP.h> + +typedef struct { +    XtPointer	extension; +} XawVendorShellExtClassPart; + +typedef	struct _VendorShellExtClassRec { +    ObjectClassPart	object_class; +    XawVendorShellExtClassPart	vendor_shell_ext_class; +} XawVendorShellExtClassRec; + +typedef struct { +    Widget	parent; +    XawImPart	im; +    XawIcPart	ic; +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} XawVendorShellExtPart; + +typedef	struct XawVendorShellExtRec { +    ObjectPart	object; +    XawVendorShellExtPart	vendor_ext; +} XawVendorShellExtRec, *XawVendorShellExtWidget; + +#endif	/* _VendorEP_h */ diff --git a/X11/Xaw/Viewport.h b/X11/Xaw/Viewport.h new file mode 100644 index 000000000..a4b678c83 --- /dev/null +++ b/X11/Xaw/Viewport.h @@ -0,0 +1,121 @@ +/* $Xorg: Viewport.h,v 1.4 2001/02/09 02:03:47 xorgcvs Exp $ */ + +/************************************************************ + +Copyright 1987, 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +********************************************************/ +/* $XFree86: xc/lib/Xaw/Viewport.h,v 1.6 2001/01/17 19:42:36 dawes Exp $ */ + +#ifndef _XawViewport_h +#define _XawViewport_h + +#include <X11/Xaw/Form.h> +#include <X11/Xaw/Reports.h> + +/* Resources: + + Name		     Class		RepType		Default Value + ----		     -----		-------		------------- + allowHoriz	     Boolean		Boolean		False + allowVert	     Boolean		Boolean		False + background	     Background		Pixel		XtDefaultBackground + border		     BorderColor	Pixel		XtDefaultForeground + borderWidth	     BorderWidth	Dimension	1 + destroyCallback     Callback		Pointer		NULL + forceBars	     Boolean		Boolean		False + height		     Height		Dimension	0 + mappedWhenManaged   MappedWhenManaged	Boolean		True + reportCallback	     ReportCallback	Pointer		NULL + sensitive	     Sensitive		Boolean		True + useBottom	     Boolean		Boolean		False + useRight	     Boolean		Boolean		False + width		     Width		Dimension	0 + x		     Position		Position	0 + y		     Position		Position	0 + +*/ + +#ifndef _XtStringDefs_h_ +#define XtNforceBars "forceBars" +#define XtNallowHoriz "allowHoriz" +#define XtNallowVert "allowVert" +#define XtNuseBottom "useBottom" +#define XtNuseRight "useRight" +#endif + +extern WidgetClass viewportWidgetClass; + +typedef struct _ViewportClassRec *ViewportWidgetClass; +typedef struct _ViewportRec  *ViewportWidget; + +_XFUNCPROTOBEGIN + +void XawViewportSetLocation +( + Widget			gw, +#if NeedWidePrototypes + double			xoff, + double			yoff +#else + float			xoff, + float			yoff +#endif + ); + +void XawViewportSetCoordinates +( + Widget			gw, +#if NeedWidePrototypes + int			x, + int			y +#else + Position		x, + Position		y +#endif + ); + +_XFUNCPROTOEND + +#endif /* _XawViewport_h */ diff --git a/X11/Xaw/ViewportP.h b/X11/Xaw/ViewportP.h new file mode 100644 index 000000000..9de6eaed8 --- /dev/null +++ b/X11/Xaw/ViewportP.h @@ -0,0 +1,109 @@ +/* + * $Xorg: ViewportP.h,v 1.4 2001/02/09 02:03:47 xorgcvs Exp $ + * Private declarations for ViewportWidgetClass + */ + +/************************************************************ + +Copyright 1987, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + + +Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts. + +                        All Rights Reserved + +Permission to use, copy, modify, and distribute this software and its  +documentation for any purpose and without fee is hereby granted,  +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in  +supporting documentation, and that the name of Digital not be +used in advertising or publicity pertaining to distribution of the +software without specific, written prior permission.   + +DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING +ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL +DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR +ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +SOFTWARE. + +********************************************************/ +/* $XFree86: xc/lib/Xaw/ViewportP.h,v 1.7 2001/01/17 19:42:36 dawes Exp $ */ + +#ifndef _ViewportP_h +#define _ViewportP_h + +#include <X11/Xaw/Viewport.h> +#include <X11/Xaw/FormP.h> + +typedef struct { +    XtPointer extension; +} ViewportClassPart; + +typedef struct _ViewportClassRec { +    CoreClassPart	core_class; +    CompositeClassPart	composite_class; +    ConstraintClassPart	constraint_class; +    FormClassPart	form_class; +    ViewportClassPart	viewport_class; +} ViewportClassRec; + +extern ViewportClassRec viewportClassRec; + +typedef struct _ViewportPart { +    /* resources */ +    Boolean forcebars;		/* Whether we should always display +				   the selected scrollbars */ +    Boolean allowhoriz;		/* Whether we allow horizontal scrollbars */ +    Boolean allowvert;		/* Whether we allow vertical scrollbars */ +    Boolean usebottom;		/* True if horiz bars appear at bottom */ +    Boolean useright;		/* True if vert bars appear at right */ +    XtCallbackList report_callbacks;/* when size/position changes */ + +    /* private */ +    Widget clip, child;		/* The clipping and (scrolled) child widgets */ +    Widget horiz_bar, vert_bar;	/* What scrollbars we currently have */ +#ifndef OLDXAW +    XtPointer pad[4];	/* for future use and keep binary compatability */ +#endif +} ViewportPart; + +typedef struct _ViewportRec { +    CorePart		core; +    CompositePart	composite; +    ConstraintPart	constraint; +    FormPart		form; +    ViewportPart	viewport; +} ViewportRec; + +typedef struct { +    Bool reparented;		/* True if child has been re-parented */ +} ViewportConstraintsPart; + +typedef struct _ViewportConstraintsRec { +    FormConstraintsPart		form; +    ViewportConstraintsPart	viewport; +} ViewportConstraintsRec, *ViewportConstraints; + +#endif /* _ViewportP_h */ diff --git a/X11/Xaw/XawImP.h b/X11/Xaw/XawImP.h new file mode 100644 index 000000000..e36f5050f --- /dev/null +++ b/X11/Xaw/XawImP.h @@ -0,0 +1,213 @@ +/* $Xorg: XawImP.h,v 1.4 2001/02/09 02:03:47 xorgcvs Exp $ */ + +/* + * Copyright 1991 by OMRON Corporation + * + * Permission to use, copy, modify, distribute, and sell this software and its + * documentation for any purpose is hereby granted without fee, provided that + * the above copyright notice appear in all copies and that both that + * copyright notice and this permission notice appear in supporting + * documentation, and that the name of OMRON not be used in advertising or + * publicity pertaining to distribution of the software without specific, + * written prior permission.  OMRON makes no representations about the + * suitability of this software for any purpose.  It is provided "as is" + * without express or implied warranty. + * + * OMRON DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING + * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL + * OMRON BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR + * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, + * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTUOUS ACTION, + * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS + * SOFTWARE.  + * + *	Author:	Seiji Kuwari	OMRON Corporation + *				kuwa@omron.co.jp + *				kuwa%omron.co.jp@uunet.uu.net + */				 + +/* + +Copyright 1994, 1998  The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + +*/ +/* $XFree86: xc/lib/Xaw/XawImP.h,v 3.8 2001/01/17 19:42:36 dawes Exp $ */ + +#ifndef _XawImP_h +#define _XawImP_h + +#define XtNinputMethod		"inputMethod" +#define XtCInputMethod		"InputMethod" +#define XtNpreeditType		"preeditType" +#define XtCPreeditType		"PreeditType" +#define XtNopenIm		"openIm" +#define XtCOpenIm		"OpenIm" +#define XtNsharedIc		"sharedIc" +#define XtCSharedIc		"SharedIc" + +#include <X11/Xaw/Text.h> + +#define	CIICFocus	(1 << 0) +#define	CIFontSet	(1 << 1) +#define	CIFg		(1 << 2) +#define	CIBg		(1 << 3) +#define	CIBgPixmap	(1 << 4) +#define	CICursorP	(1 << 5) +#define	CILineS		(1 << 6) + +typedef	struct _XawImPart { +    XIM			xim; +    XrmResourceList	resources; +    Cardinal		num_resources; +    Boolean		open_im; +    Boolean		initialized; +    Dimension		area_height; +    String		input_method; +    String		preedit_type; +} XawImPart; + +typedef struct _XawIcTablePart { +    Widget		widget; +    XIC			xic; +    XIMStyle		input_style; +    unsigned long	flg; +    unsigned long	prev_flg; +    Boolean		ic_focused; +    XFontSet		font_set; +    Pixel		foreground; +    Pixel		background; +    Pixmap		bg_pixmap; +    XawTextPosition	cursor_position; +    unsigned long	line_spacing; +    Boolean		openic_error; +    struct _XawIcTablePart *next; +} XawIcTablePart, *XawIcTableList; + +typedef	struct _XawIcPart { +    XIMStyle		input_style; +    Boolean		shared_ic; +    XawIcTableList	shared_ic_table; +    XawIcTableList	current_ic_table; +    XawIcTableList	ic_table; +} XawIcPart; + +typedef	struct _contextDataRec { +    Widget		parent; +    Widget		ve; +} contextDataRec; + +typedef	struct _contextErrDataRec { +    Widget		widget; +    XIM			xim; +} contextErrDataRec; + +void _XawImResizeVendorShell +( + Widget			w + ); + +Dimension _XawImGetShellHeight +( + Widget			w +); + +void _XawImRealize +( + Widget			w + ); + +void _XawImInitialize +( + Widget			w, + Widget			ext + ); + +void _XawImReconnect +( + Widget			w + ); + +void _XawImRegister +( + Widget			w + ); + +void _XawImUnregister +( + Widget			w + ); + +void _XawImSetValues +( + Widget			w, + ArgList		args, + Cardinal		num_args + ); + +void _XawImSetFocusValues +( + Widget			w, + ArgList		args, + Cardinal		num_args +); + +void _XawImUnsetFocus +( + Widget			w + ); + +int _XawImWcLookupString +( + Widget			w, + XKeyPressedEvent	*event, + wchar_t		*buffer_return, + int			bytes_buffer, + KeySym			*keysym_return + ); + +int _XawLookupString +( + Widget			w, + XKeyEvent		*event, + char			*buffer_return, + int			buffer_size, + KeySym			*keysym_return + ); + +int _XawImGetImAreaHeight +( + Widget			w + ); + +void _XawImCallVendorShellExtResize +( + Widget			w + ); + +void _XawImDestroy +( + Widget			w, + Widget			ext + ); + +#endif	/* _XawImP_h */ diff --git a/X11/Xaw/XawInit.h b/X11/Xaw/XawInit.h new file mode 100644 index 000000000..1953f616c --- /dev/null +++ b/X11/Xaw/XawInit.h @@ -0,0 +1,64 @@ +/* $Xorg: XawInit.h,v 1.5 2001/02/09 02:03:47 xorgcvs Exp $ + * +Copyright 1989, 1994, 1998  The Open Group +Copyright 2003-2004 Roland Mainz <roland.mainz@nrubsig.org> + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + */ +/* $XFree86: xc/lib/Xaw/XawInit.h,v 1.12 2001/01/17 19:42:36 dawes Exp $ */ + +/* $XdotOrg: xc/lib/Xaw/XawInit.h,v 1.2 2004/04/23 18:43:38 eich Exp $ */ +#ifndef _XawInit_h +#define _XawInit_h + +#define XawVendor	XVENDORNAMESHORT + +#ifdef OLDXAW +#define XawVersion	6700002L +#else +#define	XawVersion	7000002L + +typedef struct _XawDL XawDisplayList; +#endif /* OLDXAW */ + +#include <X11/Xfuncproto.h> + +_XFUNCPROTOBEGIN + +void XawInitializeWidgetSet(void); +#ifndef OLDXAW +void XawInitializeDefaultConverters(void); +#endif + +extern Widget XawOpenApplication( +    XtAppContext *app_context_return, +    Display      *dpy, +    Screen       *screen, +    String        application_name, +    String        application_class, +    WidgetClass   widget_class, +    int          *argc, +    String       *argv +); + +_XFUNCPROTOEND + +#endif /* _XawInit_h */ | 
