R6.6 is the Xorg base-line

This commit is contained in:
Kaleb Keithley 2003-11-14 15:54:30 +00:00
commit deae12c6b6
658 changed files with 181892 additions and 0 deletions

1351
include/X11/XKBlib.h Normal file

File diff suppressed because it is too large Load diff

923
include/X11/Xcms.h Normal file
View file

@ -0,0 +1,923 @@
/* $Xorg: Xcms.h,v 1.6 2000/08/17 19:45:04 cpqbld Exp $ */
/*
* Code and supporting documentation (c) Copyright 1990 1991 Tektronix, Inc.
* All Rights Reserved
*
* This file is a component of an X Window System-specific implementation
* of Xcms based on the TekColor Color Management System. Permission is
* hereby granted to use, copy, modify, sell, and otherwise distribute this
* software and its documentation for any purpose and without fee, provided
* that this copyright, permission, and disclaimer notice is reproduced in
* all copies of this software and in supporting documentation. TekColor
* is a trademark of Tektronix, Inc.
*
* Tektronix makes no representation about the suitability of this software
* for any purpose. It is provided "as is" and with all faults.
*
* TEKTRONIX DISCLAIMS ALL WARRANTIES APPLICABLE TO THIS SOFTWARE,
* INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
* PARTICULAR PURPOSE. IN NO EVENT SHALL TEKTRONIX 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 THE PERFORMANCE OF THIS SOFTWARE.
*
*
* DESCRIPTION
* Public include file for X Color Management System
*/
#ifndef _XCMS_H_
#define _XCMS_H_
#include <X11/Xlib.h>
/*
* XCMS Status Values
*/
#define XcmsFailure 0
#define XcmsSuccess 1
#define XcmsSuccessWithCompression 2
/*
* Color Space Format ID's
* Color Space ID's are of XcmsColorFormat type.
*
* bit 31
* 0 == Device-Independent
* 1 == Device-Dependent
*
* bit 30:
* 0 == Registered with X Consortium
* 1 == Unregistered
*/
#define XcmsUndefinedFormat (XcmsColorFormat)0x00000000
#define XcmsCIEXYZFormat (XcmsColorFormat)0x00000001
#define XcmsCIEuvYFormat (XcmsColorFormat)0x00000002
#define XcmsCIExyYFormat (XcmsColorFormat)0x00000003
#define XcmsCIELabFormat (XcmsColorFormat)0x00000004
#define XcmsCIELuvFormat (XcmsColorFormat)0x00000005
#define XcmsTekHVCFormat (XcmsColorFormat)0x00000006
#define XcmsRGBFormat (XcmsColorFormat)0x80000000
#define XcmsRGBiFormat (XcmsColorFormat)0x80000001
/*
* State of XcmsPerScrnInfo
*/
#define XcmsInitNone 0x00 /* no initialization attempted */
#define XcmsInitSuccess 0x01 /* initialization successful */
#define XcmsInitFailure 0xff /* failure, use defaults */
#define DisplayOfCCC(ccc) ((ccc)->dpy)
#define ScreenNumberOfCCC(ccc) ((ccc)->screenNumber)
#define VisualOfCCC(ccc) ((ccc)->visual)
#define ClientWhitePointOfCCC(ccc) (&(ccc)->clientWhitePt)
#define ScreenWhitePointOfCCC(ccc) (&(ccc)->pPerScrnInfo->screenWhitePt)
#define FunctionSetOfCCC(ccc) ((ccc)->pPerScrnInfo->functionSet)
typedef unsigned long XcmsColorFormat; /* Color Space Format ID */
typedef double XcmsFloat;
/*
* Device RGB
*/
typedef struct {
unsigned short red; /* scaled from 0x0000 to 0xffff */
unsigned short green; /* scaled from 0x0000 to 0xffff */
unsigned short blue; /* scaled from 0x0000 to 0xffff */
} XcmsRGB;
/*
* RGB Intensity
*/
typedef struct {
XcmsFloat red; /* 0.0 - 1.0 */
XcmsFloat green; /* 0.0 - 1.0 */
XcmsFloat blue; /* 0.0 - 1.0 */
} XcmsRGBi;
/*
* CIE XYZ
*/
typedef struct {
XcmsFloat X;
XcmsFloat Y;
XcmsFloat Z;
} XcmsCIEXYZ;
/*
* CIE u'v'Y
*/
typedef struct {
XcmsFloat u_prime; /* 0.0 - 1.0 */
XcmsFloat v_prime; /* 0.0 - 1.0 */
XcmsFloat Y; /* 0.0 - 1.0 */
} XcmsCIEuvY;
/*
* CIE xyY
*/
typedef struct {
XcmsFloat x; /* 0.0 - 1.0 */
XcmsFloat y; /* 0.0 - 1.0 */
XcmsFloat Y; /* 0.0 - 1.0 */
} XcmsCIExyY;
/*
* CIE L*a*b*
*/
typedef struct {
XcmsFloat L_star; /* 0.0 - 100.0 */
XcmsFloat a_star;
XcmsFloat b_star;
} XcmsCIELab;
/*
* CIE L*u*v*
*/
typedef struct {
XcmsFloat L_star; /* 0.0 - 100.0 */
XcmsFloat u_star;
XcmsFloat v_star;
} XcmsCIELuv;
/*
* TekHVC
*/
typedef struct {
XcmsFloat H; /* 0.0 - 360.0 */
XcmsFloat V; /* 0.0 - 100.0 */
XcmsFloat C; /* 0.0 - 100.0 */
} XcmsTekHVC;
/*
* PAD
*/
typedef struct {
XcmsFloat pad0;
XcmsFloat pad1;
XcmsFloat pad2;
XcmsFloat pad3;
} XcmsPad;
/*
* XCMS Color Structure
*/
typedef struct {
union {
XcmsRGB RGB;
XcmsRGBi RGBi;
XcmsCIEXYZ CIEXYZ;
XcmsCIEuvY CIEuvY;
XcmsCIExyY CIExyY;
XcmsCIELab CIELab;
XcmsCIELuv CIELuv;
XcmsTekHVC TekHVC;
XcmsPad Pad;
} spec; /* the color specification */
unsigned long pixel; /* pixel value (as needed) */
XcmsColorFormat format; /* the specification format */
} XcmsColor;
/*
* XCMS Per Screen related data
*/
typedef struct _XcmsPerScrnInfo {
XcmsColor screenWhitePt; /* Screen White point */
XPointer functionSet; /* pointer to Screen Color Characterization */
/* Function Set structure */
XPointer screenData; /* pointer to corresponding Screen Color*/
/* Characterization Data */
unsigned char state; /* XcmsInitNone, XcmsInitSuccess, XcmsInitFailure */
char pad[3];
} XcmsPerScrnInfo;
typedef struct _XcmsCCC *XcmsCCC;
typedef Status (*XcmsCompressionProc)( /* Gamut Compression Proc */
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* colors_in_out */,
unsigned int /* ncolors */,
unsigned int /* index */,
Bool* /* compression_flags_return */
#endif
);
typedef Status (*XcmsWhiteAdjustProc)( /* White Point Adjust Proc */
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* initial_white_point*/,
XcmsColor* /* target_white_point*/,
XcmsColorFormat /* target_format */,
XcmsColor* /* colors_in_out */,
unsigned int /* ncolors */,
Bool* /* compression_flags_return */
#endif
);
/*
* XCMS Color Conversion Context
*/
typedef struct _XcmsCCC {
Display *dpy; /* X Display */
int screenNumber; /* X screen number */
Visual *visual; /* X Visual */
XcmsColor clientWhitePt; /* Client White Point */
XcmsCompressionProc gamutCompProc; /* Gamut Compression Function */
XPointer gamutCompClientData; /* Gamut Comp Func Client Data */
XcmsWhiteAdjustProc whitePtAdjProc; /* White Point Adjustment Function */
XPointer whitePtAdjClientData; /* White Pt Adj Func Client Data */
XcmsPerScrnInfo *pPerScrnInfo; /* pointer to per screen information */
/* associated with the above display */
/* screenNumber */
} XcmsCCCRec;
typedef Status (*XcmsScreenInitProc)( /* Screen Initialization Proc */
#if NeedFunctionPrototypes
Display* /* dpy */,
int /* screen_number */,
XcmsPerScrnInfo* /* screen_info */
#endif
);
typedef void (*XcmsScreenFreeProc)(
#if NeedFunctionPrototypes
XPointer /* screenData */
#endif
);
/*
* Function List Pointer -- pointer to an array of function pointers.
* The end of list is indicated by a NULL pointer.
*/
typedef Status (*XcmsConversionProc)();
typedef XcmsConversionProc *XcmsFuncListPtr;
typedef int (*XcmsParseStringProc)( /* Color String Parsing Proc */
#if NeedFunctionPrototypes
char* /* color_string */,
XcmsColor* /* color_return */
#endif
);
/*
* Color Space -- per Color Space related data (Device-Independent
* or Device-Dependent)
*/
typedef struct _XcmsColorSpace {
char *prefix; /* Prefix of string format. */
XcmsColorFormat id; /* Format ID number. */
XcmsParseStringProc parseString;
/* String format parsing function */
XcmsFuncListPtr to_CIEXYZ; /* Pointer to an array of function */
/* pointers such that when the */
/* functions are executed in sequence */
/* will convert a XcmsColor structure */
/* from this color space to CIEXYZ */
/* space. */
XcmsFuncListPtr from_CIEXYZ;/* Pointer to an array of function */
/* pointers such that when the */
/* functions are executed in sequence */
/* will convert a XcmsColor structure */
/* from CIEXYZ space to this color */
/* space. */
int inverse_flag; /* If 1, indicates that for 0 <= i < n */
/* where n is the number of function */
/* pointers in the lists to_CIEXYZ */
/* and from_CIEXYZ; for each function */
/* to_CIEXYZ[i] its inverse function */
/* is from_CIEXYZ[n - i]. */
} XcmsColorSpace;
/*
* Screen Color Characterization Function Set -- per device class
* color space conversion functions.
*/
typedef struct _XcmsFunctionSet {
XcmsColorSpace **DDColorSpaces;
/* Pointer to an array of pointers to */
/* Device-DEPENDENT color spaces */
/* understood by this SCCFuncSet. */
XcmsScreenInitProc screenInitProc;
/* Screen initialization function that */
/* reads Screen Color Characterization*/
/* Data off properties on the screen's*/
/* root window. */
XcmsScreenFreeProc screenFreeProc;
/* Function that frees the SCCData */
/* structures. */
} XcmsFunctionSet;
_XFUNCPROTOBEGIN
extern Status XcmsAddColorSpace (
#if NeedFunctionPrototypes
XcmsColorSpace* /* pColorSpace */
#endif
);
extern Status XcmsAddFunctionSet (
#if NeedFunctionPrototypes
XcmsFunctionSet* /* functionSet */
#endif
);
extern Status XcmsAllocColor (
#if NeedFunctionPrototypes
Display* /* dpy */,
Colormap /* colormap */,
XcmsColor* /* color_in_out */,
XcmsColorFormat /* result_format */
#endif
);
extern Status XcmsAllocNamedColor (
#if NeedFunctionPrototypes
Display* /* dpy */,
Colormap /* colormap */,
_Xconst char* /* color_string */,
XcmsColor* /* color_scrn_return */,
XcmsColor* /* color_exact_return */,
XcmsColorFormat /* result_format */
#endif
);
extern XcmsCCC XcmsCCCOfColormap (
#if NeedFunctionPrototypes
Display* /* dpy */,
Colormap /* colormap */
#endif
);
extern Status XcmsCIELabClipab(
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* colors_in_out */,
unsigned int /* ncolors */,
unsigned int /* index */,
Bool* /* compression_flags_return */
#endif
);
extern Status XcmsCIELabClipL(
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* colors_in_out */,
unsigned int /* ncolors */,
unsigned int /* index */,
Bool* /* compression_flags_return */
#endif
);
extern Status XcmsCIELabClipLab(
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* colors_in_out */,
unsigned int /* ncolors */,
unsigned int /* index */,
Bool* /* compression_flags_return */
#endif
);
extern Status XcmsCIELabQueryMaxC (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsFloat /* hue_angle */,
XcmsFloat /* L_star */,
XcmsColor* /* color_return */
#endif
);
extern Status XcmsCIELabQueryMaxL (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsFloat /* hue_angle */,
XcmsFloat /* chroma */,
XcmsColor* /* color_return */
#endif
);
extern Status XcmsCIELabQueryMaxLC (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsFloat /* hue_angle */,
XcmsColor* /* color_return */
#endif
);
extern Status XcmsCIELabQueryMinL (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsFloat /* hue_angle */,
XcmsFloat /* chroma */,
XcmsColor* /* color_return */
#endif
);
extern Status XcmsCIELabToCIEXYZ (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* white_point */,
XcmsColor* /* colors */,
unsigned int /* ncolors */
#endif
);
extern Status XcmsCIELabWhiteShiftColors(
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* initial_white_point*/,
XcmsColor* /* target_white_point*/,
XcmsColorFormat /* target_format */,
XcmsColor* /* colors_in_out */,
unsigned int /* ncolors */,
Bool* /* compression_flags_return */
#endif
);
extern Status XcmsCIELuvClipL(
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* colors_in_out */,
unsigned int /* ncolors */,
unsigned int /* index */,
Bool* /* compression_flags_return */
#endif
);
extern Status XcmsCIELuvClipLuv(
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* colors_in_out */,
unsigned int /* ncolors */,
unsigned int /* index */,
Bool* /* compression_flags_return */
#endif
);
extern Status XcmsCIELuvClipuv(
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* colors_in_out */,
unsigned int /* ncolors */,
unsigned int /* index */,
Bool* /* compression_flags_return */
#endif
);
extern Status XcmsCIELuvQueryMaxC (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsFloat /* hue_angle */,
XcmsFloat /* L_star */,
XcmsColor* /* color_return */
#endif
);
extern Status XcmsCIELuvQueryMaxL (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsFloat /* hue_angle */,
XcmsFloat /* chroma */,
XcmsColor* /* color_return */
#endif
);
extern Status XcmsCIELuvQueryMaxLC (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsFloat /* hue_angle */,
XcmsColor* /* color_return */
#endif
);
extern Status XcmsCIELuvQueryMinL (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsFloat /* hue_angle */,
XcmsFloat /* chroma */,
XcmsColor* /* color_return */
#endif
);
extern Status XcmsCIELuvToCIEuvY (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* white_point */,
XcmsColor* /* colors */,
unsigned int /* ncolors */
#endif
);
extern Status XcmsCIELuvWhiteShiftColors(
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* initial_white_point*/,
XcmsColor* /* target_white_point*/,
XcmsColorFormat /* target_format */,
XcmsColor* /* colors_in_out */,
unsigned int /* ncolors */,
Bool* /* compression_flags_return */
#endif
);
extern Status XcmsCIEXYZToCIELab (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* white_point */,
XcmsColor* /* colors */,
unsigned int /* ncolors */
#endif
);
extern Status XcmsCIEXYZToCIEuvY (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* white_point */,
XcmsColor* /* colors */,
unsigned int /* ncolors */
#endif
);
extern Status XcmsCIEXYZToCIExyY (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* white_point */,
XcmsColor* /* colors */,
unsigned int /* ncolors */
#endif
);
extern Status XcmsCIEXYZToRGBi (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* colors */,
unsigned int /* ncolors */,
Bool* /* compression_flags_return */
#endif
);
extern Status XcmsCIEuvYToCIELuv (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* white_point */,
XcmsColor* /* colors */,
unsigned int /* ncolors */
#endif
);
extern Status XcmsCIEuvYToCIEXYZ (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* white_point */,
XcmsColor* /* colors */,
unsigned int /* ncolors */
#endif
);
extern Status XcmsCIEuvYToTekHVC (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* white_point */,
XcmsColor* /* colors */,
unsigned int /* ncolors */
#endif
);
extern Status XcmsCIExyYToCIEXYZ (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* white_point */,
XcmsColor* /* colors */,
unsigned int /* ncolors */
#endif
);
extern XcmsColor *XcmsClientWhitePointOfCCC (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */
#endif
);
extern Status XcmsConvertColors (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* colorArry_in_out */,
unsigned int /* nColors */,
XcmsColorFormat /* targetFormat */,
Bool* /* compArry_return */
#endif
);
extern XcmsCCC XcmsCreateCCC (
#if NeedFunctionPrototypes
Display* /* dpy */,
int /* screenNumber */,
Visual* /* visual */,
XcmsColor* /* clientWhitePt */,
XcmsCompressionProc /* gamutCompProc */,
XPointer /* gamutCompClientData */,
XcmsWhiteAdjustProc /* whitePtAdjProc */,
XPointer /* whitePtAdjClientData */
#endif
);
extern XcmsCCC XcmsDefaultCCC (
#if NeedFunctionPrototypes
Display* /* dpy */,
int /* screenNumber */
#endif
);
extern Display *XcmsDisplayOfCCC (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */
#endif
);
extern XcmsColorFormat XcmsFormatOfPrefix (
#if NeedFunctionPrototypes
char* /* prefix */
#endif
);
extern void XcmsFreeCCC (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */
#endif
);
extern Status XcmsLookupColor (
#if NeedFunctionPrototypes
Display* /* dpy */,
Colormap /* colormap */,
_Xconst char* /* color_string */,
XcmsColor* /* pColor_exact_in_out */,
XcmsColor* /* pColor_scrn_in_out */,
XcmsColorFormat /* result_format */
#endif
);
extern char *XcmsPrefixOfFormat (
#if NeedFunctionPrototypes
XcmsColorFormat /* id */
#endif
);
extern Status XcmsQueryBlack (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColorFormat /* target_format */,
XcmsColor* /* color_return */
#endif
);
extern Status XcmsQueryBlue (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColorFormat /* target_format */,
XcmsColor* /* color_return */
#endif
);
extern Status XcmsQueryColor (
#if NeedFunctionPrototypes
Display* /* dpy */,
Colormap /* colormap */,
XcmsColor* /* pColor_in_out */,
XcmsColorFormat /* result_format */
#endif
);
extern Status XcmsQueryColors (
#if NeedFunctionPrototypes
Display* /* dpy */,
Colormap /* colormap */,
XcmsColor* /* colorArry_in_out */,
unsigned int /* nColors */,
XcmsColorFormat /* result_format */
#endif
);
extern Status XcmsQueryGreen (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColorFormat /* target_format */,
XcmsColor* /* color_return */
#endif
);
extern Status XcmsQueryRed (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColorFormat /* target_format */,
XcmsColor* /* color_return */
#endif
);
extern Status XcmsQueryWhite (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColorFormat /* target_format */,
XcmsColor* /* color_return */
#endif
);
extern Status XcmsRGBiToCIEXYZ (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* colors */,
unsigned int /* ncolors */,
Bool* /* compression_flags_return */
#endif
);
extern Status XcmsRGBiToRGB (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* colors */,
unsigned int /* ncolors */,
Bool* /* compression_flags_return */
#endif
);
extern Status XcmsRGBToRGBi (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* colors */,
unsigned int /* ncolors */,
Bool* /* compression_flags_return */
#endif
);
extern int XcmsScreenNumberOfCCC (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */
#endif
);
extern XcmsColor *XcmsScreenWhitePointOfCCC (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */
#endif
);
extern XcmsCCC XcmsSetCCCOfColormap(
#if NeedFunctionPrototypes
Display* /* dpy */,
Colormap /* colormap */,
XcmsCCC /* ccc */
#endif
);
extern XcmsCompressionProc XcmsSetCompressionProc (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsCompressionProc /* compression_proc */,
XPointer /* client_data */
#endif
);
extern XcmsWhiteAdjustProc XcmsSetWhiteAdjustProc (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsWhiteAdjustProc /* white_adjust_proc */,
XPointer /* client_data */
#endif
);
extern Status XcmsSetWhitePoint (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* color */
#endif
);
extern Status XcmsStoreColor (
#if NeedFunctionPrototypes
Display* /* dpy */,
Colormap /* colormap */,
XcmsColor* /* pColor_in */
#endif
);
extern Status XcmsStoreColors (
#if NeedFunctionPrototypes
Display* /* dpy */,
Colormap /* colormap */,
XcmsColor* /* colorArry_in */,
unsigned int /* nColors */,
Bool* /* compArry_return */
#endif
);
extern Status XcmsTekHVCClipC(
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* colors_in_out */,
unsigned int /* ncolors */,
unsigned int /* index */,
Bool* /* compression_flags_return */
#endif
);
extern Status XcmsTekHVCClipV(
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* colors_in_out */,
unsigned int /* ncolors */,
unsigned int /* index */,
Bool* /* compression_flags_return */
#endif
);
extern Status XcmsTekHVCClipVC(
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* colors_in_out */,
unsigned int /* ncolors */,
unsigned int /* index */,
Bool* /* compression_flags_return */
#endif
);
extern Status XcmsTekHVCQueryMaxC (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsFloat /* hue */,
XcmsFloat /* value */,
XcmsColor* /* color_return */
#endif
);
extern Status XcmsTekHVCQueryMaxV (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsFloat /* hue */,
XcmsFloat /* chroma */,
XcmsColor* /* color_return */
#endif
);
extern Status XcmsTekHVCQueryMaxVC (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsFloat /* hue */,
XcmsColor* /* color_return */
#endif
);
extern Status XcmsTekHVCQueryMaxVSamples (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsFloat /* hue */,
XcmsColor* /* colors_return */,
unsigned int /* nsamples */
#endif
);
extern Status XcmsTekHVCQueryMinV (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsFloat /* hue */,
XcmsFloat /* chroma */,
XcmsColor* /* color_return */
#endif
);
extern Status XcmsTekHVCToCIEuvY (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* white_point */,
XcmsColor* /* colors */,
unsigned int /* ncolors */
#endif
);
extern Status XcmsTekHVCWhiteShiftColors(
#if NeedFunctionPrototypes
XcmsCCC /* ccc */,
XcmsColor* /* initial_white_point*/,
XcmsColor* /* target_white_point*/,
XcmsColorFormat /* target_format */,
XcmsColor* /* colors_in_out */,
unsigned int /* ncolors */,
Bool* /* compression_flags_return */
#endif
);
extern Visual *XcmsVisualOfCCC (
#if NeedFunctionPrototypes
XcmsCCC /* ccc */
#endif
);
_XFUNCPROTOEND
#endif /* _XCMS_H_ */

4646
include/X11/Xlib.h Normal file

File diff suppressed because it is too large Load diff

1278
include/X11/Xlibint.h Normal file

File diff suppressed because it is too large Load diff

70
include/X11/Xlocale.h Normal file
View file

@ -0,0 +1,70 @@
/* $Xorg: Xlocale.h,v 1.4 2001/02/09 02:03:38 xorgcvs Exp $ */
/*
Copyright 1991, 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 _XLOCALE_H_
#define _XLOCALE_H_
#include <X11/Xfuncproto.h>
#include <X11/Xosdefs.h>
#ifndef X_LOCALE
#ifdef X_NOT_STDC_ENV
#define X_LOCALE
#endif
#endif
#ifndef X_LOCALE
#include <locale.h>
#else
#define LC_ALL 0
#define LC_COLLATE 1
#define LC_CTYPE 2
#define LC_MONETARY 3
#define LC_NUMERIC 4
#define LC_TIME 5
_XFUNCPROTOBEGIN
extern char *_Xsetlocale(
#if NeedFunctionPrototypes
int /* category */,
_Xconst char* /* name */
#endif
);
_XFUNCPROTOEND
#define setlocale _Xsetlocale
#ifndef NULL
#define NULL 0
#endif
#endif /* X_LOCALE */
#endif /* _XLOCALE_H_ */

413
include/X11/Xresource.h Normal file
View file

@ -0,0 +1,413 @@
/* $Xorg: Xresource.h,v 1.7 2001/02/09 02:03:39 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.
******************************************************************/
#ifndef _XRESOURCE_H_
#define _XRESOURCE_H_
/* You must include <X11/Xlib.h> before including this file */
#include <X11/Xlib.h>
/****************************************************************
****************************************************************
*** ***
*** ***
*** X Resource Manager Intrinsics ***
*** ***
*** ***
****************************************************************
****************************************************************/
_XFUNCPROTOBEGIN
/****************************************************************
*
* Memory Management
*
****************************************************************/
extern char *Xpermalloc(
#if NeedFunctionPrototypes
unsigned int /* size */
#endif
);
/****************************************************************
*
* Quark Management
*
****************************************************************/
typedef int XrmQuark, *XrmQuarkList;
#define NULLQUARK ((XrmQuark) 0)
typedef char *XrmString;
#define NULLSTRING ((XrmString) 0)
/* find quark for string, create new quark if none already exists */
extern XrmQuark XrmStringToQuark(
#if NeedFunctionPrototypes
_Xconst char* /* string */
#endif
);
extern XrmQuark XrmPermStringToQuark(
#if NeedFunctionPrototypes
_Xconst char* /* string */
#endif
);
/* find string for quark */
extern XrmString XrmQuarkToString(
#if NeedFunctionPrototypes
XrmQuark /* quark */
#endif
);
extern XrmQuark XrmUniqueQuark(
#if NeedFunctionPrototypes
void
#endif
);
#define XrmStringsEqual(a1, a2) (strcmp(a1, a2) == 0)
/****************************************************************
*
* Conversion of Strings to Lists
*
****************************************************************/
typedef enum {XrmBindTightly, XrmBindLoosely} XrmBinding, *XrmBindingList;
extern void XrmStringToQuarkList(
#if NeedFunctionPrototypes
_Xconst char* /* string */,
XrmQuarkList /* quarks_return */
#endif
);
extern void XrmStringToBindingQuarkList(
#if NeedFunctionPrototypes
_Xconst char* /* string */,
XrmBindingList /* bindings_return */,
XrmQuarkList /* quarks_return */
#endif
);
/****************************************************************
*
* Name and Class lists.
*
****************************************************************/
typedef XrmQuark XrmName;
typedef XrmQuarkList XrmNameList;
#define XrmNameToString(name) XrmQuarkToString(name)
#define XrmStringToName(string) XrmStringToQuark(string)
#define XrmStringToNameList(str, name) XrmStringToQuarkList(str, name)
typedef XrmQuark XrmClass;
typedef XrmQuarkList XrmClassList;
#define XrmClassToString(c_class) XrmQuarkToString(c_class)
#define XrmStringToClass(c_class) XrmStringToQuark(c_class)
#define XrmStringToClassList(str,c_class) XrmStringToQuarkList(str, c_class)
/****************************************************************
*
* Resource Representation Types and Values
*
****************************************************************/
typedef XrmQuark XrmRepresentation;
#define XrmStringToRepresentation(string) XrmStringToQuark(string)
#define XrmRepresentationToString(type) XrmQuarkToString(type)
typedef struct {
unsigned int size;
XPointer addr;
} XrmValue, *XrmValuePtr;
/****************************************************************
*
* Resource Manager Functions
*
****************************************************************/
typedef struct _XrmHashBucketRec *XrmHashBucket;
typedef XrmHashBucket *XrmHashTable;
typedef XrmHashTable XrmSearchList[];
typedef struct _XrmHashBucketRec *XrmDatabase;
extern void XrmDestroyDatabase(
#if NeedFunctionPrototypes
XrmDatabase /* database */
#endif
);
extern void XrmQPutResource(
#if NeedFunctionPrototypes
XrmDatabase* /* database */,
XrmBindingList /* bindings */,
XrmQuarkList /* quarks */,
XrmRepresentation /* type */,
XrmValue* /* value */
#endif
);
extern void XrmPutResource(
#if NeedFunctionPrototypes
XrmDatabase* /* database */,
_Xconst char* /* specifier */,
_Xconst char* /* type */,
XrmValue* /* value */
#endif
);
extern void XrmQPutStringResource(
#if NeedFunctionPrototypes
XrmDatabase* /* database */,
XrmBindingList /* bindings */,
XrmQuarkList /* quarks */,
_Xconst char* /* value */
#endif
);
extern void XrmPutStringResource(
#if NeedFunctionPrototypes
XrmDatabase* /* database */,
_Xconst char* /* specifier */,
_Xconst char* /* value */
#endif
);
extern void XrmPutLineResource(
#if NeedFunctionPrototypes
XrmDatabase* /* database */,
_Xconst char* /* line */
#endif
);
extern Bool XrmQGetResource(
#if NeedFunctionPrototypes
XrmDatabase /* database */,
XrmNameList /* quark_name */,
XrmClassList /* quark_class */,
XrmRepresentation* /* quark_type_return */,
XrmValue* /* value_return */
#endif
);
extern Bool XrmGetResource(
#if NeedFunctionPrototypes
XrmDatabase /* database */,
_Xconst char* /* str_name */,
_Xconst char* /* str_class */,
char** /* str_type_return */,
XrmValue* /* value_return */
#endif
);
extern Bool XrmQGetSearchList(
#if NeedFunctionPrototypes
XrmDatabase /* database */,
XrmNameList /* names */,
XrmClassList /* classes */,
XrmSearchList /* list_return */,
int /* list_length */
#endif
);
extern Bool XrmQGetSearchResource(
#if NeedFunctionPrototypes
XrmSearchList /* list */,
XrmName /* name */,
XrmClass /* class */,
XrmRepresentation* /* type_return */,
XrmValue* /* value_return */
#endif
);
/****************************************************************
*
* Resource Database Management
*
****************************************************************/
extern void XrmSetDatabase(
#if NeedFunctionPrototypes
Display* /* display */,
XrmDatabase /* database */
#endif
);
extern XrmDatabase XrmGetDatabase(
#if NeedFunctionPrototypes
Display* /* display */
#endif
);
extern XrmDatabase XrmGetFileDatabase(
#if NeedFunctionPrototypes
_Xconst char* /* filename */
#endif
);
extern Status XrmCombineFileDatabase(
#if NeedFunctionPrototypes
_Xconst char* /* filename */,
XrmDatabase* /* target */,
Bool /* override */
#endif
);
extern XrmDatabase XrmGetStringDatabase(
#if NeedFunctionPrototypes
_Xconst char* /* data */ /* null terminated string */
#endif
);
extern void XrmPutFileDatabase(
#if NeedFunctionPrototypes
XrmDatabase /* database */,
_Xconst char* /* filename */
#endif
);
extern void XrmMergeDatabases(
#if NeedFunctionPrototypes
XrmDatabase /* source_db */,
XrmDatabase* /* target_db */
#endif
);
extern void XrmCombineDatabase(
#if NeedFunctionPrototypes
XrmDatabase /* source_db */,
XrmDatabase* /* target_db */,
Bool /* override */
#endif
);
#define XrmEnumAllLevels 0
#define XrmEnumOneLevel 1
extern Bool XrmEnumerateDatabase(
#if NeedFunctionPrototypes
XrmDatabase /* db */,
XrmNameList /* name_prefix */,
XrmClassList /* class_prefix */,
int /* mode */,
Bool (*)(
#if NeedNestedPrototypes
XrmDatabase* /* db */,
XrmBindingList /* bindings */,
XrmQuarkList /* quarks */,
XrmRepresentation* /* type */,
XrmValue* /* value */,
XPointer /* closure */
#endif
) /* proc */,
XPointer /* closure */
#endif
);
extern char *XrmLocaleOfDatabase(
#if NeedFunctionPrototypes
XrmDatabase /* database */
#endif
);
/****************************************************************
*
* Command line option mapping to resource entries
*
****************************************************************/
typedef enum {
XrmoptionNoArg, /* Value is specified in OptionDescRec.value */
XrmoptionIsArg, /* Value is the option string itself */
XrmoptionStickyArg, /* Value is characters immediately following option */
XrmoptionSepArg, /* Value is next argument in argv */
XrmoptionResArg, /* Resource and value in next argument in argv */
XrmoptionSkipArg, /* Ignore this option and the next argument in argv */
XrmoptionSkipLine, /* Ignore this option and the rest of argv */
XrmoptionSkipNArgs /* Ignore this option and the next
OptionDescRes.value arguments in argv */
} XrmOptionKind;
typedef struct {
char *option; /* Option abbreviation in argv */
char *specifier; /* Resource specifier */
XrmOptionKind argKind; /* Which style of option it is */
XPointer value; /* Value to provide if XrmoptionNoArg */
} XrmOptionDescRec, *XrmOptionDescList;
extern void XrmParseCommand(
#if NeedFunctionPrototypes
XrmDatabase* /* database */,
XrmOptionDescList /* table */,
int /* table_count */,
_Xconst char* /* name */,
int* /* argc_in_out */,
char** /* argv_in_out */
#endif
);
_XFUNCPROTOEND
#endif /* _XRESOURCE_H_ */
/* DON'T ADD STUFF AFTER THIS #endif */

907
include/X11/Xutil.h Normal file
View file

@ -0,0 +1,907 @@
/* $Xorg: Xutil.h,v 1.8 2001/02/09 02:03:39 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.
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.
******************************************************************/
#ifndef _XUTIL_H_
#define _XUTIL_H_
/* You must include <X11/Xlib.h> before including this file */
#include <X11/Xlib.h>
/*
* Bitmask returned by XParseGeometry(). Each bit tells if the corresponding
* value (x, y, width, height) was found in the parsed string.
*/
#define NoValue 0x0000
#define XValue 0x0001
#define YValue 0x0002
#define WidthValue 0x0004
#define HeightValue 0x0008
#define AllValues 0x000F
#define XNegative 0x0010
#define YNegative 0x0020
/*
* new version containing base_width, base_height, and win_gravity fields;
* used with WM_NORMAL_HINTS.
*/
typedef struct {
long flags; /* marks which fields in this structure are defined */
int x, y; /* obsolete for new window mgrs, but clients */
int width, height; /* should set so old wm's don't mess up */
int min_width, min_height;
int max_width, max_height;
int width_inc, height_inc;
struct {
int x; /* numerator */
int y; /* denominator */
} min_aspect, max_aspect;
int base_width, base_height; /* added by ICCCM version 1 */
int win_gravity; /* added by ICCCM version 1 */
} XSizeHints;
/*
* The next block of definitions are for window manager properties that
* clients and applications use for communication.
*/
/* flags argument in size hints */
#define USPosition (1L << 0) /* user specified x, y */
#define USSize (1L << 1) /* user specified width, height */
#define PPosition (1L << 2) /* program specified position */
#define PSize (1L << 3) /* program specified size */
#define PMinSize (1L << 4) /* program specified minimum size */
#define PMaxSize (1L << 5) /* program specified maximum size */
#define PResizeInc (1L << 6) /* program specified resize increments */
#define PAspect (1L << 7) /* program specified min and max aspect ratios */
#define PBaseSize (1L << 8) /* program specified base for incrementing */
#define PWinGravity (1L << 9) /* program specified window gravity */
/* obsolete */
#define PAllHints (PPosition|PSize|PMinSize|PMaxSize|PResizeInc|PAspect)
typedef struct {
long flags; /* marks which fields in this structure are defined */
Bool input; /* does this application rely on the window manager to
get keyboard input? */
int initial_state; /* see below */
Pixmap icon_pixmap; /* pixmap to be used as icon */
Window icon_window; /* window to be used as icon */
int icon_x, icon_y; /* initial position of icon */
Pixmap icon_mask; /* icon mask bitmap */
XID window_group; /* id of related window group */
/* this structure may be extended in the future */
} XWMHints;
/* definition for flags of XWMHints */
#define InputHint (1L << 0)
#define StateHint (1L << 1)
#define IconPixmapHint (1L << 2)
#define IconWindowHint (1L << 3)
#define IconPositionHint (1L << 4)
#define IconMaskHint (1L << 5)
#define WindowGroupHint (1L << 6)
#define AllHints (InputHint|StateHint|IconPixmapHint|IconWindowHint| \
IconPositionHint|IconMaskHint|WindowGroupHint)
#define XUrgencyHint (1L << 8)
/* definitions for initial window state */
#define WithdrawnState 0 /* for windows that are not mapped */
#define NormalState 1 /* most applications want to start this way */
#define IconicState 3 /* application wants to start as an icon */
/*
* Obsolete states no longer defined by ICCCM
*/
#define DontCareState 0 /* don't know or care */
#define ZoomState 2 /* application wants to start zoomed */
#define InactiveState 4 /* application believes it is seldom used; */
/* some wm's may put it on inactive menu */
/*
* new structure for manipulating TEXT properties; used with WM_NAME,
* WM_ICON_NAME, WM_CLIENT_MACHINE, and WM_COMMAND.
*/
typedef struct {
unsigned char *value; /* same as Property routines */
Atom encoding; /* prop type */
int format; /* prop data format: 8, 16, or 32 */
unsigned long nitems; /* number of data items in value */
} XTextProperty;
#define XNoMemory -1
#define XLocaleNotSupported -2
#define XConverterNotFound -3
typedef enum {
XStringStyle, /* STRING */
XCompoundTextStyle, /* COMPOUND_TEXT */
XTextStyle, /* text in owner's encoding (current locale)*/
XStdICCTextStyle /* STRING, else COMPOUND_TEXT */
} XICCEncodingStyle;
typedef struct {
int min_width, min_height;
int max_width, max_height;
int width_inc, height_inc;
} XIconSize;
typedef struct {
char *res_name;
char *res_class;
} XClassHint;
/*
* These macros are used to give some sugar to the image routines so that
* naive people are more comfortable with them.
*/
#define XDestroyImage(ximage) \
((*((ximage)->f.destroy_image))((ximage)))
#define XGetPixel(ximage, x, y) \
((*((ximage)->f.get_pixel))((ximage), (x), (y)))
#define XPutPixel(ximage, x, y, pixel) \
((*((ximage)->f.put_pixel))((ximage), (x), (y), (pixel)))
#define XSubImage(ximage, x, y, width, height) \
((*((ximage)->f.sub_image))((ximage), (x), (y), (width), (height)))
#define XAddPixel(ximage, value) \
((*((ximage)->f.add_pixel))((ximage), (value)))
/*
* Compose sequence status structure, used in calling XLookupString.
*/
typedef struct _XComposeStatus {
XPointer compose_ptr; /* state table pointer */
int chars_matched; /* match state */
} XComposeStatus;
/*
* Keysym macros, used on Keysyms to test for classes of symbols
*/
#define IsKeypadKey(keysym) \
(((KeySym)(keysym) >= XK_KP_Space) && ((KeySym)(keysym) <= XK_KP_Equal))
#define IsPrivateKeypadKey(keysym) \
(((KeySym)(keysym) >= 0x11000000) && ((KeySym)(keysym) <= 0x1100FFFF))
#define IsCursorKey(keysym) \
(((KeySym)(keysym) >= XK_Home) && ((KeySym)(keysym) < XK_Select))
#define IsPFKey(keysym) \
(((KeySym)(keysym) >= XK_KP_F1) && ((KeySym)(keysym) <= XK_KP_F4))
#define IsFunctionKey(keysym) \
(((KeySym)(keysym) >= XK_F1) && ((KeySym)(keysym) <= XK_F35))
#define IsMiscFunctionKey(keysym) \
(((KeySym)(keysym) >= XK_Select) && ((KeySym)(keysym) <= XK_Break))
#define IsModifierKey(keysym) \
((((KeySym)(keysym) >= XK_Shift_L) && ((KeySym)(keysym) <= XK_Hyper_R)) \
|| ((KeySym)(keysym) == XK_Mode_switch) \
|| ((KeySym)(keysym) == XK_Num_Lock))
/*
* opaque reference to Region data type
*/
typedef struct _XRegion *Region;
/* Return values from XRectInRegion() */
#define RectangleOut 0
#define RectangleIn 1
#define RectanglePart 2
/*
* Information used by the visual utility routines to find desired visual
* type from the many visuals a display may support.
*/
typedef struct {
Visual *visual;
VisualID visualid;
int screen;
int depth;
#if defined(__cplusplus) || defined(c_plusplus)
int c_class; /* C++ */
#else
int class;
#endif
unsigned long red_mask;
unsigned long green_mask;
unsigned long blue_mask;
int colormap_size;
int bits_per_rgb;
} XVisualInfo;
#define VisualNoMask 0x0
#define VisualIDMask 0x1
#define VisualScreenMask 0x2
#define VisualDepthMask 0x4
#define VisualClassMask 0x8
#define VisualRedMaskMask 0x10
#define VisualGreenMaskMask 0x20
#define VisualBlueMaskMask 0x40
#define VisualColormapSizeMask 0x80
#define VisualBitsPerRGBMask 0x100
#define VisualAllMask 0x1FF
/*
* This defines a window manager property that clients may use to
* share standard color maps of type RGB_COLOR_MAP:
*/
typedef struct {
Colormap colormap;
unsigned long red_max;
unsigned long red_mult;
unsigned long green_max;
unsigned long green_mult;
unsigned long blue_max;
unsigned long blue_mult;
unsigned long base_pixel;
VisualID visualid; /* added by ICCCM version 1 */
XID killid; /* added by ICCCM version 1 */
} XStandardColormap;
#define ReleaseByFreeingColormap ((XID) 1L) /* for killid field above */
/*
* return codes for XReadBitmapFile and XWriteBitmapFile
*/
#define BitmapSuccess 0
#define BitmapOpenFailed 1
#define BitmapFileInvalid 2
#define BitmapNoMemory 3
/****************************************************************
*
* Context Management
*
****************************************************************/
/* Associative lookup table return codes */
#define XCSUCCESS 0 /* No error. */
#define XCNOMEM 1 /* Out of memory */
#define XCNOENT 2 /* No entry in table */
typedef int XContext;
#define XUniqueContext() ((XContext) XrmUniqueQuark())
#define XStringToContext(string) ((XContext) XrmStringToQuark(string))
_XFUNCPROTOBEGIN
/* The following declarations are alphabetized. */
extern XClassHint *XAllocClassHint (
#if NeedFunctionPrototypes
void
#endif
);
extern XIconSize *XAllocIconSize (
#if NeedFunctionPrototypes
void
#endif
);
extern XSizeHints *XAllocSizeHints (
#if NeedFunctionPrototypes
void
#endif
);
extern XStandardColormap *XAllocStandardColormap (
#if NeedFunctionPrototypes
void
#endif
);
extern XWMHints *XAllocWMHints (
#if NeedFunctionPrototypes
void
#endif
);
extern int XClipBox(
#if NeedFunctionPrototypes
Region /* r */,
XRectangle* /* rect_return */
#endif
);
extern Region XCreateRegion(
#if NeedFunctionPrototypes
void
#endif
);
extern char *XDefaultString(
#if NeedFunctionPrototypes
void
#endif
);
extern int XDeleteContext(
#if NeedFunctionPrototypes
Display* /* display */,
XID /* rid */,
XContext /* context */
#endif
);
extern int XDestroyRegion(
#if NeedFunctionPrototypes
Region /* r */
#endif
);
extern int XEmptyRegion(
#if NeedFunctionPrototypes
Region /* r */
#endif
);
extern int XEqualRegion(
#if NeedFunctionPrototypes
Region /* r1 */,
Region /* r2 */
#endif
);
extern int XFindContext(
#if NeedFunctionPrototypes
Display* /* display */,
XID /* rid */,
XContext /* context */,
XPointer* /* data_return */
#endif
);
extern Status XGetClassHint(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XClassHint* /* class_hints_return */
#endif
);
extern Status XGetIconSizes(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XIconSize** /* size_list_return */,
int* /* count_return */
#endif
);
extern Status XGetNormalHints(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XSizeHints* /* hints_return */
#endif
);
extern Status XGetRGBColormaps(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XStandardColormap** /* stdcmap_return */,
int* /* count_return */,
Atom /* property */
#endif
);
extern Status XGetSizeHints(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XSizeHints* /* hints_return */,
Atom /* property */
#endif
);
extern Status XGetStandardColormap(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XStandardColormap* /* colormap_return */,
Atom /* property */
#endif
);
extern Status XGetTextProperty(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* window */,
XTextProperty* /* text_prop_return */,
Atom /* property */
#endif
);
extern XVisualInfo *XGetVisualInfo(
#if NeedFunctionPrototypes
Display* /* display */,
long /* vinfo_mask */,
XVisualInfo* /* vinfo_template */,
int* /* nitems_return */
#endif
);
extern Status XGetWMClientMachine(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XTextProperty* /* text_prop_return */
#endif
);
extern XWMHints *XGetWMHints(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */
#endif
);
extern Status XGetWMIconName(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XTextProperty* /* text_prop_return */
#endif
);
extern Status XGetWMName(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XTextProperty* /* text_prop_return */
#endif
);
extern Status XGetWMNormalHints(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XSizeHints* /* hints_return */,
long* /* supplied_return */
#endif
);
extern Status XGetWMSizeHints(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XSizeHints* /* hints_return */,
long* /* supplied_return */,
Atom /* property */
#endif
);
extern Status XGetZoomHints(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XSizeHints* /* zhints_return */
#endif
);
extern int XIntersectRegion(
#if NeedFunctionPrototypes
Region /* sra */,
Region /* srb */,
Region /* dr_return */
#endif
);
extern void XConvertCase(
#if NeedFunctionPrototypes
KeySym /* sym */,
KeySym* /* lower */,
KeySym* /* upper */
#endif
);
extern int XLookupString(
#if NeedFunctionPrototypes
XKeyEvent* /* event_struct */,
char* /* buffer_return */,
int /* bytes_buffer */,
KeySym* /* keysym_return */,
XComposeStatus* /* status_in_out */
#endif
);
extern Status XMatchVisualInfo(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen */,
int /* depth */,
int /* class */,
XVisualInfo* /* vinfo_return */
#endif
);
extern int XOffsetRegion(
#if NeedFunctionPrototypes
Region /* r */,
int /* dx */,
int /* dy */
#endif
);
extern Bool XPointInRegion(
#if NeedFunctionPrototypes
Region /* r */,
int /* x */,
int /* y */
#endif
);
extern Region XPolygonRegion(
#if NeedFunctionPrototypes
XPoint* /* points */,
int /* n */,
int /* fill_rule */
#endif
);
extern int XRectInRegion(
#if NeedFunctionPrototypes
Region /* r */,
int /* x */,
int /* y */,
unsigned int /* width */,
unsigned int /* height */
#endif
);
extern int XSaveContext(
#if NeedFunctionPrototypes
Display* /* display */,
XID /* rid */,
XContext /* context */,
_Xconst char* /* data */
#endif
);
extern int XSetClassHint(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XClassHint* /* class_hints */
#endif
);
extern int XSetIconSizes(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XIconSize* /* size_list */,
int /* count */
#endif
);
extern int XSetNormalHints(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XSizeHints* /* hints */
#endif
);
extern void XSetRGBColormaps(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XStandardColormap* /* stdcmaps */,
int /* count */,
Atom /* property */
#endif
);
extern int XSetSizeHints(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XSizeHints* /* hints */,
Atom /* property */
#endif
);
extern int XSetStandardProperties(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
_Xconst char* /* window_name */,
_Xconst char* /* icon_name */,
Pixmap /* icon_pixmap */,
char** /* argv */,
int /* argc */,
XSizeHints* /* hints */
#endif
);
extern void XSetTextProperty(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XTextProperty* /* text_prop */,
Atom /* property */
#endif
);
extern void XSetWMClientMachine(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XTextProperty* /* text_prop */
#endif
);
extern int XSetWMHints(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XWMHints* /* wm_hints */
#endif
);
extern void XSetWMIconName(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XTextProperty* /* text_prop */
#endif
);
extern void XSetWMName(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XTextProperty* /* text_prop */
#endif
);
extern void XSetWMNormalHints(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XSizeHints* /* hints */
#endif
);
extern void XSetWMProperties(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XTextProperty* /* window_name */,
XTextProperty* /* icon_name */,
char** /* argv */,
int /* argc */,
XSizeHints* /* normal_hints */,
XWMHints* /* wm_hints */,
XClassHint* /* class_hints */
#endif
);
extern void XmbSetWMProperties(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
_Xconst char* /* window_name */,
_Xconst char* /* icon_name */,
char** /* argv */,
int /* argc */,
XSizeHints* /* normal_hints */,
XWMHints* /* wm_hints */,
XClassHint* /* class_hints */
#endif
);
extern void XSetWMSizeHints(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XSizeHints* /* hints */,
Atom /* property */
#endif
);
extern int XSetRegion(
#if NeedFunctionPrototypes
Display* /* display */,
GC /* gc */,
Region /* r */
#endif
);
extern void XSetStandardColormap(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XStandardColormap* /* colormap */,
Atom /* property */
#endif
);
extern int XSetZoomHints(
#if NeedFunctionPrototypes
Display* /* display */,
Window /* w */,
XSizeHints* /* zhints */
#endif
);
extern int XShrinkRegion(
#if NeedFunctionPrototypes
Region /* r */,
int /* dx */,
int /* dy */
#endif
);
extern Status XStringListToTextProperty(
#if NeedFunctionPrototypes
char** /* list */,
int /* count */,
XTextProperty* /* text_prop_return */
#endif
);
extern int XSubtractRegion(
#if NeedFunctionPrototypes
Region /* sra */,
Region /* srb */,
Region /* dr_return */
#endif
);
extern int XmbTextListToTextProperty(
#if NeedFunctionPrototypes
Display* /* display */,
char** /* list */,
int /* count */,
XICCEncodingStyle /* style */,
XTextProperty* /* text_prop_return */
#endif
);
extern int XwcTextListToTextProperty(
#if NeedFunctionPrototypes
Display* /* display */,
wchar_t** /* list */,
int /* count */,
XICCEncodingStyle /* style */,
XTextProperty* /* text_prop_return */
#endif
);
extern void XwcFreeStringList(
#if NeedFunctionPrototypes
wchar_t** /* list */
#endif
);
extern Status XTextPropertyToStringList(
#if NeedFunctionPrototypes
XTextProperty* /* text_prop */,
char*** /* list_return */,
int* /* count_return */
#endif
);
extern int XmbTextPropertyToTextList(
#if NeedFunctionPrototypes
Display* /* display */,
XTextProperty* /* text_prop */,
char*** /* list_return */,
int* /* count_return */
#endif
);
extern int XwcTextPropertyToTextList(
#if NeedFunctionPrototypes
Display* /* display */,
XTextProperty* /* text_prop */,
wchar_t*** /* list_return */,
int* /* count_return */
#endif
);
extern int XUnionRectWithRegion(
#if NeedFunctionPrototypes
XRectangle* /* rectangle */,
Region /* src_region */,
Region /* dest_region_return */
#endif
);
extern int XUnionRegion(
#if NeedFunctionPrototypes
Region /* sra */,
Region /* srb */,
Region /* dr_return */
#endif
);
extern int XWMGeometry(
#if NeedFunctionPrototypes
Display* /* display */,
int /* screen_number */,
_Xconst char* /* user_geometry */,
_Xconst char* /* default_geometry */,
unsigned int /* border_width */,
XSizeHints* /* hints */,
int* /* x_return */,
int* /* y_return */,
int* /* width_return */,
int* /* height_return */,
int* /* gravity_return */
#endif
);
extern int XXorRegion(
#if NeedFunctionPrototypes
Region /* sra */,
Region /* srb */,
Region /* dr_return */
#endif
);
_XFUNCPROTOEND
#endif /* _XUTIL_H_ */

107
include/X11/cursorfont.h Normal file
View file

@ -0,0 +1,107 @@
/* $Xorg: cursorfont.h,v 1.4 2001/02/09 02:03:39 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.
*/
#define XC_num_glyphs 154
#define XC_X_cursor 0
#define XC_arrow 2
#define XC_based_arrow_down 4
#define XC_based_arrow_up 6
#define XC_boat 8
#define XC_bogosity 10
#define XC_bottom_left_corner 12
#define XC_bottom_right_corner 14
#define XC_bottom_side 16
#define XC_bottom_tee 18
#define XC_box_spiral 20
#define XC_center_ptr 22
#define XC_circle 24
#define XC_clock 26
#define XC_coffee_mug 28
#define XC_cross 30
#define XC_cross_reverse 32
#define XC_crosshair 34
#define XC_diamond_cross 36
#define XC_dot 38
#define XC_dotbox 40
#define XC_double_arrow 42
#define XC_draft_large 44
#define XC_draft_small 46
#define XC_draped_box 48
#define XC_exchange 50
#define XC_fleur 52
#define XC_gobbler 54
#define XC_gumby 56
#define XC_hand1 58
#define XC_hand2 60
#define XC_heart 62
#define XC_icon 64
#define XC_iron_cross 66
#define XC_left_ptr 68
#define XC_left_side 70
#define XC_left_tee 72
#define XC_leftbutton 74
#define XC_ll_angle 76
#define XC_lr_angle 78
#define XC_man 80
#define XC_middlebutton 82
#define XC_mouse 84
#define XC_pencil 86
#define XC_pirate 88
#define XC_plus 90
#define XC_question_arrow 92
#define XC_right_ptr 94
#define XC_right_side 96
#define XC_right_tee 98
#define XC_rightbutton 100
#define XC_rtl_logo 102
#define XC_sailboat 104
#define XC_sb_down_arrow 106
#define XC_sb_h_double_arrow 108
#define XC_sb_left_arrow 110
#define XC_sb_right_arrow 112
#define XC_sb_up_arrow 114
#define XC_sb_v_double_arrow 116
#define XC_shuttle 118
#define XC_sizing 120
#define XC_spider 122
#define XC_spraycan 124
#define XC_star 126
#define XC_target 128
#define XC_tcross 130
#define XC_top_left_arrow 132
#define XC_top_left_corner 134
#define XC_top_right_corner 136
#define XC_top_side 138
#define XC_top_tee 140
#define XC_trek 142
#define XC_ul_angle 144
#define XC_umbrella 146
#define XC_ur_angle 148
#define XC_watch 150
#define XC_xterm 152

382
man/AllPlanes.man Normal file
View file

@ -0,0 +1,382 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH AllPlanes 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
AllPlanes, BlackPixel, WhitePixel, ConnectionNumber, DefaultColormap, DefaultDepth, XListDepths, DefaultGC, DefaultRootWindow, DefaultScreenOfDisplay, DefaultScreen, DefaultVisual, DisplayCells, DisplayPlanes, DisplayString, XMaxRequestSize, XExtendedMaxRequestSize, LastKnownRequestProcessed, NextRequest, ProtocolVersion, ProtocolRevision, QLength, RootWindow, ScreenCount, ScreenOfDisplay, ServerVendor, VendorRelease \- Display macros and functions
.SH SYNTAX
AllPlanes
.LP
BlackPixel\^(\^\fIdisplay\fP\^, \^\fIscreen_number\fP\^)
.LP
WhitePixel\^(\^\fIdisplay\fP\^, \^\fIscreen_number\fP\^)
.LP
ConnectionNumber\^(\^\fIdisplay\fP\^)
.LP
DefaultColormap\^(\^\fIdisplay\fP\^, \^\fIscreen_number\fP\^)
.LP
DefaultDepth\^(\^\fIdisplay\fP\^, \^\fIscreen_number\fP\^)
.LP
int *XListDepths\^(\^\fIdisplay\fP, \fIscreen_number\fP, \fIcount_return\fP\^)
.br
Display *\fIdisplay\fP;
.br
int \fIscreen_number\fP;
.br
int *\fIcount_return\fP;
.LP
DefaultGC\^(\^\fIdisplay\fP\^, \^\fIscreen_number\fP\^)
.LP
DefaultRootWindow\^(\^\fIdisplay\fP\^)
.LP
DefaultScreenOfDisplay\^(\^\fIdisplay\fP\^)
.LP
DefaultScreen\^(\^\fIdisplay\fP\^)
.LP
DefaultVisual\^(\^\fIdisplay\fP\^, \^\fIscreen_number\fP\^)
.LP
DisplayCells\^(\^\fIdisplay\fP\^, \^\fIscreen_number\fP\^)
.LP
DisplayPlanes\^(\^\fIdisplay\fP\^, \^\fIscreen_number\fP\^)
.LP
DisplayString\^(\^\fIdisplay\fP\^)
.LP
long XMaxRequestSize(\^\fIdisplay\fP\^)
Display *\fIdisplay\fP\^;
.LP
long XExtendedMaxRequestSize(\^\fIdisplay\fP\^)
Display *\fIdisplay\fP\^;
.LP
LastKnownRequestProcessed\^(\^\fIdisplay\fP\^)
.LP
NextRequest\^(\^\fIdisplay\fP\^)
.LP
ProtocolVersion\^(\^\fIdisplay\fP\^)
.LP
ProtocolRevision\^(\^\fIdisplay\fP\^)
.LP
QLength\^(\^\fIdisplay\fP\^)
.LP
RootWindow\^(\^\fIdisplay\fP\^, \^\fIscreen_number\fP\^)
.LP
ScreenCount\^(\^\fIdisplay\fP\^)
.LP
ScreenOfDisplay\^(\^\fIdisplay\fP, \fIscreen_number\fP\^)
.LP
ServerVendor\^(\^\fIdisplay\fP\^)
.LP
VendorRelease\^(\^\fIdisplay\fP\^)
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIscreen_number\fP 1i
Specifies the appropriate screen number on the host server.
.ds Cn depths
.IP \fIcount_return\fP 1i
Returns the number of \*(Cn.
.SH DESCRIPTION
The
.ZN AllPlanes
macro returns a value with all bits set to 1 suitable for use in a plane
argument to a procedure.
.LP
The
.ZN BlackPixel
macro returns the black pixel value for the specified screen.
.LP
The
.ZN WhitePixel
macro returns the white pixel value for the specified screen.
.LP
The
.ZN ConnectionNumber
macro returns a connection number for the specified display.
.LP
The
.ZN DefaultColormap
macro returns the default colormap ID for allocation on the specified screen.
.LP
The
.ZN DefaultDepth
macro returns the depth (number of planes) of the default root window for the
specified screen.
.LP
The
.ZN XListDepths
function returns the array of depths
that are available on the specified screen.
If the specified screen_number is valid and sufficient memory for the array
can be allocated,
.ZN XListDepths
sets count_return to the number of available depths.
Otherwise, it does not set count_return and returns NULL.
To release the memory allocated for the array of depths, use
.ZN XFree .
.LP
The
.ZN DefaultGC
macro returns the default GC for the root window of the
specified screen.
.LP
The
.ZN DefaultRootWindow
macro returns the root window for the default screen.
.LP
The
.ZN DefaultScreenOfDisplay
macro returns the default screen of the specified display.
.LP
The
.ZN DefaultScreen
macro returns the default screen number referenced in the
.ZN XOpenDisplay
routine.
.LP
The
.ZN DefaultVisual
macro returns the default visual type for the specified screen.
.LP
The
.ZN DisplayCells
macro returns the number of entries in the default colormap.
.LP
The
.ZN DisplayPlanes
macro returns the depth of the root window of the specified screen.
.LP
The
.ZN DisplayString
macro returns the string that was passed to
.ZN XOpenDisplay
when the current display was opened.
.LP
The
.ZN XMaxRequestSize
function returns the maximum request size (in 4-byte units) supported
by the server without using an extended-length protocol encoding.
Single protocol requests to the server can be no larger than this size
unless an extended-length protocol encoding is supported by the server.
The protocol guarantees the size to be no smaller than 4096 units
(16384 bytes).
Xlib automatically breaks data up into multiple protocol requests
as necessary for the following functions:
.ZN XDrawPoints ,
.ZN XDrawRectangles ,
.ZN XDrawSegments ,
.ZN XFillArcs ,
.ZN XFillRectangles ,
and
.ZN XPutImage .
.LP
The
.ZN XExtendedMaxRequestSize
function returns zero if the specified display does not support an
extended-length protocol encoding; otherwise,
it returns the maximum request size (in 4-byte units) supported
by the server using the extended-length encoding.
The Xlib functions
.ZN XDrawLines ,
.ZN XDrawArcs ,
.ZN XFillPolygon ,
.ZN XChangeProperty ,
.ZN XSetClipRectangles ,
and
.ZN XSetRegion
will use the extended-length encoding as necessary, if supported
by the server. Use of the extended-length encoding in other Xlib
functions (for example,
.ZN XDrawPoints ,
.ZN XDrawRectangles ,
.ZN XDrawSegments ,
.ZN XFillArcs ,
.ZN XFillRectangles ,
.ZN XPutImage )
is permitted but not required; an Xlib implementation may choose to
split the data across multiple smaller requests instead.
.LP
The
.ZN LastKnownRequestProcessed
macro extracts the full serial number of the last request known by Xlib
to have been processed by the X server.
.LP
The
.ZN NextRequest
macro extracts the full serial number that is to be used for the next request.
.LP
The
.ZN ProtocolVersion
macro returns the major version number (11) of the X protocol associated with
the connected display.
.LP
The
.ZN ProtocolRevision
macro returns the minor protocol revision number of the X server.
.LP
The
.ZN QLength
macro returns the length of the event queue for the connected display.
.LP
The
.ZN RootWindow
macro returns the root window.
.LP
The
.ZN ScreenCount
macro returns the number of available screens.
.LP
The
.ZN ScreenOfDisplay
macro returns a pointer to the screen of the specified display.
.LP
The
.ZN ServerVendor
macro returns a pointer to a null-terminated string that provides
some identification of the owner of the X server implementation.
.LP
The
.ZN VendorRelease
macro returns a number related to a vendor's release of the X server.
.SH "SEE ALSO"
BlackPixelOfScreen(3X11),
ImageByteOrder(3X11),
IsCursorKey(3X11),
XOpenDisplay(3X11)
.br
\fI\*(xL\fP

287
man/BlackPixelOfScreen.man Normal file
View file

@ -0,0 +1,287 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH BlackPixelOfScreen 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
BlackPixelOfScreen, WhitePixelOfScreen, CellsOfScreen, DefaultColormapOfScreen, DefaultDepthOfScreen, DefaultGCOfScreen, DefaultVisualOfScreen, DoesBackingStore, DoesSaveUnders, DisplayOfScreen, XScreenNumberOfScreen, EventMaskOfScreen, HeightOfScreen, HeightMMOfScreen, MaxCmapsOfScreen, MinCmapsOfScreen, PlanesOfScreen, RootWindowOfScreen, WidthOfScreen, WidthMMOfScreen \- screen information functions and macros
.SH SYNTAX
BlackPixelOfScreen\^(\^\fIscreen\fP\^)
.LP
WhitePixelOfScreen\^(\^\fIscreen\fP\^)
.LP
CellsOfScreen\^(\^\fIscreen\fP\^)
.LP
DefaultColormapOfScreen\^(\^\fIscreen\fP\^)
.LP
DefaultDepthOfScreen\^(\^\fIscreen\fP\^)
.LP
DefaultGCOfScreen\^(\^\fIscreen\fP\^)
.LP
DefaultVisualOfScreen\^(\^\fIscreen\fP\^)
.LP
DoesBackingStore\^(\^\fIscreen\fP\^)
.LP
DoesSaveUnders\^(\^\fIscreen\fP\^)
.LP
DisplayOfScreen\^(\^\fIscreen\fP\^)
.LP
int XScreenNumberOfScreen\^(\^\fIscreen\fP\^)
.br
Screen *\fIscreen\fP\^;
.LP
EventMaskOfScreen\^(\^\fIscreen\fP\^)
.LP
HeightOfScreen\^(\^\fIscreen\fP\^)
.LP
HeightMMOfScreen\^(\^\fIscreen\fP\^)
.LP
MaxCmapsOfScreen\^(\^\fIscreen\fP\^)
.LP
MinCmapsOfScreen\^(\^\fIscreen\fP\^)
.LP
PlanesOfScreen\^(\^\fIscreen\fP\^)
.LP
RootWindowOfScreen\^(\^\fIscreen\fP\^)
.LP
WidthOfScreen\^(\^\fIscreen\fP\^)
.LP
WidthMMOfScreen\^(\^\fIscreen\fP\^)
.SH ARGUMENTS
.IP \fIscreen\fP 1i
Specifies the appropriate
.ZN Screen
structure.
.SH DESCRIPTION
The
.ZN BlackPixelOfScreen
macro returns the black pixel value of the specified screen.
.LP
The
.ZN WhitePixelOfScreen
macro returns the white pixel value of the specified screen.
.LP
The
.ZN CellsOfScreen
macro returns the number of colormap cells in the default colormap
of the specified screen.
.LP
The
.ZN DefaultColormapOfScreen
macro returns the default colormap of the specified screen.
.LP
The
.ZN DefaultDepthOfScreen
macro returns the default depth of the root window of the specified screen.
.LP
The
.ZN DefaultGCOfScreen
macro returns the default GC of the specified screen,
which has the same depth as the root window of the screen.
.LP
The
.ZN DefaultVisualOfScreen
macro returns the default visual of the specified screen.
.LP
The
.ZN DoesBackingStore
macro returns
.ZN WhenMapped ,
.ZN NotUseful ,
or
.ZN Always ,
which indicate whether the screen supports backing stores.
.LP
The
.ZN DoesSaveUnders
macro returns a Boolean value indicating whether the
screen supports save unders.
.LP
The
.ZN DisplayOfScreen
macro returns the display of the specified screen.
.LP
The
.ZN XScreenNumberOfScreen
function returns the screen index number of the specified screen.
.LP
The
.ZN EventMaskOfScreen
macro returns the root event mask of the root window for the specified screen
at connection setup.
.LP
The
.ZN HeightOfScreen
macro returns the height of the specified screen.
.LP
The
.ZN HeightMMOfScreen
macro returns the height of the specified screen in millimeters.
.LP
The
.ZN MaxCmapsOfScreen
macro returns the maximum number of installed colormaps supported
by the specified screen.
.LP
The
.ZN MinCmapsOfScreen
macro returns the minimum number of installed colormaps supported
by the specified screen.
.LP
The
.ZN PlanesOfScreen
macro returns the number of planes in the root window of the specified screen.
.LP
The
.ZN RootWindowOfScreen
macro returns the root window of the specified screen.
.LP
The
.ZN WidthOfScreen
macro returns the width of the specified screen.
.LP
The
.ZN WidthMMOfScreen
macro returns the width of the specified screen in millimeters.
.SH "SEE ALSO"
AllPlanes(3X11),
ImageByteOrder(3X11),
IsCursorKey(3X11)
.br
\fI\*(xL\fP

196
man/DisplayOfCCC.man Normal file
View file

@ -0,0 +1,196 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH DisplayOfCCC 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
DisplayOfCCC, VisualOfCCC, ScreenNumberOfCCC, ScreenWhitePointOfCCC, ClientWhitePointOfCCC \- Color Conversion Context macros
.SH SYNTAX
DisplayOfCCC\^(\^\fIccc\fP\^)
.br
XcmsCCC \fIccc\fP\^;
.LP
VisualOfCCC\^(\^\fIccc\fP\^)
.br
XcmsCCC \fIccc\fP\^;
.LP
ScreenNumberOfCCC\^(\^\fIccc\fP\^)
.br
XcmsCCC \fIccc\fP\^;
.LP
ScreenWhitePointOfCCC\^(\^\fIccc\fP\^)
.br
XcmsCCC \fIccc\fP\^;
.LP
ClientWhitePointOfCCC\^(\^\fIccc\fP\^)
.br
XcmsCCC \fIccc\fP\^;
.SH ARGUMENTS
.IP \fIccc\fP 1i
Specifies the CCC.
.SH DESCRIPTION
The
.ZN DisplayOfCCC
macro returns the display associated with the specified CCC.
.LP
The
.ZN VisualOfCCC
macro returns the visual associated with the specified CCC.
.LP
The
.ZN ScreenNumberOfCCC
macro returns the number of the screen associated with the specified CCC.
.LP
The
.ZN ScreenWhitePointOfCCC
macro returns the screen white point of the screen associated with
the specified CCC.
.LP
The
.ZN ClientWhitePointOfCC
macro returns the client white point of the screen associated with
the specified CCC.
.SH "SEE ALSO"
XcmsCCCOfColormap(3X11),
XcmsConvertColors(3X11),
XcmsCreateCCC(3X11),
XcmsDefaultCCC(3X11),
XcmsSetWhitePoint(3X11)
.br
\fI\*(xL\fP

247
man/ImageByteOrder.man Normal file
View file

@ -0,0 +1,247 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH ImageByteOrder 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
ImageByteOrder, BitmapBitOrder, BitmapPad, BitmapUnit, DisplayHeight, DisplayHeightMM, DisplayWidth, DisplayWidthMM, XListPixmapFormats, XPixmapFormatValues \- image format functions and macros
.SH SYNTAX
XPixmapFormatValues *XListPixmapFormats\^(\^\fIdisplay\fP, \fIcount_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
int *\fIcount_return\fP\^;
.LP
ImageByteOrder\^(\^\fIdisplay\fP\^)
.LP
BitmapBitOrder\^(\^\fIdisplay\fP\^)
.LP
BitmapPad\^(\^\fIdisplay\fP\^)
.LP
BitmapUnit\^(\^\fIdisplay\fP\^)
.LP
DisplayHeight\^(\^\fIdisplay\fP\^, \^\fIscreen_number\fP\^)
.LP
DisplayHeightMM\^(\^\fIdisplay\fP\^, \^\fIscreen_number\fP\^)
.LP
DisplayWidth\^(\^\fIdisplay\fP\^, \^\fIscreen_number\fP\^)
.LP
DisplayWidthMM\^(\^\fIdisplay\fP\^, \^\fIscreen_number\fP\^)
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.ds Cn pixmap formats that are supported by the display
.IP \fIcount_return\fP 1i
Returns the number of \*(Cn.
.IP \fIscreen_number\fP 1i
Specifies the appropriate screen number on the host server.
.SH DESCRIPTION
The
.ZN XListPixmapFormats
function returns an array of
.ZN XPixmapFormatValues
structures that describe the types of Z format images supported
by the specified display.
If insufficient memory is available,
.ZN XListPixmapFormats
returns NULL.
To free the allocated storage for the
.ZN XPixmapFormatValues
structures, use
.ZN XFree .
.LP
The
.ZN ImageByteOrder
macro specifies the required byte order for images for each scanline unit in
XY format (bitmap) or for each pixel value in Z format.
.LP
The
.ZN BitmapBitOrder
macro returns
.ZN LSBFirst
or
.ZN MSBFirst
to indicate whether the leftmost bit in the bitmap as displayed
on the screen is the least or most significant bit in the unit.
.LP
The
.ZN BitmapPad
macro returns the number of bits that each scanline must be padded.
.LP
The
.ZN BitmapUnit
macro returns the size of a bitmap's scanline unit in bits.
.LP
The
.ZN DisplayHeight
macro returns the height of the specified screen in pixels.
.LP
The
.ZN DisplayHeightMM
macro returns the height of the specified screen in millimeters.
.LP
The
.ZN DisplayWidth
macro returns the width of the screen in pixels.
.LP
The
.ZN DisplayWidthMM
macro returns the width of the specified screen in millimeters.
.SH STRUCTURES
The
.ZN XPixmapFormatValues
structure provides an interface to the pixmap format information
that is returned at the time of a connection setup.
It contains:
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int depth;
int bits_per_pixel;
int scanline_pad;
} XPixmapFormatValues;
.De
.SH "SEE ALSO"
AllPlanes(3X11),
BlackPixelOfScreen(3X11),
IsCursorKey(3X11),
XFree(3X11)
.br
\fI\*(xL\fP

209
man/IsCursorKey.man Normal file
View file

@ -0,0 +1,209 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH IsCursorKey 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
IsCursorKey, IsFunctionKey, IsKeypadKey, IsMiscFunctionKey, IsModiferKey, IsPFKey, IsPrivateKeypadKey \- keysym classification macros
.SH SYNTAX
IsCursorKey\^(\^\fIkeysym\fP\^)
.LP
IsFunctionKey\^(\^\fIkeysym\fP\^)
.LP
IsKeypadKey\^(\^\fIkeysym\fP\^)
.LP
IsMiscFunctionKey\^(\^\fIkeysym\fP\^)
.LP
IsModifierKey\^(\^\fIkeysym\fP\^)
.LP
IsPFKey\^(\^\fIkeysym\fP\^)
.LP
IsPrivateKeypadKey\^(\^\fIkeysym\fP\^)
.SH ARGUMENTS
.ds Fn tested
.IP \fIkeysym\fP 1i
Specifies the KeySym that is to be \*(Fn.
.SH DESCRIPTION
The
.ZN IsCursorKey
macro returns
.ZN True
if the specified KeySym is a cursor key.
.LP
The
.ZN IsFunctionKey
macro returns
.ZN True
if the KeySym is a function key.
.LP
The
.ZN IsKeypadKey
macro returns
.ZN True
if the specified KeySym is a keypad key.
.LP
The
.ZN IsMiscFunctionKey
macro returns
.ZN True
if the specified KeySym is a miscellaneous function key.
.LP
The
.ZN IsModiferKey
macro returns
.ZN True
if the specified KeySym is a modifier key.
.LP
The
.ZN IsPFKey
macro returns
.ZN True
if the specified KeySym is a PF key.
.LP
The
.ZN IsPrivateKeypadKey
macro returns
.ZN True
if the specified KeySym is a vendor-private keypad key.
.SH "SEE ALSO"
AllPlanes(3X11),
BlackPixelOfScreen(3X11),
ImageByteOrder(3X11)
.br
\fI\*(xL\fP

278
man/XAddConnectionWatch.man Normal file
View file

@ -0,0 +1,278 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XAddConnectionWatch 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XAddConnectionWatch, XRemoveConnectionWatch, XProcessInternalConnection, XInternalConnectionNumbers \- handle Xlib internal connections
.SH SYNTAX
typedef void (*XConnectionWatchProc)\^(\^\fIdisplay\fP, \fIclient_data\fP, \fIfd\fP, \fIopening\fP, \fIwatch_data\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XPointer \fIclient_data\fP\^;
.br
int \fIfd\fP\^;
.br
Bool \fIopening\fP\^;
.br
XPointer *\fIwatch_data\fP\^;
.LP
Status XAddConnectionWatch\^(\^\fIdisplay\fP, \fIprocedure\fP\^, \fIclient_data\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XWatchProc \fIprocedure\fP\^;
.br
XPointer \fIclient_data\fP\^;
.LP
Status XRemoveConnectionWatch\^(\^\fIdisplay\fP, \fIprocedure\fP\^, \fIclient_data\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XWatchProc \fIprocedure\fP\^;
.br
XPointer \fIclient_data\fP\^;
.LP
void XProcessInternalConnection\^(\^\fIdisplay\fP, \fIfd\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
int \fIfd\fP\^;
.LP
void XProcessInternalConnection\^(\^\fIdisplay\fP, \fIfd\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
int \fIfd\fP\^;
.LP
Status XInternalConnectionNumbers\^(\^\fIdisplay\fP, \fIfd_return\fP\^, \fIcount_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
int **\fIfd_return\fP\^;
.br
int *\fIcount_return\fP\^;
.SH ARGUMENTS
.IP \fIclient_data\fP 1i
Specifies the additional client data.
.ds Cn file descriptors
.IP \fIcount_return\fP 1i
Returns the number of \*(Cn.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIfd\fP 1i
Specifies the file descriptor.
.IP \fIfd_return\fP 1i
Returns the file descriptors.
.IP \fIprocedure\fP 1i
Specifies the procedure to be called.
.SH DESCRIPTION
The
.ZN XAddConnectionWatch
function registers a procedure to be called each time Xlib opens or closes an
internal connection for the specified display. The procedure is passed the
display, the specified client_data, the file descriptor for the connection,
a Boolean indicating whether the connection is being opened or closed, and a
pointer to a location for private watch data. If opening is
.ZN True ,
the procedure can store a pointer to private data in the location pointed
to by watch_data;
when the procedure is later called for this same connection and opening is
.ZN False ,
the location pointed to by watch_data will hold this same private data pointer.
.LP
This function can be called at any time after a display is opened.
If internal connections already exist, the registered procedure will
immediately be called for each of them, before
.ZN XAddConnectionWatch
returns.
.ZN XAddConnectionWatch
returns a nonzero status if the procedure is successfully registered;
otherwise, it returns zero.
.LP
The registered procedure should not call any Xlib functions.
If the procedure directly or indirectly causes the state of internal
connections or watch procedures to change, the result is not defined.
If Xlib has been initialized for threads, the procedure is called with
the display locked and the result of a call by the procedure to any
Xlib function that locks the display is not defined unless the executing
thread has externally locked the display using
.ZN XLockDisplay .
.LP
The
.ZN XRemoveConnectionWatch
function removes a previously registered connection watch procedure.
The client_data must match the client_data used when the procedure
was initially registered.
.LP
The
.ZN XProcessInternalConnection
function processes input available on an internal connection.
This function should be called for an internal connection only
after an operating system facility (for example,
.ZN select
or
.ZN poll )
has indicated that input is available; otherwise,
the effect is not defined.
.LP
The
.ZN XProcessInternalConnection
function processes input available on an internal connection.
This function should be called for an internal connection only
after an operating system facility (for example,
.ZN select
or
.ZN poll )
has indicated that input is available; otherwise,
the effect is not defined.
.LP
The
.ZN XInternalConnectionNumbers
function returns a list of the file descriptors for all internal
connections currently open for the specified display.
When the allocated list is no longer needed,
free it by using
.ZN XFree .
This functions returns a nonzero status if the list is successfully allocated;
otherwise, it returns zero.
.SH "SEE ALSO"
\fI\*(xL\fP

359
man/XAddHost.man Normal file
View file

@ -0,0 +1,359 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XAddHost 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XAddHost, XAddHosts, XListHosts, XRemoveHost, XRemoveHosts, XSetAccessControl, XEnableAccessControl, XDisableAccessControl, XHostAddress \- control host access and host control structure
.SH SYNTAX
XAddHost\^(\^\fIdisplay\fP, \fIhost\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XHostAddress *\fIhost\fP\^;
.LP
XAddHosts\^(\^\fIdisplay\fP, \fIhosts\fP, \fInum_hosts\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XHostAddress *\fIhosts\fP\^;
.br
int \fInum_hosts\fP\^;
.LP
XHostAddress *XListHosts\^(\^\fIdisplay\fP, \fInhosts_return\fP, \fIstate_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
int *\fInhosts_return\fP\^;
.br
Bool *\fIstate_return\fP\^;
.LP
XRemoveHost\^(\^\fIdisplay\fP, \fIhost\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XHostAddress *\fIhost\fP\^;
.LP
XRemoveHosts\^(\^\fIdisplay\fP, \fIhosts\fP, \fInum_hosts\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XHostAddress *\fIhosts\fP\^;
.br
int \fInum_hosts\fP\^;
.LP
XSetAccessControl\^(\^\fIdisplay\fP, \fImode\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
int \fImode\fP\^;
.LP
XEnableAccessControl\^(\^\fIdisplay\fP\^)
.br
Display *\fIdisplay\fP\^;
.LP
XDisableAccessControl\^(\^\fIdisplay\fP\^)
.br
Display *\fIdisplay\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.ds Ho added or removed
.IP \fIhost\fP 1i
Specifies the host that is to be \*(Ho.
.ds Ho added or removed
.IP \fIhosts\fP 1i
Specifies each host that is to be \*(Ho.
.IP \fImode\fP 1i
Specifies the mode.
You can pass
.ZN EnableAccess
or
.ZN DisableAccess .
.IP \fInhosts_return\fP 1i
Returns the number of hosts currently in the access control list.
.IP \fInum_hosts\fP 1i
Specifies the number of hosts.
.IP \fIstate_return\fP 1i
Returns the state of the access control.
.SH DESCRIPTION
The
.ZN XAddHost
function adds the specified host to the access control list for that display.
The server must be on the same host as the client issuing the command, or a
.ZN BadAccess
error results.
.LP
.ZN XAddHost
can generate
.ZN BadAccess
and
.ZN BadValue
errors.
.LP
The
.ZN XAddHosts
function adds each specified host to the access control list for that display.
The server must be on the same host as the client issuing the command, or a
.ZN BadAccess
error results.
.LP
.ZN XAddHosts
can generate
.ZN BadAccess
and
.ZN BadValue
errors.
.LP
The
.ZN XListHosts
function returns the current access control list as well as whether the use
of the list at connection setup was enabled or disabled.
.ZN XListHosts
allows a program to find out what machines can make connections.
It also returns a pointer to a list of host structures that
were allocated by the function.
When no longer needed,
this memory should be freed by calling
.ZN XFree .
.LP
The
.ZN XRemoveHost
function removes the specified host from the access control list
for that display.
The server must be on the same host as the client process, or a
.ZN BadAccess
error results.
If you remove your machine from the access list,
you can no longer connect to that server,
and this operation cannot be reversed unless you reset the server.
.LP
.ZN XRemoveHost
can generate
.ZN BadAccess
and
.ZN BadValue
errors.
.LP
The
.ZN XRemoveHosts
function removes each specified host from the access control list for that
display.
The X server must be on the same host as the client process, or a
.ZN BadAccess
error results.
If you remove your machine from the access list,
you can no longer connect to that server,
and this operation cannot be reversed unless you reset the server.
.LP
.ZN XRemoveHosts
can generate
.ZN BadAccess
and
.ZN BadValue
errors.
.LP
The
.ZN XSetAccessControl
function either enables or disables the use of the access control list
at each connection setup.
.LP
.ZN XSetAccessControl
can generate
.ZN BadAccess
and
.ZN BadValue
errors.
.LP
The
.ZN XEnableAccessControl
function enables the use of the access control list at each connection setup.
.LP
.ZN XEnableAccessControl
can generate a
.ZN BadAccess
error.
.LP
The
.ZN XDisableAccessControl
function disables the use of the access control list at each connection setup.
.LP
.ZN XDisableAccessControl
can generate a
.ZN BadAccess
error.
.SH STRUCTURES
The
.ZN XHostAddress
structure contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int family; /* for example FamilyInternet */
int length; /* length of address, in bytes */
char *address; /* pointer to where to find the address */
} XHostAddress;
.De
.LP
The family member specifies which protocol address family to use
(for example, TCP/IP or DECnet) and can be
.ZN FamilyInternet ,
.ZN FamilyDECnet ,
or
.ZN FamilyChaos .
The length member specifies the length of the address in bytes.
The address member specifies a pointer to the address.
.SH DIAGNOSTICS
.TP 1i
.ZN BadAccess
A client attempted
to modify the access control list from other than the local
(or otherwise authorized) host.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.SH "SEE ALSO"
XFree(3X11)
.br
\fI\*(xL\fP

275
man/XAllocClassHint.man Normal file
View file

@ -0,0 +1,275 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XAllocClassHint 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XAllocClassHint, XSetClassHint, XGetClassHint, XClassHint \- allocate class hints structure and set or read a window's WM_CLASS property
.SH SYNTAX
XClassHint *XAllocClassHint\^(\|)
.LP
XSetClassHint\^(\^\fIdisplay\fP, \fIw\fP, \fIclass_hints\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
XClassHint *\fIclass_hints\fP\^;
.LP
Status XGetClassHint\^(\^\fIdisplay\fP, \fIw\fP, \fIclass_hints_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP;
.br
XClassHint *\fIclass_hints_return\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIclass_hints\fP 1i
Specifies the
.ZN XClassHint
structure that is to be used.
.IP \fIclass_hints_return\fP 1i
Returns the
.ZN XClassHint
structure.
.IP \fIw\fP 1i
Specifies the window.
.SH DESCRIPTION
The
.ZN XAllocClassHint
function allocates and returns a pointer to a
.ZN XClassHint
structure.
Note that the pointer fields in the
.ZN XClassHint
structure are initially set to NULL.
If insufficient memory is available,
.ZN XAllocClassHint
returns NULL.
To free the memory allocated to this structure,
use
.ZN XFree .
.LP
The
.ZN XSetClassHint
function sets the class hint for the specified window.
If the strings are not in the Host Portable Character Encoding,
the result is implementation-dependent.
.LP
.ZN XSetClassHint
can generate
.ZN BadAlloc
and
.ZN BadWindow
errors.
.LP
The
.ZN XGetClassHint
function returns the class hint of the specified window to the members
of the supplied structure.
If the data returned by the server is in the Latin Portable Character Encoding,
then the returned strings are in the Host Portable Character Encoding.
Otherwise, the result is implementation-dependent.
It returns a nonzero status on success;
otherwise, it returns a zero status.
To free res_name and res_class when finished with the strings,
use
.ZN XFree
on each individually.
.LP
.ZN XGetClassHint
can generate a
.ZN BadWindow
error.
.SH PROPERTIES
.TP 1i
\s-1WM_CLASS\s+1
Set by application programs to allow window and session
managers to obtain the application's resources from the resource database.
.SH STRUCTURES
The
.ZN XClassHint
structure contains:
.LP
.IN "XClassHint" "" "@DEF@"
.Ds 0
.TA .5i
.ta .5i
typedef struct {
char *res_name;
char *res_class;
} XClassHint;
.De
.LP
The res_name member contains the application name,
and the res_class member contains the application class.
Note that the name set in this property may differ from the name set as WM_NAME.
That is, WM_NAME specifies what should be displayed in the title bar and,
therefore, can contain temporal information (for example, the name of
a file currently in an editor's buffer).
On the other hand,
the name specified as part of WM_CLASS is the formal name of the application
that should be used when retrieving the application's resources from the
resource database.
.SH DIAGNOSTICS
.TP 1i
.ZN BadAlloc
The server failed to allocate the requested resource or server memory.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XAllocIconSize(3X11),
XAllocSizeHints(3X11),
XAllocWMHints(3X11),
XFree(3X11),
XSetCommand(3X11),
XSetTransientForHint(3X11),
XSetTextProperty(3X11),
XSetWMClientMachine(3X11),
XSetWMColormapWindows(3X11),
XSetWMIconName(3X11),
XSetWMName(3X11),
XSetWMProperties(3X11),
XSetWMProtocols(3X11),
XStringListToTextProperty(3X11)
.br
\fI\*(xL\fP

493
man/XAllocColor.man Normal file
View file

@ -0,0 +1,493 @@
'\" e
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
'\" e
.TH XAllocColor 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XAllocColor, XAllocNamedColor, XAllocColorCells, XAllocColorPlanes, XFreeColors \- allocate and free colors
.SH SYNTAX
Status XAllocColor\^(\^\fIdisplay\fP, \fIcolormap\fP\^, \fIscreen_in_out\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Colormap \fIcolormap\fP\^;
.br
XColor *\fIscreen_in_out\fP\^;
.LP
Status XAllocNamedColor\^(\^\fIdisplay\fP, \fIcolormap\fP\^, \
\fIcolor_name\fP\^, \fIscreen_def_return\fP\^, \fIexact_def_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Colormap \fIcolormap\fP\^;
.br
char *\fIcolor_name\fP\^;
.br
XColor *\fIscreen_def_return\fP\^, *\fIexact_def_return\fP\^;
.LP
Status XAllocColorCells\^(\^\fIdisplay\fP, \fIcolormap\fP\^, \fIcontig\fP\^, \
\fIplane_masks_return\fP\^, \fInplanes\fP\^,
.br
\fIpixels_return\fP\^, \fInpixels\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Colormap \fIcolormap\fP\^;
.br
Bool \fIcontig\fP\^;
.br
unsigned long \fIplane_masks_return\fP[\^]\^;
.br
unsigned int \fInplanes\fP\^;
.br
unsigned long \fIpixels_return\fP[\^]\^;
.br
unsigned int \fInpixels\fP\^;
.LP
Status XAllocColorPlanes\^(\^\fIdisplay\fP, \fIcolormap\fP\^, \fIcontig\fP\^, \fIpixels_return\fP\^, \fIncolors\fP\^, \fInreds\fP\^, \fIngreens\fP\^,
.br
\fInblues\fP\^, \fIrmask_return\fP\^, \fIgmask_return\fP\^, \fIbmask_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Colormap \fIcolormap\fP\^;
.br
Bool \fIcontig\fP\^;
.br
unsigned long \fIpixels_return\fP[\^]\^;
.br
int \fIncolors\fP\^;
.br
int \fInreds\fP\^, \fIngreens\fP\^, \fInblues\fP\^;
.br
unsigned long *\fIrmask_return\fP\^, *\fIgmask_return\fP\^, *\fIbmask_return\fP\^;
.LP
XFreeColors\^(\^\fIdisplay\fP, \fIcolormap\fP\^, \fIpixels\fP\^, \fInpixels\fP\^, \fIplanes\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Colormap \fIcolormap\fP\^;
.br
unsigned long \fIpixels\fP\^[\^];
.br
int \fInpixels\fP\^;
.br
unsigned long \fIplanes\fP\^;
.SH ARGUMENTS
.IP \fIcolor_name\fP 1i
Specifies the color name string (for example, red) whose color
definition structure you want returned.
.IP \fIcolormap\fP 1i
Specifies the colormap.
.IP \fIcontig\fP 1i
Specifies a Boolean value that indicates whether the planes must be contiguous.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIexact_def_return\fP 1i
Returns the exact RGB values.
.IP \fIncolors\fP 1i
Specifies the number of pixel values that are to be returned in the
pixels_return array.
.IP \fInpixels\fP 1i
Specifies the number of pixels.
.IP \fInplanes\fP 1i
Specifies the number of plane masks that are to be returned in the plane masks
array.
.IP \fInreds\fP 1i
.br
.ns
.IP \fIngreens\fP 1i
.br
.ns
.IP \fInblues\fP 1i
.br
.ns
Specify the number of red, green, and blue planes.
The value you pass must be nonnegative.
.IP \fIpixels\fP 1i
Specifies an array of pixel values.
.IP \fIpixels_return\fP 1i
Returns an array of pixel values.
.IP \fIplane_mask_return\fP 1i
Returns an array of plane masks.
.\" *** JIM: NEED MORE INFO FOR THIS. ***
.IP \fIplanes\fP 1i
Specifies the planes you want to free.
.IP \fIrmask_return\fP 1i
.br
.ns
.IP \fIgmask_return\fP 1i
.br
.ns
.IP \fIbmask_return\fP 1i
Return bit masks for the red, green, and blue planes.
.IP \fIscreen_def_return\fP 1i
Returns the closest RGB values provided by the hardware.
.IP \fIscreen_in_out\fP 1i
Specifies and returns the values actually used in the colormap.
.SH DESCRIPTION
The
.ZN XAllocColor
function allocates a read-only colormap entry corresponding to the closest
RGB value supported by the hardware.
.ZN XAllocColor
returns the pixel value of the color closest to the specified
RGB elements supported by the hardware
and returns the RGB value actually used.
The corresponding colormap cell is read-only.
In addition,
.ZN XAllocColor
returns nonzero if it succeeded or zero if it failed.
.IN "Color map"
.IN "Color" "allocation"
.IN "Allocation" "colormap"
.IN "read-only colormap cells"
Multiple clients that request the same effective RGB value can be assigned
the same read-only entry, thus allowing entries to be shared.
When the last client deallocates a shared cell, it is deallocated.
.ZN XAllocColor
does not use or affect the flags in the
.ZN XColor
structure.
.LP
.ZN XAllocColor
can generate a
.ZN BadColor
error.
.LP
The
.ZN XAllocNamedColor
function looks up the named color with respect to the screen that is
associated with the specified colormap.
It returns both the exact database definition and
the closest color supported by the screen.
The allocated color cell is read-only.
The pixel value is returned in screen_def_return.
If the color name is not in the Host Portable Character Encoding,
the result is implementation-dependent.
Use of uppercase or lowercase does not matter.
If screen_def_return and exact_def_return
point to the same structure, the pixel field will be set correctly,
but the color values are undefined.
.ZN XAllocNamedColor
returns nonzero if a cell is allocated;
otherwise, it returns zero.
.LP
.ZN XAllocNamedColor
can generate a
.ZN BadColor
error.
.LP
.EQ
delim %%
.EN
The
.ZN XAllocColorCells
function allocates read/write color cells.
The number of colors must be positive and the number of planes nonnegative,
or a
.ZN BadValue
error results.
If ncolors and nplanes are requested,
then ncolors pixels
and nplane plane masks are returned.
No mask will have any bits set to 1 in common with
any other mask or with any of the pixels.
By ORing together each pixel with zero or more masks,
ncolors * %2 sup nplanes% distinct pixels can be produced.
All of these are
allocated writable by the request.
For
.ZN GrayScale
or
.ZN PseudoColor ,
each mask has exactly one bit set to 1.
For
.ZN DirectColor ,
each has exactly three bits set to 1.
If contig is
.ZN True
and if all masks are ORed
together, a single contiguous set of bits set to 1 will be formed for
.ZN GrayScale
or
.ZN PseudoColor
and three contiguous sets of bits set to 1 (one within each
pixel subfield) for
.ZN DirectColor .
The RGB values of the allocated
entries are undefined.
.ZN XAllocColorCells
returns nonzero if it succeeded or zero if it failed.
.LP
.ZN XAllocColorCells
can generate
.ZN BadColor
and
.ZN BadValue
errors.
.LP
.EQ
delim %%
.EN
The specified ncolors must be positive;
and nreds, ngreens, and nblues must be nonnegative,
or a
.ZN BadValue
error results.
If ncolors colors, nreds reds, ngreens greens, and nblues blues are requested,
ncolors pixels are returned; and the masks have nreds, ngreens, and
nblues bits set to 1, respectively.
If contig is
.ZN True ,
each mask will have
a contiguous set of bits set to 1.
No mask will have any bits set to 1 in common with
any other mask or with any of the pixels.
For
.ZN DirectColor ,
each mask
will lie within the corresponding pixel subfield.
By ORing together
subsets of masks with each pixel value,
ncolors * %2 sup (nreds+ngreens+nblues)% distinct pixel values can be produced.
All of these are allocated by the request.
However, in the
colormap, there are only ncolors * %2 sup nreds% independent red entries,
ncolors * %2 sup ngreens% independent green entries,
and ncolors * %2 sup nblues% independent blue entries.
This is true even for
.ZN PseudoColor .
When the colormap entry of a pixel
value is changed (using
.ZN XStoreColors ,
.ZN XStoreColor ,
or
.ZN XStoreNamedColor ),
the pixel is decomposed according to the masks,
and the corresponding independent entries are updated.
.ZN XAllocColorPlanes
returns nonzero if it succeeded or zero if it failed.
.LP
.ZN XAllocColorPlanes
can generate
.ZN BadColor
and
.ZN BadValue
errors.
.LP
The
.ZN XFreeColors
function frees the cells represented by pixels whose values are in the
pixels array.
The planes argument should not have any bits set to 1 in common with any of the
pixels.
The set of all pixels is produced by ORing together subsets of
the planes argument with the pixels.
The request frees all of these pixels that
were allocated by the client (using
.IN XAllocColor
.IN XAllocNamedColor
.IN XAllocColorCells
.IN XAllocColorPlanes
.ZN XAllocColor ,
.ZN XAllocNamedColor ,
.ZN XAllocColorCells ,
and
.ZN XAllocColorPlanes ).
Note that freeing an
individual pixel obtained from
.ZN XAllocColorPlanes
may not actually allow
it to be reused until all of its related pixels are also freed.
Similarly,
a read-only entry is not actually freed until it has been freed by all clients,
and if a client allocates the same read-only entry multiple times,
it must free the entry that many times before the entry is actually freed.
.LP
All specified pixels that are allocated by the client in the colormap are
freed, even if one or more pixels produce an error.
If a specified pixel is not a valid index into the colormap, a
.ZN BadValue
error results.
If a specified pixel is not allocated by the
client (that is, is unallocated or is only allocated by another client)
or if the colormap was created with all entries writable (by passing
.ZN AllocAll
to
.ZN XCreateColormap ),
a
.ZN BadAccess
error results.
If more than one pixel is in error,
the one that gets reported is arbitrary.
.LP
.ZN XFreeColors
can generate
.ZN BadAccess ,
.ZN BadColor ,
and
.ZN BadValue
errors.
.SH DIAGNOSTICS
.TP 1i
.ZN BadAccess
A client attempted
to free a color map entry that it did not already allocate.
.TP 1i
.ZN BadAccess
A client attempted
to store into a read-only color map entry.
.TP 1i
.ZN BadColor
A value for a Colormap argument does not name a defined Colormap.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.SH "SEE ALSO"
XCreateColormap(3X11),
XQueryColor(3X11),
XStoreColors(3X11)
.br
\fI\*(xL\fP

274
man/XAllocIconSize.man Normal file
View file

@ -0,0 +1,274 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XAllocIconSize 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XAllocIconSize, XSetIconSizes, XGetIconSizes, XIconSize \- allocate icon size structure and set or read a window's WM_ICON_SIZES property
.SH SYNTAX
XIconSize *XAllocIconSize\^(\|)
.LP
XSetIconSizes\^(\^\fIdisplay\fP, \fIw\fP, \fIsize_list\fP, \fIcount\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
XIconSize *\fIsize_list\fP\^;
.br
int \fIcount\fP\^;
.LP
Status XGetIconSizes\^(\^\fIdisplay\fP, \fIw\fP, \fIsize_list_return\fP, \fIcount_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
XIconSize **\fIsize_list_return\fP\^;
.br
int *\fIcount_return\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIcount\fP 1i
Specifies the number of items in the size list.
.IP \fIcount_return\fP 1i
Returns the number of items in the size list.
.IP \fIsize_list\fP 1i
Specifies the size list.
.IP \fIsize_list_return\fP 1i
Returns the size list.
.IP \fIw\fP 1i
Specifies the window.
.SH DESCRIPTION
The
.ZN XAllocIconSize
function allocates and returns a pointer to a
.ZN XIconSize
structure.
Note that all fields in the
.ZN XIconSize
structure are initially set to zero.
If insufficient memory is available,
.ZN XAllocIconSize
returns NULL.
To free the memory allocated to this structure,
use
.ZN XFree .
.LP
The
.ZN XSetIconSizes
function is used only by window managers to set the supported icon sizes.
.LP
.ZN XSetIconSizes
can generate
.ZN BadAlloc
and
.ZN BadWindow
errors.
.LP
The
.ZN XGetIconSizes
function returns zero if a window manager has not set icon sizes;
otherwise, it return nonzero.
.ZN XGetIconSizes
should be called by an application that
wants to find out what icon sizes would be most appreciated by the
window manager under which the application is running.
The application
should then use
.ZN XSetWMHints
to supply the window manager with an icon pixmap or window in one of the
supported sizes.
To free the data allocated in size_list_return, use
.ZN XFree .
.LP
.ZN XGetIconSizes
can generate a
.ZN BadWindow
error.
.SH PROPERTIES
.TP 1i
\s-1WM_ICON_SIZES\s+1
The window manager may set this property on the root window to
specify the icon sizes it supports.
The C type of this property is
.ZN XIconSize .
.SH STRUCTURES
The
.ZN XIconSize
structure contains:
.LP
.IN "XIconSize" "" "@DEF@"
.Ds 0
.TA .5i 2.5i
.ta .5i 2.5i
typedef struct {
int min_width, min_height;
int max_width, max_height;
int width_inc, height_inc;
} XIconSize;
.De
.LP
The width_inc and height_inc members define an arithmetic progression of
sizes (minimum to maximum) that represent the supported icon sizes.
.SH DIAGNOSTICS
.TP 1i
.ZN BadAlloc
The server failed to allocate the requested resource or server memory.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XAllocClassHint(3X11),
XAllocSizeHints(3X11),
XAllocWMHints(3X11),
XFree(3X11),
XSetCommand(3X11),
XSetTransientForHint(3X11),
XSetTextProperty(3X11),
XSetWMClientMachine(3X11),
XSetWMColormapWindows(3X11),
XSetWMIconName(3X11),
XSetWMName(3X11),
XSetWMProperties(3X11),
XSetWMProtocols(3X11),
XStringListToTextProperty(3X11)
.br
\fI\*(xL\fP

531
man/XAllocSizeHints.man Normal file
View file

@ -0,0 +1,531 @@
'\" t
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
'\" t
.TH XAllocSizeHints 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XAllocSizeHints, XSetWMNormalHints, XGetWMNormalHints, XSetWMSizeHints, XGetWMSizeHints, XSizeHints \- allocate size hints structure and set or read a window's WM_NORMAL_HINTS property
.SH SYNTAX
XSizeHints *XAllocSizeHints\^(\|)
.LP
void XSetWMNormalHints\^(\^\fIdisplay\fP, \fIw\fP, \fIhints\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
XSizeHints *\fIhints\fP\^;
.LP
Status XGetWMNormalHints\^(\^\fIdisplay\fP, \fIw\fP, \fIhints_return\fP, \
\fIsupplied_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
XSizeHints *\fIhints_return\fP\^;
.br
long *\fIsupplied_return\fP\^;
.LP
void XSetWMSizeHints\^(\^\fIdisplay\fP, \fIw\fP, \fIhints\fP, \fIproperty\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
XSizeHints *\fIhints\fP\^;
.br
Atom \fIproperty\fP\^;
.LP
Status XGetWMSizeHints\^(\^\fIdisplay\fP, \fIw\fP, \fIhints_return\fP, \
\fIsupplied_return\fP, \fIproperty\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
XSizeHints *\fIhints_return\fP\^;
.br
long *\fIsupplied_return\fP\^;
.br
Atom \fIproperty\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIhints\fP 1i
Specifies the size hints for the window in its normal state.
.IP \fIhints\fP 1i
Specifies the
.ZN XSizeHints
structure to be used.
.IP \fIhints_return\fP 1i
Returns the size hints for the window in its normal state.
.IP \fIproperty\fP 1i
Specifies the property name.
.IP \fIsupplied_return\fP 1i
Returns the hints that were supplied by the user.
.IP \fIw\fP 1i
Specifies the window.
.SH DESCRIPTION
The
.ZN XAllocSizeHints
function allocates and returns a pointer to a
.ZN XSizeHints
structure.
Note that all fields in the
.ZN XSizeHints
structure are initially set to zero.
If insufficient memory is available,
.ZN XAllocSizeHints
returns NULL.
To free the memory allocated to this structure,
use
.ZN XFree .
.LP
The
.ZN XSetWMNormalHints
function replaces the size hints for the WM_NORMAL_HINTS property
on the specified window.
If the property does not already exist,
.ZN XSetWMNormalHints
sets the size hints for the WM_NORMAL_HINTS property on the specified window.
The property is stored with a type of WM_SIZE_HINTS and a format of 32.
.LP
.ZN XSetWMNormalHints
can generate
.ZN BadAlloc
and
.ZN BadWindow
errors.
.LP
The
.ZN XGetWMNormalHints
function returns the size hints stored in the WM_NORMAL_HINTS property
on the specified window.
If the property is of type WM_SIZE_HINTS, is of format 32,
and is long enough to contain either an old (pre-ICCCM)
or new size hints structure,
.ZN XGetWMNormalHints
sets the various fields of the
.ZN XSizeHints
structure, sets the supplied_return argument to the list of fields
that were supplied by the user (whether or not they contained defined values),
and returns a nonzero status.
Otherwise, it returns a zero status.
.LP
If
.ZN XGetWMNormalHints
returns successfully and a pre-ICCCM size hints property is read,
the supplied_return argument will contain the following bits:
.LP
.Ds
(USPosition|USSize|PPosition|PSize|PMinSize|
PMaxSize|PResizeInc|PAspect)
.De
.LP
If the property is large enough to contain the base size
and window gravity fields as well,
the supplied_return argument will also contain the following bits:
.LP
.Ds
PBaseSize|PWinGravity
.De
.LP
.ZN XGetWMNormalHints
can generate a
PN BadWindow
error.
.LP
The
.ZN XSetWMSizeHints
function replaces the size hints for the specified property
on the named window.
If the specified property does not already exist,
.ZN XSetWMSizeHints
sets the size hints for the specified property
on the named window.
The property is stored with a type of WM_SIZE_HINTS and a format of 32.
To set a window's normal size hints,
you can use the
.ZN XSetWMNormalHints
function.
.LP
.ZN XSetWMSizeHints
can generate
.ZN BadAlloc ,
.ZN BadAtom ,
and
.ZN BadWindow
errors.
.LP
The
.ZN XGetWMSizeHints
function returns the size hints stored in the specified property
on the named window.
If the property is of type WM_SIZE_HINTS, is of format 32,
and is long enough to contain either an old (pre-ICCCM)
or new size hints structure,
.ZN XGetWMSizeHints
sets the various fields of the
.ZN XSizeHints
structure, sets the supplied_return argument to the
list of fields that were supplied by the user
(whether or not they contained defined values),
and returns a nonzero status.
Otherwise, it returns a zero status.
To get a window's normal size hints,
you can use the
.ZN XGetWMNormalHints
function.
.LP
If
.ZN XGetWMSizeHints
returns successfully and a pre-ICCCM size hints property is read,
the supplied_return argument will contain the following bits:
.LP
.Ds
(USPosition|USSize|PPosition|PSize|PMinSize|
PMaxSize|PResizeInc|PAspect)
.De
.LP
If the property is large enough to contain the base size
and window gravity fields as well,
the supplied_return argument will also contain the following bits:
.LP
.Ds
PBaseSize|PWinGravity
.De
.LP
.ZN XGetWMSizeHints
can generate
.ZN BadAtom
and
.ZN BadWindow
errors.
.SH PROPERTIES
.TP 1i
\s-1WM_NORMAL_HINTS\s+1
Size hints for a window in its normal state.
The C type of this property is
.ZN XSizeHints .
.SH STRUCTURES
The
.ZN XSizeHints
structure contains:
.LP
/* Size hints mask bits */
.TS
lw(.5i) lw(1.1i) lw(1.5i) lw(3.1i).
T{
#define
T} T{
.ZN USPosition
T} T{
(1L << 0)
T} T{
/* user specified x, y */
T}
T{
#define
T} T{
.ZN USSize
T} T{
(1L << 1)
T} T{
/* user specified width, height */
T}
T{
#define
T} T{
.ZN PPosition
T} T{
(1L << 2)
T} T{
/* program specified position */
T}
T{
#define
T} T{
.ZN PSize
T} T{
(1L << 3)
T} T{
/* program specified size */
T}
T{
#define
T} T{
.ZN PMinSize
T} T{
(1L << 4)
T} T{
/* program specified minimum size */
T}
T{
#define
T} T{
.ZN PMaxSize
T} T{
(1L << 5)
T} T{
/* program specified maximum size */
T}
T{
#define
T} T{
.ZN PResizeInc
T} T{
(1L << 6)
T} T{
/* program specified resize increments */
T}
T{
#define
T} T{
.ZN PAspect
T} T{
(1L << 7)
T} T{
/* program specified min and max aspect ratios */
T}
T{
#define
T} T{
.ZN PBaseSize
T} T{
(1L << 8)
T}
T{
#define
T} T{
.ZN PWinGravity
T} T{
(1L << 9)
T}
T{
#define
T} T{
.ZN PAllHints
T} T{
(PPosition|PSize|
.br
PMinSize|PMaxSize|
.br
PResizeInc|PAspect)
T} T{
T}
.TE
.IN "XSizeHints" "" "@DEF@"
.Ds 0
.TA .5i 2.5i
.ta .5i 2.5i
/* Values */
typedef struct {
long flags; /* marks which fields in this structure are defined */
int x, y; /* Obsolete */
int width, height; /* Obsolete */
int min_width, min_height;
int max_width, max_height;
int width_inc, height_inc;
struct {
int x; /* numerator */
int y; /* denominator */
} min_aspect, max_aspect;
int base_width, base_height;
int win_gravity;
/* this structure may be extended in the future */
} XSizeHints;
.De
.LP
The x, y, width, and height members are now obsolete
and are left solely for compatibility reasons.
The min_width and min_height members specify the
minimum window size that still allows the application to be useful.
The max_width and max_height members specify the maximum window size.
The width_inc and height_inc members define an arithmetic progression of
sizes (minimum to maximum) into which the window prefers to be resized.
The min_aspect and max_aspect members are expressed
as ratios of x and y,
and they allow an application to specify the range of aspect
ratios it prefers.
The base_width and base_height members define the desired size of the window.
The window manager will interpret the position of the window
and its border width to position the point of the outer rectangle
of the overall window specified by the win_gravity member.
The outer rectangle of the window includes any borders or decorations
supplied by the window manager.
In other words,
if the window manager decides to place the window where the client asked,
the position on the parent window's border named by the win_gravity
will be placed where the client window would have been placed
in the absence of a window manager.
.LP
Note that use of the
.ZN PAllHints
macro is highly discouraged.
.SH DIAGNOSTICS
.TP 1i
.ZN BadAlloc
The server failed to allocate the requested resource or server memory.
.TP 1i
.ZN BadAtom
A value for an Atom argument does not name a defined Atom.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XAllocClassHint(3X11),
XAllocIconSize(3X11),
XAllocWMHints(3X11),
XFree(3X11),
XSetCommand(3X11),
XSetTransientForHint(3X11),
XSetTextProperty(3X11),
XSetWMClientMachine(3X11),
XSetWMColormapWindows(3X11),
XSetWMIconName(3X11),
XSetWMName(3X11),
XSetWMProperties(3X11),
XSetWMProtocols(3X11),
XStringListToTextProperty(3X11)
.br
\fI\*(xL\fP

View file

@ -0,0 +1,421 @@
'\" t
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
'\" t
.TH XAllocStandardColormap 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XAllocStandardColormap, XSetRGBColormaps, XGetRGBColormaps, XStandardColormap \- allocate, set, or read a standard colormap structure
.SH SYNTAX
XStandardColormap *XAllocStandardColormap\^(\|)
.LP
void XSetRGBColormaps\^(\^\fIdisplay\fP, \fIw\fP, \fIstd_colormap\fP, \
\fIcount\fP, \fIproperty\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
XStandardColormap *\fIstd_colormap\fP\^;
.br
int \fIcount\fP\^;
.br
Atom \fIproperty\fP\^;
.LP
Status XGetRGBColormaps\^(\^\fIdisplay\fP, \fIw\fP, \fIstd_colormap_return\fP, \
\fIcount_return\fP, \fIproperty\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
XStandardColormap **\fIstd_colormap_return\fP\^;
.br
int *\fIcount_return\fP\^;
.br
Atom \fIproperty\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.ds Cn colormaps
.IP \fIcount\fP 1i
Specifies the number of \*(Cn.
.ds Cn colormaps
.IP \fIcount_return\fP 1i
Returns the number of \*(Cn.
.IP \fIproperty\fP 1i
Specifies the property name.
.IP \fIstd_colormap\fP 1i
Specifies the
.ZN XStandardColormap
structure to be used.
.IP \fIstd_colormap_return\fP 1i
Returns the
.ZN XStandardColormap
structure.
.SH DESCRIPTION
The
.ZN XAllocStandardColormap
function allocates and returns a pointer to a
.ZN XStandardColormap
structure.
Note that all fields in the
.ZN XStandardColormap
structure are initially set to zero.
If insufficient memory is available,
.ZN XAllocStandardColormap
returns NULL.
To free the memory allocated to this structure,
use
.ZN XFree .
.LP
The
.ZN XSetRGBColormaps
function replaces the RGB colormap definition in the specified property
on the named window.
If the property does not already exist,
.ZN XSetRGBColormaps
sets the RGB colormap definition in the specified property
on the named window.
The property is stored with a type of RGB_COLOR_MAP and a format of 32.
Note that it is the caller's responsibility to honor the ICCCM
restriction that only RGB_DEFAULT_MAP contain more than one definition.
.LP
The
.ZN XSetRGBColormaps
function usually is only used by window or session managers.
To create a standard colormap,
follow this procedure:
.IP 1. 5
Open a new connection to the same server.
.IP 2. 5
Grab the server.
.IP 3. 5
See if the property is on the property list of the root window for the screen.
.IP 4. 5
If the desired property is not present:
.RS
.IP \(bu 5
Create a colormap (unless you are using the default colormap of the screen).
.IP \(bu 5
Determine the color characteristics of the visual.
.IP \(bu 5
Allocate cells in the colormap (or create it with
.ZN AllocAll ).
.IP \(bu 5
Call
.ZN XStoreColors
to store appropriate color values in the colormap.
.IP \(bu 5
Fill in the descriptive members in the
.ZN XStandardColormap
structure.
.IP \(bu 5
Attach the property to the root window.
.IP \(bu 5
Use
.ZN XSetCloseDownMode
to make the resource permanent.
.RE
.IP 5. 5
Ungrab the server.
.LP
.ZN XSetRGBColormaps
can generate
.ZN BadAlloc ,
.ZN BadAtom ,
and
.ZN BadWindow
errors.
.LP
The
.ZN XGetRGBColormaps
function returns the RGB colormap definitions stored
in the specified property on the named window.
If the property exists, is of type RGB_COLOR_MAP, is of format 32,
and is long enough to contain a colormap definition,
.ZN XGetRGBColormaps
allocates and fills in space for the returned colormaps
and returns a nonzero status.
If the visualid is not present,
.ZN XGetRGBColormaps
assumes the default visual for the screen on which the window is located;
if the killid is not present,
.ZN None
is assumed, which indicates that the resources cannot be released.
Otherwise,
none of the fields are set, and
.ZN XGetRGBColormaps
returns a zero status.
Note that it is the caller's responsibility to honor the ICCCM
restriction that only RGB_DEFAULT_MAP contain more than one definition.
.LP
.ZN XGetRGBColormaps
can generate
.ZN BadAtom
and
.ZN BadWindow
errors.
.SH STRUCTURES
The
.ZN XStandardColormap
structure contains:
.LP
/* Hints */
.TS
lw(.5i) lw(2i) lw(1i).
T{
#define
T} T{
.ZN ReleaseByFreeingColormap
T} T{
( (XID) 1L)
T}
.TE
/* Values */
.IN "XStandardColormap" "" "@DEF@"
.Ds 0
.TA .5i 2.5i
.ta .5i 2.5i
typedef struct {
Colormap colormap;
unsigned long red_max;
unsigned long red_mult;
unsigned long green_max;
unsigned long green_mult;
unsigned long blue_max;
unsigned long blue_mult;
unsigned long base_pixel;
VisualID visualid;
XID killid;
} XStandardColormap;
.De
.LP
The colormap member is the colormap created by the
.ZN XCreateColormap
function.
The red_max, green_max, and blue_max members give the maximum
red, green, and blue values, respectively.
Each color coefficient ranges from zero to its max, inclusive.
For example,
a common colormap allocation is 3/3/2 (3 planes for red, 3
planes for green, and 2 planes for blue).
This colormap would have red_max = 7, green_max = 7,
and blue_max = 3.
An alternate allocation that uses only 216 colors is red_max = 5,
green_max = 5, and blue_max = 5.
.LP
The red_mult, green_mult, and blue_mult members give the
scale factors used to compose a full pixel value.
(See the discussion of the base_pixel members for further information.)
For a 3/3/2 allocation, red_mult might be 32,
green_mult might be 4, and blue_mult might be 1.
For a 6-colors-each allocation, red_mult might be 36,
green_mult might be 6, and blue_mult might be 1.
.LP
The base_pixel member gives the base pixel value used to
compose a full pixel value.
Usually, the base_pixel is obtained from a call to the
.ZN XAllocColorPlanes
function.
Given integer red, green, and blue coefficients in their appropriate
ranges, one then can compute a corresponding pixel value by
using the following expression:
.LP
.Ds
.TA .5i 1.5i
.ta .5i 1.5i
(r * red_mult + g * green_mult + b * blue_mult + base_pixel) & 0xFFFFFFFF
.De
.LP
For
.ZN GrayScale
colormaps,
only the colormap, red_max, red_mult,
and base_pixel members are defined.
The other members are ignored.
To compute a
.ZN GrayScale
pixel value, use the following expression:
.LP
.Ds
.TA .5i 1.5i
.ta .5i 1.5i
(gray * red_mult + base_pixel) & 0xFFFFFFFF
.De
.LP
Negative multipliers can be represented by converting the 2's
complement representation of the multiplier into an unsigned long and
storing the result in the appropriate _mult field.
The step of masking by 0xFFFFFFFF effectively converts the resulting
positive multiplier into a negative one.
The masking step will take place automatically on many machine architectures,
depending on the size of the integer type used to do the computation,
.LP
The visualid member gives the ID number of the visual from which the
colormap was created.
The killid member gives a resource ID that indicates whether
the cells held by this standard colormap are to be released
by freeing the colormap ID or by calling the
.ZN XKillClient
function on the indicated resource.
(Note that this method is necessary for allocating out of an existing colormap.)
.LP
The properties containing the
.ZN XStandardColormap
information have
the type RGB_COLOR_MAP.
.SH DIAGNOSTICS
.TP 1i
.ZN BadAlloc
The server failed to allocate the requested resource or server memory.
.TP 1i
.ZN BadAtom
A value for an Atom argument does not name a defined Atom.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XAllocColor(3X11),
XCreateColormap(3X11),
XFree(3X11),
XSetCloseDownMode(3X11)
.br
\fI\*(xL\fP

425
man/XAllocWMHints.man Normal file
View file

@ -0,0 +1,425 @@
'\" t
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
'\" t
.TH XAllocWMHints 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XAllocWMHints, XSetWMHints, XGetWMHints, XWMHints \- allocate window manager hints structure and set or read a window's WM_HINTS property
.SH SYNTAX
XWMHints *XAllocWMHints\^(\|)
.LP
XSetWMHints\^(\^\fIdisplay\fP, \fIw\fP, \fIwmhints\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
XWMHints *\fIwmhints\fP\^;
.LP
XWMHints *XGetWMHints\^(\^\fIdisplay\fP, \fIw\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIw\fP 1i
Specifies the window.
.IP \fIwmhints\fP 1i
Specifies the
.ZN XWMHints
structure to be used.
.SH DESCRIPTION
The
.ZN XAllocWMHints
function allocates and returns a pointer to a
.ZN XWMHints
structure.
Note that all fields in the
.ZN XWMHints
structure are initially set to zero.
If insufficient memory is available,
.ZN XAllocWMHints
returns NULL.
To free the memory allocated to this structure,
use
.ZN XFree .
.LP
The
.ZN XSetWMHints
function sets the window manager hints that include icon information and location,
the initial state of the window, and whether the application relies on the
window manager to get keyboard input.
.LP
.ZN XSetWMHints
can generate
.ZN BadAlloc
and
.ZN BadWindow
errors.
.LP
The
.ZN XGetWMHints
function reads the window manager hints and
returns NULL if no WM_HINTS property was set on the window
or returns a pointer to a
.ZN XWMHints
structure if it succeeds.
When finished with the data,
free the space used for it by calling
.ZN XFree .
.LP
.ZN XGetWMHints
can generate a
.ZN BadWindow
error.
.SH PROPERTIES
.TP 1i
\s-1WM_HINTS\s+1
Additional hints set by the client for use by the window manager.
The C type of this property is
.ZN XWMHints .
.SH STRUCTURES
The
.ZN XWMHints
structure contains:
.LP
/* Window manager hints mask bits */
.TS
lw(.5i) lw(2.5i) lw(2.5i).
T{
#define
T} T{
.ZN InputHint
T} T{
(1L << 0)
T}
T{
#define
T} T{
.ZN StateHint
T} T{
(1L << 1)
T}
T{
#define
T} T{
.ZN IconPixmapHint
T} T{
(1L << 2)
T}
T{
#define
T} T{
.ZN IconWindowHint
T} T{
(1L << 3)
T}
T{
#define
T} T{
.ZN IconPositionHint
T} T{
(1L << 4)
T}
T{
#define
T} T{
.ZN IconMaskHint
T} T{
(1L << 5)
T}
T{
#define
T} T{
.ZN WindowGroupHint
T} T{
(1L << 6)
T}
T{
#define
T} T{
.ZN UrgencyHint
T} T{
(1L << 8)
T}
T{
#define
T} T{
.ZN AllHints
T} T{
(InputHint|StateHint|IconPixmapHint|
.br
IconWindowHint|IconPositionHint|
.br
IconMaskHint|WindowGroupHint)
T}
.TE
.IN "XWMHints" "" "@DEF@"
.Ds 0
.TA .5i 2.5i
.ta .5i 2.5i
/* Values */
typedef struct {
long flags; /* marks which fields in this structure are defined */
Bool input; /* does this application rely on the window manager to
get keyboard input? */
int initial_state; /* see below */
Pixmap icon_pixmap; /* pixmap to be used as icon */
Window icon_window; /* window to be used as icon */
int icon_x, icon_y; /* initial position of icon */
Pixmap icon_mask; /* pixmap to be used as mask for icon_pixmap */
XID window_group; /* id of related window group */
/* this structure may be extended in the future */
} XWMHints;
.De
.LP
The input member is used to communicate to the window manager the input focus
model used by the application.
Applications that expect input but never explicitly set focus to any
of their subwindows (that is, use the push model of focus management),
such as X Version 10 style applications that use real-estate
driven focus, should set this member to
.ZN True .
Similarly, applications
that set input focus to their subwindows only when it is given to their
top-level window by a window manager should also set this member to
.ZN True .
Applications that manage their own input focus by explicitly setting
focus to one of their subwindows whenever they want keyboard input
(that is, use the pull model of focus management) should set this member to
.ZN False .
Applications that never expect any keyboard input also should set this member
to
.ZN False .
.LP
Pull model window managers should make it possible for push model
applications to get input by setting input focus to the top-level windows of
applications whose input member is
.ZN True .
Push model window managers should
make sure that pull model applications do not break them
by resetting input focus to
.ZN PointerRoot
when it is appropriate (for example, whenever an application whose
input member is
.ZN False
sets input focus to one of its subwindows).
.LP
The definitions for the initial_state flag are:
.TS
lw(.5i) lw(2i) lw(.2i) lw(2.8i).
T{
#define
T} T{
.ZN WithdrawnState
T} T{
0
T} T{
T}
T{
#define
T} T{
.ZN NormalState
T} T{
1
T} T{
/* most applications start this way */
T}
T{
#define
T} T{
.ZN IconicState
T} T{
3
T} T{
/* application wants to start as an icon */
T}
.TE
The icon_mask specifies which pixels of the icon_pixmap should be used as the
icon.
This allows for nonrectangular icons.
Both icon_pixmap and icon_mask must be bitmaps.
The icon_window lets an application provide a window for use as an icon
for window managers that support such use.
The window_group lets you specify that this window belongs to a group
of other windows.
For example, if a single application manipulates multiple
top-level windows, this allows you to provide enough
information that a window manager can iconify all of the windows
rather than just the one window.
.LP
The
.ZN UrgencyHint
flag, if set in the flags field, indicates that the client deems the window
contents to be urgent, requiring the timely response of the user. The
window manager will make some effort to draw the user's attention to this
window while this flag is set. The client must provide some means by which the
user can cause the urgency flag to be cleared (either mitigating
the condition that made the window urgent or merely shutting off the alarm)
or the window to be withdrawn.
.SH DIAGNOSTICS
.TP 1i
.ZN BadAlloc
The server failed to allocate the requested resource or server memory.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XAllocClassHint(3X11),
XAllocIconSize(3X11),
XAllocSizeHints(3X11),
XFree(3X11),
XSetCommand(3X11),
XSetTransientForHint(3X11),
XSetTextProperty(3X11),
XSetWMClientMachine(3X11),
XSetWMColormapWindows(3X11),
XSetWMIconName(3X11),
XSetWMName(3X11),
XSetWMProperties(3X11),
XSetWMProtocols(3X11),
XStringListToTextProperty(3X11)
.br
\fI\*(xL\fP

192
man/XAllowEvents.man Normal file
View file

@ -0,0 +1,192 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XAllowEvents 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XAllowEvents \- release queued events
.SH SYNTAX
XAllowEvents\^(\^\fIdisplay\fP, \fIevent_mode\fP\^, \fItime\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
int \fIevent_mode\fP\^;
.br
Time \fItime\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIevent_mode\fP 1i
Specifies the event mode.
You can pass
.ZN AsyncPointer ,
.ZN SyncPointer ,
.ZN AsyncKeyboard ,
.ZN SyncKeyboard ,
.ZN ReplayPointer ,
.ZN ReplayKeyboard ,
.ZN AsyncBoth ,
or
.ZN SyncBoth .
.IP \fItime\fP 1i
Specifies the time.
You can pass either a timestamp or
.ZN CurrentTime .
.SH DESCRIPTION
The
.ZN XAllowEvents
function releases some queued events if the client has caused a device
to freeze.
It has no effect if the specified time is earlier than the last-grab
time of the most recent active grab for the client or if the specified time
is later than the current X server time.
.LP
.ZN XAllowEvents
can generate a
.ZN BadValue
error.
.SH DIAGNOSTICS
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.SH "SEE ALSO"
\fI\*(xL\fP

270
man/XAnyEvent.man Normal file
View file

@ -0,0 +1,270 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XAnyEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XAnyEvent, XEvent \- generic X event structures
.SH STRUCTURES
All the event structures declared in
.Pn < X11/Xlib.h >
have the following common members:
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type;
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window;
} XAnyEvent;
.De
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
The
.ZN XEvent
structure is a union of the individual structures declared for each event type:
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef union _XEvent {
int type; /* must not be changed */
XAnyEvent xany;
XKeyEvent xkey;
XButtonEvent xbutton;
XMotionEvent xmotion;
XCrossingEvent xcrossing;
XFocusChangeEvent xfocus;
XExposeEvent xexpose;
XGraphicsExposeEvent xgraphicsexpose;
XNoExposeEvent xnoexpose;
XVisibilityEvent xvisibility;
XCreateWindowEvent xcreatewindow;
XDestroyWindowEvent xdestroywindow;
XUnmapEvent xunmap;
XMapEvent xmap;
XMapRequestEvent xmaprequest;
XReparentEvent xreparent;
XConfigureEvent xconfigure;
XGravityEvent xgravity;
XResizeRequestEvent xresizerequest;
XConfigureRequestEvent xconfigurerequest;
XCirculateEvent xcirculate;
XCirculateRequestEvent xcirculaterequest;
XPropertyEvent xproperty;
XSelectionClearEvent xselectionclear;
XSelectionRequestEvent xselectionrequest;
XSelectionEvent xselection;
XColormapEvent xcolormap;
XClientMessageEvent xclient;
XMappingEvent xmapping;
XErrorEvent xerror;
XKeymapEvent xkeymap;
long pad[24];
} XEvent;
.De
.LP
An
.ZN XEvent
structure's first entry always is the type member,
which is set to the event type.
The second member always is the serial number of the protocol request
that generated the event.
The third member always is send_event,
which is a
.ZN Bool
that indicates if the event was sent by a different client.
The fourth member always is a display,
which is the display that the event was read from.
Except for keymap events,
the fifth member always is a window,
which has been carefully selected to be useful to toolkit dispatchers.
To avoid breaking toolkits,
the order of these first five entries is not to change.
Most events also contain a time member,
which is the time at which an event occurred.
In addition, a pointer to the generic event must be cast before it
is used to access any other information in the structure.
.SH "SEE ALSO"
XButtonEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateEvent(3X11),
XCirculateRequestEvent(3X11),
XColormapEvent(3X11),
XConfigureEvent(3X11),
XConfigureRequestEvent(3X11),
XCrossingEvent(3X11),
XDestroyWindowEvent(3X11),
XErrorEvent(3X11),
XExposeEvent(3X11),
XFocusChangeEvent(3X11),
XGraphicsExposeEvent(3X11),
XGravityEvent(3X11),
XKeymapEvent(3X11),
XMapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

354
man/XButtonEvent.man Normal file
View file

@ -0,0 +1,354 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XButtonEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XButtonEvent, XKeyEvent, XMotionEvent \- KeyPress, KeyRelease, ButtonPress, ButtonRelease, and MotionNotify event structures
.SH STRUCTURES
The structures for
.ZN KeyPress ,
.ZN KeyRelease ,
.ZN ButtonPress ,
.ZN ButtonRelease ,
and
.ZN MotionNotify
events contain:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* ButtonPress or ButtonRelease */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window; /* ``event'' window it is reported relative to */
Window root; /* root window that the event occurred on */
Window subwindow; /* child window */
Time time; /* milliseconds */
int x, y; /* pointer x, y coordinates in event window */
int x_root, y_root; /* coordinates relative to root */
unsigned int state; /* key or button mask */
unsigned int button; /* detail */
Bool same_screen; /* same screen flag */
} XButtonEvent;
typedef XButtonEvent XButtonPressedEvent;
typedef XButtonEvent XButtonReleasedEvent;
.De
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* KeyPress or KeyRelease */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window; /* ``event'' window it is reported relative to */
Window root; /* root window that the event occurred on */
Window subwindow; /* child window */
Time time; /* milliseconds */
int x, y; /* pointer x, y coordinates in event window */
int x_root, y_root; /* coordinates relative to root */
unsigned int state; /* key or button mask */
unsigned int keycode; /* detail */
Bool same_screen; /* same screen flag */
} XKeyEvent;
typedef XKeyEvent XKeyPressedEvent;
typedef XKeyEvent XKeyReleasedEvent;
.De
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* MotionNotify */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window; /* ``event'' window reported relative to */
Window root; /* root window that the event occurred on */
Window subwindow; /* child window */
Time time; /* milliseconds */
int x, y; /* pointer x, y coordinates in event window */
int x_root, y_root; /* coordinates relative to root */
unsigned int state; /* key or button mask */
char is_hint; /* detail */
Bool same_screen; /* same screen flag */
} XMotionEvent;
typedef XMotionEvent XPointerMovedEvent;
.De
.LP
When you receive these events,
their structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
These structures have the following common members:
window, root, subwindow, time, x, y, x_root, y_root, state, and same_screen.
The window member is set to the window on which the
event was generated and is referred to as the event window.
As long as the conditions previously discussed are met,
this is the window used by the X server to report the event.
The root member is set to the source window's root window.
The x_root and y_root members are set to the pointer's coordinates
relative to the root window's origin at the time of the event.
.LP
The same_screen member is set to indicate whether the event
window is on the same screen
as the root window and can be either
.ZN True
or
.ZN False .
If
.ZN True ,
the event and root windows are on the same screen.
If
.ZN False ,
the event and root windows are not on the same screen.
.LP
If the source window is an inferior of the event window,
the subwindow member of the structure is set to the child of the event window
that is the source window or the child of the event window that is
an ancestor of the source window.
Otherwise, the X server sets the subwindow member to
.ZN None .
The time member is set to the time when the event was generated
and is expressed in milliseconds.
.LP
If the event window is on the same screen as the root window,
the x and y members
are set to the coordinates relative to the event window's origin.
Otherwise, these members are set to zero.
.LP
The state member is set to indicate the logical state of the pointer buttons
and modifier keys just prior to the event,
which is the bitwise inclusive OR of one or more of the
button or modifier key masks:
.ZN Button1Mask ,
.ZN Button2Mask ,
.ZN Button3Mask ,
.ZN Button4Mask ,
.ZN Button5Mask ,
.ZN ShiftMask ,
.ZN LockMask ,
.ZN ControlMask ,
.ZN Mod1Mask ,
.ZN Mod2Mask ,
.ZN Mod3Mask ,
.ZN Mod4Mask ,
and
.ZN Mod5Mask .
.LP
Each of these structures also has a member that indicates the detail.
For the
.ZN XKeyPressedEvent
and
.ZN XKeyReleasedEvent
structures, this member is called a keycode.
It is set to a number that represents a physical key on the keyboard.
The keycode is an arbitrary representation for any key on the keyboard
(see sections 12.7 and 16.1).
.LP
For the
.ZN XButtonPressedEvent
and
.ZN XButtonReleasedEvent
structures, this member is called button.
It represents the pointer button that changed state and can be the
.ZN Button1 ,
.ZN Button2 ,
.ZN Button3 ,
.ZN Button4 ,
or
.ZN Button5
value.
For the
.ZN XPointerMovedEvent
structure, this member is called is_hint.
It can be set to
.ZN NotifyNormal
or
.ZN NotifyHint .
.SH "SEE ALSO"
XAnyEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateEvent(3X11),
XCirculateRequestEvent(3X11),
XColormapEvent(3X11),
XConfigureEvent(3X11),
XConfigureRequestEvent(3X11),
XCrossingEvent(3X11),
XDestroyWindowEvent(3X11),
XErrorEvent(3X11),
XExposeEvent(3X11),
XFocusChangeEvent(3X11),
XGraphicsExposeEvent(3X11),
XGravityEvent(3X11),
XKeymapEvent(3X11),
XMapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

View file

@ -0,0 +1,466 @@
'\" t
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
'\" t
.TH XChangeKeyboardControl 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XChangeKeyboardControl, XGetKeyboardControl, XAutoRepeatOn, XAutoRepeatOff, XBell, XQueryKeymap, XKeyboardControl \- manipulate keyboard settings and keyboard control structure
.SH SYNTAX
XChangeKeyboardControl\^(\^\fIdisplay\fP, \fIvalue_mask\fP\^, \fIvalues\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
unsigned long \fIvalue_mask\fP\^;
.br
XKeyboardControl *\fIvalues\fP\^;
.LP
XGetKeyboardControl\^(\^\fIdisplay\fP, \fIvalues_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XKeyboardState *\fIvalues_return\fP\^;
.LP
XAutoRepeatOn\^(\^\fIdisplay\fP\^)
.br
Display *\fIdisplay\fP\^;
.LP
XAutoRepeatOff\^(\^\fIdisplay\fP\^)
.br
Display *\fIdisplay\fP\^;
.LP
XBell\^(\^\fIdisplay\fP, \fIpercent\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
int \fIpercent\fP\^;
.LP
XQueryKeymap\^(\^\fIdisplay\fP, \fIkeys_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
char \fIkeys_return\fP[32]\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIkeys_return\fP 1i
Returns an array of bytes that identifies which keys are pressed down.
Each bit represents one key of the keyboard.
.IP \fIpercent\fP 1i
Specifies the volume for the bell,
which can range from \-100 to 100 inclusive.
.IP \fIvalue_mask\fP 1i
Specifies which controls to change.
This mask is the bitwise inclusive OR of the valid control mask bits.
.IP \fIvalues\fP 1i
Specifies one value for each bit set to 1 in the mask.
.IP \fIvalues_return\fP 1i
Returns the current keyboard controls in the specified
.ZN XKeyboardState
structure.
.SH DESCRIPTION
The
.ZN XChangeKeyboardControl
function controls the keyboard characteristics defined by the
.ZN XKeyboardControl
structure.
The value_mask argument specifies which values are to be changed.
.LP
.ZN XChangeKeyboardControl
can generate
.ZN BadMatch
and
.ZN BadValue
errors.
.LP
The
.ZN XGetKeyboardControl
function returns the current control values for the keyboard to the
.ZN XKeyboardState
structure.
.LP
The
.ZN XAutoRepeatOn
function turns on auto-repeat for the keyboard on the specified display.
.LP
The
.ZN XAutoRepeatOff
function turns off auto-repeat for the keyboard on the specified display.
.LP
The
.ZN XBell
function rings the bell on the keyboard on the specified display, if possible.
The specified volume is relative to the base volume for the keyboard.
If the value for the percent argument is not in the range \-100 to 100
inclusive, a
.ZN BadValue
error results.
The volume at which the bell rings
when the percent argument is nonnegative is:
.IP
base \- [(base * percent) / 100] + percent
.LP
The volume at which the bell rings
when the percent argument is negative is:
.IP
base + [(base * percent) / 100]
.LP
To change the base volume of the bell, use
.ZN XChangeKeyboardControl .
.LP
.ZN XBell
can generate a
.ZN BadValue
error.
.LP
The
.ZN XQueryKeymap
function returns a bit vector for the logical state of the keyboard,
where each bit set to 1 indicates that the corresponding key is currently
pressed down.
The vector is represented as 32 bytes.
Byte N (from 0) contains the bits for keys 8N to 8N + 7
with the least significant bit in the byte representing key 8N.
.LP
Note that the logical state of a device (as seen by client applications)
may lag the physical state if device event processing is frozen.
.SH STRUCTURES
The
.ZN XKeyboardControl
structure contains:
.LP
.LP
/* Mask bits for ChangeKeyboardControl */
.TS
lw(.5i) lw(2.5i) lw(.8i).
T{
#define
T} T{
.ZN KBKeyClickPercent
T} T{
(1L<<0)
T}
T{
#define
T} T{
.ZN KBBellPercent
T} T{
(1L<<1)
T}
T{
#define
T} T{
.ZN KBBellPitch
T} T{
(1L<<2)
T}
T{
#define
T} T{
.ZN KBBellDuration
T} T{
(1L<<3)
T}
T{
#define
T} T{
.ZN KBLed
T} T{
(1L<<4)
T}
T{
#define
T} T{
.ZN KBLedMode
T} T{
(1L<<5)
T}
T{
#define
T} T{
.ZN KBKey
T} T{
(1L<<6)
T}
T{
#define
T} T{
.ZN KBAutoRepeatMode
T} T{
(1L<<7)
T}
.TE
.IN "XKeyboardControl" "" "@DEF@"
.Ds 0
.TA .5i 2.5i
.ta .5i 2.5i
/* Values */
typedef struct {
int key_click_percent;
int bell_percent;
int bell_pitch;
int bell_duration;
int led;
int led_mode; /* LedModeOn, LedModeOff */
int key;
int auto_repeat_mode; /* AutoRepeatModeOff, AutoRepeatModeOn,
AutoRepeatModeDefault */
} XKeyboardControl;
.De
.LP
The key_click_percent member sets the volume for key clicks between 0 (off)
and 100 (loud) inclusive, if possible.
A setting of \-1 restores the default.
Other negative values generate a
.ZN BadValue
error.
.LP
The bell_percent sets the base volume for the bell between 0 (off) and 100
(loud) inclusive, if possible.
A setting of \-1 restores the default.
Other negative values generate a
.ZN BadValue
error.
The bell_pitch member sets the pitch (specified in Hz) of the bell, if possible.
A setting of \-1 restores the default.
Other negative values generate a
.ZN BadValue
error.
The bell_duration member sets the duration of the
bell specified in milliseconds, if possible.
A setting of \-1 restores the default.
Other negative values generate a
.ZN BadValue
error.
.LP
If both the led_mode and led members are specified,
the state of that LED is changed, if possible.
The led_mode member can be set to
.ZN LedModeOn
or
.ZN LedModeOff .
If only led_mode is specified, the state of
all LEDs are changed, if possible.
At most 32 LEDs numbered from one are supported.
No standard interpretation of LEDs is defined.
If led is specified without led_mode, a
.ZN BadMatch
error results.
.LP
If both the auto_repeat_mode and key members are specified,
the auto_repeat_mode of that key is changed (according to
.ZN AutoRepeatModeOn ,
.ZN AutoRepeatModeOff ,
or
.ZN AutoRepeatModeDefault ),
if possible.
If only auto_repeat_mode is
specified, the global auto_repeat_mode for the entire keyboard is
changed, if possible, and does not affect the per-key settings.
If a key is specified without an auto_repeat_mode, a
.ZN BadMatch
error results.
Each key has an individual mode of whether or not it should auto-repeat
and a default setting for the mode.
In addition,
there is a global mode of whether auto-repeat should be enabled or not
and a default setting for that mode.
When global mode is
.ZN AutoRepeatModeOn ,
keys should obey their individual auto-repeat modes.
When global mode is
.ZN AutoRepeatModeOff ,
no keys should auto-repeat.
An auto-repeating key generates alternating
.ZN KeyPress
and
.ZN KeyRelease
events.
When a key is used as a modifier,
it is desirable for the key not to auto-repeat,
regardless of its auto-repeat setting.
.LP
The
.ZN XKeyboardState
structure contains:
.LP
.Ds 0
.TA .5i
.ta .5i
typedef struct {
int key_click_percent;
int bell_percent;
unsigned int bell_pitch, bell_duration;
unsigned long led_mask;
int global_auto_repeat;
char auto_repeats[32];
} XKeyboardState;
.De
.LP
For the LEDs,
the least significant bit of led_mask corresponds to LED one,
and each bit set to 1 in led_mask indicates an LED that is lit.
The global_auto_repeat member can be set to
.ZN AutoRepeatModeOn
or
.ZN AutoRepeatModeOff .
The auto_repeats member is a bit vector.
Each bit set to 1 indicates that auto-repeat is enabled
for the corresponding key.
The vector is represented as 32 bytes.
Byte N (from 0) contains the bits for keys 8N to 8N + 7
with the least significant bit in the byte representing key 8N.
.SH DIAGNOSTICS
.TP 1i
.ZN BadMatch
Some argument or pair of arguments has the correct type and range but fails
to match in some other way required by the request.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.SH "SEE ALSO"
XChangeKeyboardMapping(3X11),
XSetPointerMapping(3X11)
.br
\fI\*(xL\fP

View file

@ -0,0 +1,488 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XChangeKeyboardMapping 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XChangeKeyboardMapping, XGetKeyboardMapping, XDisplayKeycodes, XSetModifierMapping, XGetModifierMapping, XNewModifiermap, XInsertModifiermapEntry, XDeleteModifiermapEntry, XFreeModifierMap XModifierKeymap \- manipulate keyboard encoding and keyboard encoding structure
.SH SYNTAX
XChangeKeyboardMapping(\^\fIdisplay\fP, \fIfirst_keycode\fP, \fIkeysyms_per_keycode\fP, \fIkeysyms\fP, \fInum_codes\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
int \fIfirst_keycode\fP\^;
.br
int \fIkeysyms_per_keycode\fP\^;
.br
KeySym *\fIkeysyms\fP\^;
.br
int \fInum_codes\fP\^;
.LP
KeySym *XGetKeyboardMapping(\^\fIdisplay\fP, \fIfirst_keycode\fP, \fIkeycode_count\fP,
.br
\fIkeysyms_per_keycode_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
KeyCode \fIfirst_keycode\fP\^;
.br
int \fIkeycode_count\fP\^;
.br
int *\fIkeysyms_per_keycode_return\fP\^;
.LP
XDisplayKeycodes\^(\^\fIdisplay\fP\^, \fImin_keycodes_return\fP\^, \
\fImax_keycodes_return\fP\^)
.br
Display *\^\fIdisplay\fP\^;
.br
int *\^\fImin_keycodes_return\fP\^, *\^\fImax_keycodes_return\fP\^;
.LP
int XSetModifierMapping(\^\fIdisplay\fP, \fImodmap\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XModifierKeymap *\fImodmap\fP\^;
.LP
XModifierKeymap *XGetModifierMapping(\^\fIdisplay\fP\^)
.br
Display *\fIdisplay\fP\^;
.LP
XModifierKeymap *XNewModifiermap(\^\fImax_keys_per_mod\fP\^)
.br
int \fImax_keys_per_mod\fP\^;
.LP
XModifierKeymap *XInsertModifiermapEntry\^(\^\fImodmap\fP, \
\fIkeycode_entry\fP, \fImodifier\fP\^)
.br
XModifierKeymap *\fImodmap\fP\^;
.br
KeyCode \fIkeycode_entry\fP\^;
.br
int \fImodifier\fP\^;
.LP
XModifierKeymap *XDeleteModifiermapEntry\^(\^\fImodmap\fP, \
\fIkeycode_entry\fP, \fImodifier\fP\^)
.br
XModifierKeymap *\fImodmap\fP\^;
.br
KeyCode \fIkeycode_entry\fP\^;
.br
int \fImodifier\fP\^;
.LP
XFreeModifiermap(\^\fImodmap\fP\^)
.br
XModifierKeymap *\fImodmap\fP;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.ds Kc changed or returned
.IP \fIfirst_keycode\fP 1i
Specifies the first KeyCode that is to be \*(Kc.
.IP \fIkeycode_count\fP 1i
Specifies the number of KeyCodes that are to be returned.
.IP \fIkeycode_entry\fP 1i
Specifies the KeyCode.
.IP \fIkeysyms\fP 1i
Specifies an array of KeySyms.
.IP \fIkeysyms_per_keycode\fP 1i
Specifies the number of KeySyms per KeyCode.
.IP \fIkeysyms_per_keycode_return\fP 1i
Returns the number of KeySyms per KeyCode.
.IP \fImax_keys_per_mod\fP 1i
Specifies the number of KeyCode entries preallocated to the modifiers
in the map.
.IP \fImax_keycodes_return\fP 1i
Returns the maximum number of KeyCodes.
.IP \fImin_keycodes_return\fP 1i
Returns the minimum number of KeyCodes.
.IP \fImodifier\fP 1i
Specifies the modifier.
.IP \fImodmap\fP 1i
Specifies the
.ZN XModifierKeymap
structure.
.IP \fInum_codes\fP 1i
Specifies the number of KeyCodes that are to be changed.
.SH DESCRIPTION
The
.ZN XChangeKeyboardMapping
function defines the symbols for the specified number of KeyCodes
starting with first_keycode.
The symbols for KeyCodes outside this range remain unchanged.
The number of elements in keysyms must be:
.LP
.Ds
num_codes * keysyms_per_keycode
.De
.LP
The specified first_keycode must be greater than or equal to min_keycode
returned by
.ZN XDisplayKeycodes ,
or a
.ZN BadValue
error results.
In addition, the following expression must be less than or equal to
max_keycode as returned by
.ZN XDisplayKeycodes ,
or a
.ZN BadValue
error results:
.LP
.Ds
first_keycode + num_codes \- 1
.De
.LP
KeySym number N, counting from zero, for KeyCode K has the following index
in keysyms, counting from zero:
.LP
.Ds
(K \- first_keycode) * keysyms_per_keycode + N
.De
.LP
The specified keysyms_per_keycode can be chosen arbitrarily by the client
to be large enough to hold all desired symbols.
A special KeySym value of
.ZN NoSymbol
should be used to fill in unused elements
for individual KeyCodes.
It is legal for
.ZN NoSymbol
to appear in nontrailing positions
of the effective list for a KeyCode.
.ZN XChangeKeyboardMapping
generates a
.ZN MappingNotify
event.
.LP
There is no requirement that the X server interpret this mapping.
It is merely stored for reading and writing by clients.
.LP
.ZN XChangeKeyboardMapping
can generate
.ZN BadAlloc
and
.ZN BadValue
errors.
.LP
The
.ZN XGetKeyboardMapping
function returns the symbols for the specified number of KeyCodes
starting with first_keycode.
The value specified in first_keycode must be greater than
or equal to min_keycode as returned by
.ZN XDisplayKeycodes ,
or a
.ZN BadValue
error results.
In addition, the following expression must be less than or equal
to max_keycode as returned by
.ZN XDisplayKeycodes :
.LP
.Ds
first_keycode + keycode_count \- 1
.De
.LP
If this is not the case, a
.ZN BadValue
error results.
The number of elements in the KeySyms list is:
.LP
.Ds
keycode_count * keysyms_per_keycode_return
.De
.LP
KeySym number N, counting from zero, for KeyCode K has the following index
in the list, counting from zero:
.Ds
(K \- first_code) * keysyms_per_code_return + N
.De
.LP
The X server arbitrarily chooses the keysyms_per_keycode_return value
to be large enough to report all requested symbols.
A special KeySym value of
.ZN NoSymbol
is used to fill in unused elements for
individual KeyCodes.
To free the storage returned by
.ZN XGetKeyboardMapping ,
use
.ZN XFree .
.LP
.ZN XGetKeyboardMapping
can generate a
.ZN BadValue
error.
.LP
The
.ZN XDisplayKeycodes
function returns the min-keycodes and max-keycodes supported by the
specified display.
The minimum number of KeyCodes returned is never less than 8,
and the maximum number of KeyCodes returned is never greater than 255.
Not all KeyCodes in this range are required to have corresponding keys.
.LP
The
.ZN XSetModifierMapping
function specifies the KeyCodes of the keys (if any) that are to be used
as modifiers.
If it succeeds,
the X server generates a
.ZN MappingNotify
event, and
.ZN XSetModifierMapping
returns
.ZN MappingSuccess .
X permits at most 8 modifier keys.
If more than 8 are specified in the
.ZN XModifierKeymap
structure, a
.ZN BadLength
error results.
.LP
The modifiermap member of the
.ZN XModifierKeymap
structure contains 8 sets of max_keypermod KeyCodes,
one for each modifier in the order
.ZN Shift ,
.ZN Lock ,
.ZN Control ,
.ZN Mod1 ,
.ZN Mod2 ,
.ZN Mod3 ,
.ZN Mod4 ,
and
.ZN Mod5 .
Only nonzero KeyCodes have meaning in each set,
and zero KeyCodes are ignored.
In addition, all of the nonzero KeyCodes must be in the range specified by
min_keycode and max_keycode in the
.ZN Display
structure,
or a
.ZN BadValue
error results.
.LP
An X server can impose restrictions on how modifiers can be changed,
for example,
if certain keys do not generate up transitions in hardware,
if auto-repeat cannot be disabled on certain keys,
or if multiple modifier keys are not supported.
If some such restriction is violated,
the status reply is
.ZN MappingFailed ,
and none of the modifiers are changed.
If the new KeyCodes specified for a modifier differ from those
currently defined and any (current or new) keys for that modifier are
in the logically down state,
.ZN XSetModifierMapping
returns
.ZN MappingBusy ,
and none of the modifiers is changed.
.LP
.ZN XSetModifierMapping
can generate
.ZN BadAlloc
and
.ZN BadValue
errors.
.LP
The
.ZN XGetModifierMapping
function returns a pointer to a newly created
.ZN XModifierKeymap
structure that contains the keys being used as modifiers.
The structure should be freed after use by calling
.ZN XFreeModifiermap .
If only zero values appear in the set for any modifier,
that modifier is disabled.
.LP
The
.ZN XNewModifiermap
function returns a pointer to
.ZN XModifierKeymap
structure for later use.
.LP
The
.ZN XInsertModifiermapEntry
function adds the specified KeyCode to the set that controls the specified
modifier and returns the resulting
.ZN XModifierKeymap
structure (expanded as needed).
.LP
The
.ZN XDeleteModifiermapEntry
function deletes the specified KeyCode from the set that controls the
specified modifier and returns a pointer to the resulting
.ZN XModifierKeymap
structure.
.LP
The
.ZN XFreeModifiermap
function frees the specified
.ZN XModifierKeymap
structure.
.SH STRUCTURES
The
.ZN XModifierKeymap
structure contains:
.LP
.Ds 0
.TA .5i 2.5i
.ta .5i 2.5i
typedef struct {
int max_keypermod; /* This server's max number of keys per modifier */
KeyCode *modifiermap; /* An 8 by max_keypermod array of the modifiers */
} XModifierKeymap;
.De
.SH DIAGNOSTICS
.TP 1i
.ZN BadAlloc
The server failed to allocate the requested resource or server memory.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.SH "SEE ALSO"
XFree(3X11),
XSetPointerMapping(3X11)
.br
\fI\*(xL\fP

View file

@ -0,0 +1,226 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XChangePointerControl 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XChangePointerControl, XGetPointerControl \- control pointer
.SH SYNTAX
XChangePointerControl\^(\^\fIdisplay\fP, \fIdo_accel\fP\^, \fIdo_threshold\fP\^, \fIaccel_numerator\fP\^,
.br
\fIaccel_denominator\fP\^, \fIthreshold\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Bool \fIdo_accel\fP\^, \fIdo_threshold\fP\^;
.br
int \fIaccel_numerator\fP\^, \fIaccel_denominator\fP\^;
.br
int \fIthreshold\fP\^;
.LP
XGetPointerControl\^(\^\fIdisplay\fP, \fIaccel_numerator_return\fP\^, \fIaccel_denominator_return\fP\^,
.br
\fIthreshold_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
int *\fIaccel_numerator_return\fP\^, *\fIaccel_denominator_return\fP\^;
.br
int *\fIthreshold_return\fP\^;
.SH ARGUMENTS
.IP \fIaccel_denominator\fP 1i
Specifies the denominator for the acceleration multiplier.
.IP \fIaccel_denominator_return\fP 1i
Returns the denominator for the acceleration multiplier.
.IP \fIaccel_numerator\fP 1i
Specifies the numerator for the acceleration multiplier.
.IP \fIaccel_numerator_return\fP 1i
Returns the numerator for the acceleration multiplier.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIdo_accel\fP 1i
Specifies a Boolean value that controls whether the values for
the accel_numerator or accel_denominator are used.
.IP \fIdo_threshold\fP 1i
Specifies a Boolean value that controls whether the value for the
threshold is used.
.IP \fIthreshold\fP 1i
Specifies the acceleration threshold.
.IP \fIthreshold_return\fP 1i
Returns the acceleration threshold.
.SH DESCRIPTION
The
.ZN XChangePointerControl
function defines how the pointing device moves.
The acceleration, expressed as a fraction, is a
multiplier for movement.
For example,
specifying 3/1 means the pointer moves three times as fast as normal.
The fraction may be rounded arbitrarily by the X server.
Acceleration
only takes effect if the pointer moves more than threshold pixels at
once and only applies to the amount beyond the value in the threshold argument.
Setting a value to \-1 restores the default.
The values of the do_accel and do_threshold arguments must be
.ZN True
for the pointer values to be set,
or the parameters are unchanged.
Negative values (other than \-1) generate a
.ZN BadValue
error, as does a zero value
for the accel_denominator argument.
.LP
.ZN XChangePointerControl
can generate a
.ZN BadValue
error.
.LP
The
.ZN XGetPointerControl
function returns the pointer's current acceleration multiplier
and acceleration threshold.
.SH DIAGNOSTICS
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.SH "SEE ALSO"
\fI\*(xL\fP

239
man/XChangeSaveSet.man Normal file
View file

@ -0,0 +1,239 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XChangeSaveSet 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XChangeSaveSet, XAddToSaveSet, XRemoveFromSaveSet \- change a client's save set
.SH SYNTAX
XChangeSaveSet\^(\^\fIdisplay\fP, \fIw\fP\^, \fIchange_mode\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
int \fIchange_mode\fP\^;
.LP
XAddToSaveSet\^(\^\fIdisplay\fP, \fIw\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.LP
XRemoveFromSaveSet\^(\^\fIdisplay\fP, \fIw\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.SH ARGUMENTS
.IP \fIchange_mode\fP 1i
Specifies the mode.
You can pass
.ZN SetModeInsert
or
.ZN SetModeDelete .
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.ds Wi that you want to add or delete from the client's save-set
.IP \fIw\fP 1i
Specifies the window \*(Wi.
.SH DESCRIPTION
Depending on the specified mode,
.ZN XChangeSaveSet
either inserts or deletes the specified window from the client's save-set.
The specified window must have been created by some other client,
or a
.ZN BadMatch
error results.
.LP
.ZN XChangeSaveSet
can generate
.ZN BadMatch ,
.ZN BadValue ,
and
.ZN BadWindow
errors.
.LP
The
.ZN XAddToSaveSet
function adds the specified window to the client's save-set.
The specified window must have been created by some other client,
or a
.ZN BadMatch
error results.
.LP
.ZN XAddToSaveSet
can generate
.ZN BadMatch
and
.ZN BadWindow
errors.
.LP
The
.ZN XRemoveFromSaveSet
function removes the specified window from the client's save-set.
The specified window must have been created by some other client,
or a
.ZN BadMatch
error results.
.LP
.ZN XRemoveFromSaveSet
can generate
.ZN BadMatch
and
.ZN BadWindow
errors.
.SH DIAGNOSTICS
.TP 1i
.ZN BadMatch
Some argument or pair of arguments has the correct type and range but fails
to match in some other way required by the request.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XReparentWindow(3X11)
.br
\fI\*(xL\fP

View file

@ -0,0 +1,440 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XChangeWindowAttributes 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XChangeWindowAttributes, XSetWindowBackground, XSetWindowBackgroundPixmap, XSetWindowBorder, XSetWindowBorderPixmap, XSetWindowColormap \- change window attributes
.SH SYNTAX
XChangeWindowAttributes\^(\^\fIdisplay\fP, \fIw\fP\^, \fIvaluemask\fP\^, \fIattributes\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
unsigned long \fIvaluemask\fP\^;
.br
XSetWindowAttributes *\fIattributes\fP\^;
.LP
XSetWindowBackground\^(\^\fIdisplay\fP, \fIw\fP\^, \fIbackground_pixel\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
unsigned long \fIbackground_pixel\fP\^;
.LP
XSetWindowBackgroundPixmap\^(\^\fIdisplay\fP, \fIw\fP\^, \fIbackground_pixmap\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
Pixmap \fIbackground_pixmap\fP\^;
.LP
XSetWindowBorder\^(\^\fIdisplay\fP, \fIw\fP\^, \fIborder_pixel\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
unsigned long \fIborder_pixel\fP\^;
.LP
XSetWindowBorderPixmap\^(\^\fIdisplay\fP, \fIw\fP\^, \fIborder_pixmap\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
Pixmap \fIborder_pixmap\fP\^;
.LP
XSetWindowColormap\^(\^\fIdisplay\fP, \fIw\fP\^, \fIcolormap\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
Colormap \fIcolormap\fP\^;
.SH ARGUMENTS
.IP \fIattributes\fP 1i
Specifies the structure from which the values (as specified by the value mask)
are to be taken.
The value mask should have the appropriate bits
set to indicate which attributes have been set in the structure.
.IP \fIbackground_pixel\fP 1i
Specifies the pixel that is to be used for the background.
.IP \fIbackground_pixmap\fP 1i
Specifies the background pixmap,
.ZN ParentRelative ,
or
.ZN None .
.IP \fIborder_pixel\fP 1i
Specifies the entry in the colormap.
.IP \fIborder_pixmap\fP 1i
Specifies the border pixmap or
.ZN CopyFromParent .
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIvaluemask\fP 1i
Specifies which window attributes are defined in the attributes
argument.
This mask is the bitwise inclusive OR of the valid attribute mask bits.
If valuemask is zero,
the attributes are ignored and are not referenced.
.IP \fIw\fP 1i
Specifies the window.
.IP \fIcolormap\fP 1i
Specifies the colormap.
.SH DESCRIPTION
Depending on the valuemask,
the
.ZN XChangeWindowAttributes
function uses the window attributes in the
.ZN XSetWindowAttributes
structure to change the specified window attributes.
Changing the background does not cause the window contents to be
changed.
To repaint the window and its background, use
.ZN XClearWindow .
Setting the border or changing the background such that the
border tile origin changes causes the border to be repainted.
Changing the background of a root window to
.ZN None
or
.ZN ParentRelative
restores the default background pixmap.
Changing the border of a root window to
.ZN CopyFromParent
restores the default border pixmap.
Changing the win-gravity does not affect the current position of the
window.
Changing the backing-store of an obscured window to
.ZN WhenMapped
or
.ZN Always ,
or changing the backing-planes, backing-pixel, or
save-under of a mapped window may have no immediate effect.
Changing the colormap of a window (that is, defining a new map, not
changing the contents of the existing map) generates a
.ZN ColormapNotify
event.
Changing the colormap of a visible window may have no
immediate effect on the screen because the map may not be installed
(see
.ZN XInstallColormap ).
Changing the cursor of a root window to
.ZN None
restores the default
cursor.
Whenever possible, you are encouraged to share colormaps.
.LP
Multiple clients can select input on the same window.
Their event masks are maintained separately.
When an event is generated,
it is reported to all interested clients.
However, only one client at a time can select for
.ZN SubstructureRedirectMask ,
.ZN ResizeRedirectMask ,
and
.ZN ButtonPressMask .
If a client attempts to select any of these event masks
and some other client has already selected one,
a
.ZN BadAccess
error results.
There is only one do-not-propagate-mask for a window,
not one per client.
.LP
.ZN XChangeWindowAttributes
can generate
.ZN BadAccess ,
.ZN BadColor ,
.ZN BadCursor ,
.ZN BadMatch ,
.ZN BadPixmap ,
.ZN BadValue ,
and
.ZN BadWindow
errors.
.LP
The
.ZN XSetWindowBackground
function sets the background of the window to the specified pixel value.
Changing the background does not cause the window contents to be changed.
.ZN XSetWindowBackground
uses a pixmap of undefined size filled with the pixel value you passed.
If you try to change the background of an
.ZN InputOnly
window, a
.ZN BadMatch
error results.
.LP
.ZN XSetWindowBackground
can generate
.ZN BadMatch
and
.ZN BadWindow
errors.
.LP
The
.ZN XSetWindowBackgroundPixmap
function sets the background pixmap of the window to the specified pixmap.
The background pixmap can immediately be freed if no further explicit
references to it are to be made.
If
.ZN ParentRelative
is specified,
the background pixmap of the window's parent is used,
or on the root window, the default background is restored.
If you try to change the background of an
.ZN InputOnly
window, a
.ZN BadMatch
error results.
If the background is set to
.ZN None ,
the window has no defined background.
.LP
.ZN XSetWindowBackgroundPixmap
can generate
.ZN BadMatch ,
.ZN BadPixmap ,
and
.ZN BadWindow
errors.
.LP
The
.ZN XSetWindowBorder
function sets the border of the window to the pixel value you specify.
If you attempt to perform this on an
.ZN InputOnly
window, a
.ZN BadMatch
error results.
.LP
.ZN XSetWindowBorder
can generate
.ZN BadMatch
and
.ZN BadWindow
errors.
.LP
The
.ZN XSetWindowBorderPixmap
function sets the border pixmap of the window to the pixmap you specify.
The border pixmap can be freed immediately if no further explicit
references to it are to be made.
If you specify
.ZN CopyFromParent ,
a copy of the parent window's border pixmap is used.
If you attempt to perform this on an
.ZN InputOnly
window, a
.ZN BadMatch
error results.
.LP
.ZN XSetWindowBorderPixmap
can generate
.ZN BadMatch ,
.ZN BadPixmap ,
and
.ZN BadWindow
errors.
.LP
The
.ZN XSetWindowColormap
function sets the specified colormap of the specified window.
The colormap must have the same visual type as the window,
or a
.ZN BadMatch
error results.
.LP
.ZN XSetWindowColormap
can generate
.ZN BadColor ,
.ZN BadMatch ,
and
.ZN BadWindow
errors.
.SH DIAGNOSTICS
.TP 1i
.ZN BadAccess
A client attempted
to free a color map entry that it did not already allocate.
.TP 1i
.ZN BadAccess
A client attempted
to store into a read-only color map entry.
.TP 1i
.ZN BadColor
A value for a Colormap argument does not name a defined Colormap.
.TP 1i
.ZN BadCursor
A value for a Cursor argument does not name a defined Cursor.
.TP 1i
.ZN BadMatch
Some argument or pair of arguments has the correct type and range but fails
to match in some other way required by the request.
.TP 1i
.ZN BadMatch
An
.ZN InputOnly
window locks this attribute.
.TP 1i
.ZN BadPixmap
A value for a Pixmap argument does not name a defined Pixmap.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XConfigureWindow(3X11),
XCreateWindow(3X11),
XDestroyWindow(3X11),
XInstallColormap(3X11),
XMapWindow(3X11),
XRaiseWindow(3X11),
XUnmapWindow(3X11)
.br
\fI\*(xL\fP

230
man/XCirculateEvent.man Normal file
View file

@ -0,0 +1,230 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XCirculateEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XCirculateEvent \- CirculateNotify event structure
.SH STRUCTURES
The structure for
.ZN CirculateNotify
events contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* CirculateNotify */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window event;
Window window;
int place; /* PlaceOnTop, PlaceOnBottom */
} XCirculateEvent;
.De
.LP
When you receive this event,
the structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
The event member is set either to the restacked window or to its parent,
depending on whether
.ZN StructureNotify
or
.ZN SubstructureNotify
was selected.
The window member is set to the window that was restacked.
The place member is set to the window's position after the restack occurs and
is either
.ZN PlaceOnTop
or
.ZN PlaceOnBottom .
If it is
.ZN PlaceOnTop ,
the window is now on top of all siblings.
If it is
.ZN PlaceOnBottom ,
the window is now below all siblings.
.SH "SEE ALSO"
XAnyEvent(3X11),
XButtonEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateRequestEvent(3X11),
XColormapEvent(3X11),
XConfigureEvent(3X11),
XConfigureRequestEvent(3X11),
XCrossingEvent(3X11),
XDestroyWindowEvent(3X11),
XErrorEvent(3X11),
XExposeEvent(3X11),
XFocusChangeEvent(3X11),
XGraphicsExposeEvent(3X11),
XGravityEvent(3X11),
XKeymapEvent(3X11),
XMapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

View file

@ -0,0 +1,225 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XCirculateRequestEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XCirculateRequestEvent \- CirculateRequest event structure
.SH STRUCTURES
The structure for
.ZN CirculateRequest
events contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* CirculateRequest */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window parent;
Window window;
int place; /* PlaceOnTop, PlaceOnBottom */
} XCirculateRequestEvent;
.De
.LP
When you receive this event,
the structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
The parent member is set to the parent window.
The window member is set to the subwindow to be restacked.
The place member is set to what the new position in the stacking order should be
and is either
.ZN PlaceOnTop
or
.ZN PlaceOnBottom .
If it is
.ZN PlaceOnTop ,
the subwindow should be on top of all siblings.
If it is
.ZN PlaceOnBottom ,
the subwindow should be below all siblings.
.SH "SEE ALSO"
XAnyEvent(3X11),
XButtonEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateEvent(3X11),
XColormapEvent(3X11),
XConfigureEvent(3X11),
XConfigureRequestEvent(3X11),
XCrossingEvent(3X11),
XDestroyWindowEvent(3X11),
XErrorEvent(3X11),
XExposeEvent(3X11),
XFocusChangeEvent(3X11),
XGraphicsExposeEvent(3X11),
XGravityEvent(3X11),
XKeymapEvent(3X11),
XMapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

267
man/XClearArea.man Normal file
View file

@ -0,0 +1,267 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XClearArea 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XClearArea, XClearWindow \- clear area or window
.SH SYNTAX
XClearArea\^(\^\fIdisplay\fP, \fIw\fP\^, \fIx\fP\^, \fIy\fP\^, \fIwidth\fP\^, \fIheight\fP\^, \fIexposures\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.br
unsigned int \fIwidth\fP\^, \fIheight\fP\^;
.br
Bool \fIexposures\fP\^;
.LP
XClearWindow\^(\^\fIdisplay\fP, \fIw\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIexposures\fP 1i
Specifies a Boolean value that indicates if
.ZN Expose
events are to be generated.
.IP \fIw\fP 1i
Specifies the window.
.ds Wh , which are the dimensions of the rectangle
.IP \fIwidth\fP 1i
.br
.ns
.IP \fIheight\fP 1i
Specify the width and height\*(Wh.
.ds Xy , which are relative to the origin of the window \
and specify the upper-left corner of the rectangle
.IP \fIx\fP 1i
.br
.ns
.IP \fIy\fP 1i
Specify the x and y coordinates\*(Xy.
.SH DESCRIPTION
The
.ZN XClearArea
function paints a rectangular area in the specified window according to the
specified dimensions with the window's background pixel or pixmap.
The subwindow-mode effectively is
.ZN ClipByChildren .
If width is zero, it
is replaced with the current width of the window minus x.
If height is
zero, it is replaced with the current height of the window minus y.
If the window has a defined background tile,
the rectangle clipped by any children is filled with this tile.
If the window has
background
.ZN None ,
the contents of the window are not changed.
In either
case, if exposures is
.ZN True ,
one or more
.ZN Expose
events are generated for regions of the rectangle that are either visible or are
being retained in a backing store.
If you specify a window whose class is
.ZN InputOnly ,
a
.ZN BadMatch
error results.
.LP
.ZN XClearArea
can generate
.ZN BadMatch ,
.ZN BadValue ,
and
.ZN BadWindow
errors.
.LP
The
.ZN XClearWindow
function clears the entire area in the specified window and is
equivalent to
.ZN XClearArea
(display, w, 0, 0, 0, 0,
.ZN False ).
If the window has a defined background tile, the rectangle is tiled with a
plane-mask of all ones and
.ZN GXcopy
function.
If the window has
background
.ZN None ,
the contents of the window are not changed.
If you specify a window whose class is
.ZN InputOnly ,
a
.ZN BadMatch
error results.
.LP
.ZN XClearWindow
can generate
.ZN BadMatch
and
.ZN BadWindow
errors.
.SH DIAGNOSTICS
.TP 1i
.ZN BadMatch
An
.ZN InputOnly
window is used as a Drawable.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XCopyArea(3X11)
.br
\fI\*(xL\fP

228
man/XClientMessageEvent.man Normal file
View file

@ -0,0 +1,228 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XClientMessageEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XClientMessageEvent \- ClientMessage event structure
.SH STRUCTURES
The structure for
.ZN ClientMessage
events contains:
.LP
.Ds 0
.TA .5i 1i 3i
.ta .5i 1i 3i
typedef struct {
int type; /* ClientMessage */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window;
Atom message_type;
int format;
union {
char b[20];
short s[10];
long l[5];
} data;
} XClientMessageEvent;
.De
.LP
When you receive this event,
the structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
The message_type member is set to an atom that indicates how the data
should be interpreted by the receiving client.
The format member is set to 8, 16, or 32 and specifies whether the data
should be viewed as a list of bytes, shorts, or longs.
The data member is a union that contains the members b, s, and l.
The b, s, and l members represent data of twenty 8-bit values,
ten 16-bit values, and five 32-bit values.
Particular message types might not make use of all these values.
The X server places no interpretation on the values in the window,
message_type, or data members.
.SH "SEE ALSO"
XAnyEvent(3X11),
XButtonEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateEvent(3X11),
XCirculateRequestEvent(3X11),
XColormapEvent(3X11),
XConfigureEvent(3X11),
XConfigureRequestEvent(3X11),
XCrossingEvent(3X11),
XDestroyWindowEvent(3X11),
XErrorEvent(3X11),
XExposeEvent(3X11),
XFocusChangeEvent(3X11),
XGraphicsExposeEvent(3X11),
XGravityEvent(3X11),
XKeymapEvent(3X11),
XMapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

239
man/XColormapEvent.man Normal file
View file

@ -0,0 +1,239 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XColormapEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XColormapEvent \- ColormapNotify event structure
.SH STRUCTURES
The structure for
.ZN ColormapNotify
events contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* ColormapNotify */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window;
Colormap colormap; /* colormap or None */
Bool new;
int state; /* ColormapInstalled, ColormapUninstalled */
} XColormapEvent;
.De
.LP
When you receive this event,
the structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
The window member is set to the window whose associated
colormap is changed, installed, or uninstalled.
For a colormap that is changed, installed, or uninstalled,
the colormap member is set to the colormap associated with the window.
For a colormap that is changed by a call to
.ZN XFreeColormap ,
the colormap member is set to
.ZN None .
The new member is set to indicate whether the colormap
for the specified window was changed or installed or uninstalled
and can be
.ZN True
or
.ZN False .
If it is
.ZN True ,
the colormap was changed.
If it is
.ZN False ,
the colormap was installed or uninstalled.
The state member is always set to indicate whether the colormap is installed or
uninstalled and can be
.ZN ColormapInstalled
or
.ZN ColormapUninstalled .
.SH "SEE ALSO"
XAnyEvent(3X11),
XButtonEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateEvent(3X11),
XCirculateRequestEvent(3X11),
XConfigureEvent(3X11),
XConfigureRequestEvent(3X11),
XCreateColormap(3X11),
XCrossingEvent(3X11),
XDestroyWindowEvent(3X11),
XErrorEvent(3X11),
XExposeEvent(3X11),
XFocusChangeEvent(3X11),
XGraphicsExposeEvent(3X11),
XGravityEvent(3X11),
XKeymapEvent(3X11),
XMapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

248
man/XConfigureEvent.man Normal file
View file

@ -0,0 +1,248 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XConfigureEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XConfigureEvent \- ConfigureNotify event structure
.SH STRUCTURES
The structure for
.ZN ConfigureNotify
events contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* ConfigureNotify */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window event;
Window window;
int x, y;
int width, height;
int border_width;
Window above;
Bool override_redirect;
} XConfigureEvent;
.De
.LP
When you receive this event,
the structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
The event member is set either to the reconfigured window or to its parent,
depending on whether
.ZN StructureNotify
or
.ZN SubstructureNotify
was selected.
The window member is set to the window whose size, position,
border, and/or stacking
order was changed.
.LP
The x and y members are set to the coordinates relative to the parent window's
origin and indicate the position of the upper-left outside corner of the window.
The width and height members are set to the inside size of the window,
not including
the border.
The border_width member is set to the width of the window's border, in pixels.
.LP
The above member is set to the sibling window and is used
for stacking operations.
If the X server sets this member to
.ZN None ,
the window whose state was changed is on the bottom of the stack
with respect to sibling windows.
However, if this member is set to a sibling window,
the window whose state was changed is placed on top of this sibling window.
.LP
The override_redirect member is set to the override-redirect attribute of the
window.
Window manager clients normally should ignore this window if the
override_redirect member
is
.ZN True .
.SH "SEE ALSO"
XAnyEvent(3X11),
XButtonEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateEvent(3X11),
XCirculateRequestEvent(3X11),
XColormapEvent(3X11),
XConfigureRequestEvent(3X11),
XCrossingEvent(3X11),
XDestroyWindowEvent(3X11),
XErrorEvent(3X11),
XExposeEvent(3X11),
XFocusChangeEvent(3X11),
XGraphicsExposeEvent(3X11),
XGravityEvent(3X11),
XKeymapEvent(3X11),
XMapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

View file

@ -0,0 +1,231 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XConfigureRequestEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XConfigureRequestEvent \- ConfigureRequest event structure
.SH STRUCTURES
The structure for
.ZN ConfigureRequest
events contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* ConfigureRequest */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window parent;
Window window;
int x, y;
int width, height;
int border_width;
Window above;
int detail; /* Above, Below, TopIf, BottomIf, Opposite */
unsigned long value_mask;
} XConfigureRequestEvent;
.De
.LP
When you receive this event,
the structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
The parent member is set to the parent window.
The window member is set to the window whose size, position, border width,
and/or stacking order is to be reconfigured.
The value_mask member indicates which components were specified in the
.ZN ConfigureWindow
protocol request.
The corresponding values are reported as given in the request.
The remaining values are filled in from the current geometry of the window,
except in the case of above (sibling) and detail (stack-mode),
which are reported as
.ZN None
and
.ZN Above ,
respectively, if they are not given in the request.
.SH "SEE ALSO"
XAnyEvent(3X11),
XButtonEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateEvent(3X11),
XCirculateRequestEvent(3X11),
XColormapEvent(3X11),
XConfigureEvent(3X11),
XCrossingEvent(3X11),
XDestroyWindowEvent(3X11),
XErrorEvent(3X11),
XExposeEvent(3X11),
XFocusChangeEvent(3X11),
XGraphicsExposeEvent(3X11),
XGravityEvent(3X11),
XKeymapEvent(3X11),
XMapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

486
man/XConfigureWindow.man Normal file
View file

@ -0,0 +1,486 @@
'\" t
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
'\" t
.TH XConfigureWindow 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XConfigureWindow, XMoveWindow, XResizeWindow, XMoveResizeWindow, XSetWindowBorderWidth, XWindowChanges \- configure windows and window changes structure
.SH SYNTAX
XConfigureWindow\^(\^\fIdisplay\fP, \fIw\fP\^, \fIvalue_mask\fP\^, \fIvalues\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
unsigned int \fIvalue_mask\fP\^;
.br
XWindowChanges *\fIvalues\fP\^;
.LP
XMoveWindow\^(\^\fIdisplay\fP, \fIw\fP\^, \fIx\fP\^, \fIy\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.LP
XResizeWindow\^(\^\fIdisplay\fP, \fIw\fP\^, \fIwidth\fP\^, \fIheight\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
unsigned int \fIwidth\fP\^, \fIheight\fP\^;
.LP
XMoveResizeWindow\^(\^\fIdisplay\fP, \fIw\fP\^, \fIx\fP\^, \fIy\fP\^, \fIwidth\fP\^, \fIheight\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.br
unsigned int \fIwidth\fP\^, \fIheight\fP\^;
.LP
XSetWindowBorderWidth\^(\^\fIdisplay\fP, \fIw\fP, \fIwidth\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
unsigned int \fIwidth\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIvalue_mask\fP 1i
Specifies which values are to be set using information in
the values structure.
This mask is the bitwise inclusive OR of the valid configure window values bits.
.IP \fIvalues\fP 1i
Specifies the
.ZN XWindowChanges
structure.
.ds Wi to be reconfigured, moved, or resized.
.IP \fIw\fP 1i
Specifies the window \*(Wi.
.IP \fIwidth\fP 1i
Specifies the width of the window border.
.ds Wh , which are the interior dimensions of the window
.IP \fIwidth\fP 1i
.br
.ns
.IP \fIheight\fP 1i
Specify the width and height\*(Wh.
.ds Xy , which define the new location of the top-left pixel \
of the window's border or the window itself if it has no border \
or define the new position of the window relative to its parent
.IP \fIx\fP 1i
.br
.ns
.IP \fIy\fP 1i
Specify the x and y coordinates\*(Xy.
.SH DESCRIPTION
The
.ZN XConfigureWindow
function uses the values specified in the
.ZN XWindowChanges
structure to reconfigure a window's size, position, border, and stacking order.
Values not specified are taken from the existing geometry of the window.
.LP
If a sibling is specified without a stack_mode or if the window
is not actually a sibling,
a
.ZN BadMatch
error results.
Note that the computations for
.ZN BottomIf ,
.ZN TopIf ,
and
.ZN Opposite
are performed with respect to the window's final geometry (as controlled by the
other arguments passed to
.ZN XConfigureWindow ),
not its initial geometry.
Any backing store contents of the window, its
inferiors, and other newly visible windows are either discarded or
changed to reflect the current screen contents
(depending on the implementation).
.LP
.ZN XConfigureWindow
can generate
.ZN BadMatch ,
.ZN BadValue ,
and
.ZN BadWindow
errors.
.LP
The
.ZN XMoveWindow
function moves the specified window to the specified x and y coordinates,
but it does not change the window's size, raise the window, or
change the mapping state of the window.
Moving a mapped window may or may not lose the window's contents
depending on if the window is obscured by nonchildren
and if no backing store exists.
If the contents of the window are lost,
the X server generates
.ZN Expose
events.
Moving a mapped window generates
.ZN Expose
events on any formerly obscured windows.
.LP
If the override-redirect flag of the window is
.ZN False
and some
other client has selected
.ZN SubstructureRedirectMask
on the parent, the X server generates a
.ZN ConfigureRequest
event, and no further processing is
performed.
Otherwise, the window is moved.
.LP
.ZN XMoveWindow
can generate a
.ZN BadWindow
error.
.LP
The
.ZN XResizeWindow
function changes the inside dimensions of the specified window, not including
its borders.
This function does not change the window's upper-left coordinate or
the origin and does not restack the window.
Changing the size of a mapped window may lose its contents and generate
.ZN Expose
events.
If a mapped window is made smaller,
changing its size generates
.ZN Expose
events on windows that the mapped window formerly obscured.
.LP
If the override-redirect flag of the window is
.ZN False
and some
other client has selected
.ZN SubstructureRedirectMask
on the parent, the X server generates a
.ZN ConfigureRequest
event, and no further processing is performed.
If either width or height is zero,
a
.ZN BadValue
error results.
.LP
.ZN XResizeWindow
can generate
.ZN BadValue
and
.ZN BadWindow
errors.
.LP
The
.ZN XMoveResizeWindow
function changes the size and location of the specified window
without raising it.
Moving and resizing a mapped window may generate an
.ZN Expose
event on the window.
Depending on the new size and location parameters,
moving and resizing a window may generate
.ZN Expose
events on windows that the window formerly obscured.
.LP
If the override-redirect flag of the window is
.ZN False
and some
other client has selected
.ZN SubstructureRedirectMask
on the parent, the X server generates a
.ZN ConfigureRequest
event, and no further processing is performed.
Otherwise, the window size and location are changed.
.LP
.ZN XMoveResizeWindow
can generate
.ZN BadValue
and
.ZN BadWindow
errors.
.LP
The
.ZN XSetWindowBorderWidth
function sets the specified window's border width to the specified width.
.LP
.ZN XSetWindowBorderWidth
can generate a
.ZN BadWindow
error.
.SH STRUCTURES
The
.ZN XWindowChanges
structure contains:
.LP
.LP
/* Configure window value mask bits */
.TS
lw(.5i) lw(2.5i) lw(.8i).
T{
#define
T} T{
.ZN CWX
T} T{
(1<<0)
T}
T{
#define
T} T{
.ZN CWY
T} T{
(1<<1)
T}
T{
#define
T} T{
.ZN CWWidth
T} T{
(1<<2)
T}
T{
#define
T} T{
.ZN CWHeight
T} T{
(1<<3)
T}
T{
#define
T} T{
.ZN CWBorderWidth
T} T{
(1<<4)
T}
T{
#define
T} T{
.ZN CWSibling
T} T{
(1<<5)
T}
T{
#define
T} T{
.ZN CWStackMode
T} T{
(1<<6)
T}
.TE
.IN "XWindowChanges" "" "@DEF@"
.Ds 0
.TA .5i 3i
.ta .5i 3i
/* Values */
typedef struct {
int x, y;
int width, height;
int border_width;
Window sibling;
int stack_mode;
} XWindowChanges;
.De
.LP
The x and y members are used to set the window's x and y coordinates,
which are relative to the parent's origin
and indicate the position of the upper-left outer corner of the window.
The width and height members are used to set the inside size of the window,
not including the border, and must be nonzero, or a
.ZN BadValue
error results.
Attempts to configure a root window have no effect.
.LP
The border_width member is used to set the width of the border in pixels.
Note that setting just the border width leaves the outer-left corner of the window
in a fixed position but moves the absolute position of the window's origin.
If you attempt to set the border-width attribute of an
.ZN InputOnly
window nonzero, a
.ZN BadMatch
error results.
.LP
The sibling member is used to set the sibling window for stacking operations.
The stack_mode member is used to set how the window is to be restacked
and can be set to
.ZN Above ,
.ZN Below ,
.ZN TopIf ,
.ZN BottomIf ,
or
.ZN Opposite .
.SH DIAGNOSTICS
.TP 1i
.ZN BadMatch
An
.ZN InputOnly
window is used as a Drawable.
.TP 1i
.ZN BadMatch
Some argument or pair of arguments has the correct type and range but fails
to match in some other way required by the request.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XChangeWindowAttributes(3X11),
XCreateWindow(3X11),
XDestroyWindow(3X11),
XMapWindow(3X11),
XRaiseWindow(3X11),
XUnmapWindow(3X11)
.br
\fI\*(xL\fP

326
man/XCopyArea.man Normal file
View file

@ -0,0 +1,326 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XCopyArea 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XCopyArea, XCopyPlane \- copy areas
.SH SYNTAX
XCopyArea\^(\^\fIdisplay\fP, \fIsrc\fP\^, \fIdest\fP\^, \fIgc\fP\^, \fIsrc_x\fP\^, \fIsrc_y\fP\^, \fIwidth\fP\^, \fIheight\fP\^, \fIdest_x\fP\^, \fIdest_y\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fIsrc\fP\^, \fIdest\fP\^;
.br
GC \fIgc\fP\^;
.br
int \fIsrc_x\fP\^, \fIsrc_y\fP\^;
.br
unsigned int \fIwidth\fP\^, \fIheight\fP\^;
.br
int \fIdest_x\fP\^, \fIdest_y\fP\^;
.LP
XCopyPlane\^(\^\fIdisplay\fP, \fIsrc\fP\^, \fIdest\fP\^, \fIgc\fP\^, \fIsrc_x\fP\^, \fIsrc_y\fP\^, \fIwidth\fP\^, \fIheight\fP\^, \fIdest_x\fP\^, \fIdest_y\fP\^, \fIplane\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fIsrc\fP\^, \fIdest\fP\^;
.br
GC \fIgc\fP\^;
.br
int \fIsrc_x\fP\^, \fIsrc_y\fP\^;
.br
unsigned int \fIwidth\fP\^, \fIheight\fP\^;
.br
int \fIdest_x\fP\^, \fIdest_y\fP\^;
.br
unsigned long \fIplane\fP\^;
.SH ARGUMENTS
.ds Dx , which are relative to the origin of the destination rectangle \
and specify its upper-left corner
.IP \fIdest_x\fP 1i
.br
.ns
.IP \fIdest_y\fP 1i
Specify the x and y coordinates\*(Dx.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIgc\fP 1i
Specifies the GC.
.IP \fIplane\fP 1i
Specifies the bit plane.
You must set exactly one bit to 1.
.IP \fIsrc\fP 1i
.br
.ns
.IP \fIdest\fP 1i
Specify the source and destination rectangles to be combined.
.IP \fIsrc_x\fP 1i
.br
.ns
.IP \fIsrc_y\fP 1i
Specify the x and y coordinates,
which are relative to the origin of the source rectangle
and specify its upper-left corner.
.ds Wh , which are the dimensions of both the source \
and destination rectangles
.IP \fIwidth\fP 1i
.br
.ns
.IP \fIheight\fP 1i
Specify the width and height\*(Wh.
.SH DESCRIPTION
The
.ZN XCopyArea
function combines the specified rectangle of src with the specified rectangle
of dest.
The drawables must have the same root and depth,
or a
.ZN BadMatch
error results.
.LP
If regions of the source rectangle are obscured and have not been
retained in backing store
or if regions outside the boundaries of the source drawable are specified,
those regions are not copied.
Instead, the
following occurs on all corresponding destination regions that are either
visible or are retained in backing store.
If the destination is a window with a background other than
.ZN None ,
corresponding regions
of the destination are tiled with that background
(with plane-mask of all ones and
.ZN GXcopy
function).
Regardless of tiling or whether the destination is a window or a pixmap,
if graphics-exposures is
.ZN True ,
then
.ZN GraphicsExpose
events for all corresponding destination regions are generated.
If graphics-exposures is
.ZN True
but no
.ZN GraphicsExpose
events are generated, a
.ZN NoExpose
event is generated.
Note that by default graphics-exposures is
.ZN True
in new GCs.
.LP
This function uses these GC components: function, plane-mask,
subwindow-mode, graphics-exposures, clip-x-origin,
clip-y-origin, and clip-mask.
.LP
.ZN XCopyArea
can generate
.ZN BadDrawable ,
.ZN BadGC ,
and
.ZN BadMatch
errors.
.LP
The
.ZN XCopyPlane
function uses a single bit plane of the specified source rectangle
combined with the specified GC to modify the specified rectangle of dest.
The drawables must have the same root but need not have the same depth.
If the drawables do not have the same root, a
.ZN BadMatch
error results.
If plane does not have exactly one bit set to 1 and the value of plane
is not less than %2 sup n%, where \fIn\fP is the depth of src, a
.ZN BadValue
error results.
.LP
Effectively,
.ZN XCopyPlane
forms a pixmap of the same depth as the rectangle of dest and with a
size specified by the source region.
It uses the foreground/background pixels in the GC (foreground
everywhere the bit plane in src contains a bit set to 1,
background everywhere the bit plane in src contains a bit set to 0)
and the equivalent of a
.ZN CopyArea
protocol request is performed with all the same exposure semantics.
This can also be thought of as using the specified region of the source
bit plane as a stipple with a fill-style of
.ZN FillOpaqueStippled
for filling a rectangular area of the destination.
.LP
This function uses these GC components: function, plane-mask, foreground,
background, subwindow-mode, graphics-exposures, clip-x-origin, clip-y-origin,
and clip-mask.
.LP
.ZN XCopyPlane
can generate
.ZN BadDrawable ,
.ZN BadGC ,
.ZN BadMatch ,
and
.ZN BadValue
errors.
.SH DIAGNOSTICS
.TP 1i
.ZN BadDrawable
A value for a Drawable argument does not name a defined Window or Pixmap.
.TP 1i
.ZN BadGC
A value for a GContext argument does not name a defined GContext.
.TP 1i
.ZN BadMatch
An
.ZN InputOnly
window is used as a Drawable.
.TP 1i
.ZN BadMatch
Some argument or pair of arguments has the correct type and range but fails
to match in some other way required by the request.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.SH "SEE ALSO"
XClearArea(3X11)
.br
\fIXlib \- C Language X Interface\fP

379
man/XCreateColormap.man Normal file
View file

@ -0,0 +1,379 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XCreateColormap 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XCreateColormap, XCopyColormapAndFree, XFreeColormap, XColor \- create, copy, or destroy colormaps and color structure
.SH SYNTAX
Colormap XCreateColormap\^(\^\fIdisplay\fP, \fIw\fP\^, \fIvisual\fP\^, \fIalloc\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
Visual *\fIvisual\fP\^;
.br
int \fIalloc\fP\^;
.LP
Colormap XCopyColormapAndFree\^(\^\fIdisplay\fP, \fIcolormap\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Colormap \fIcolormap\fP\^;
.LP
XFreeColormap\^(\^\fIdisplay\fP, \fIcolormap\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Colormap \fIcolormap\fP\^;
.SH ARGUMENTS
.IP \fIalloc\fP 1i
Specifies the colormap entries to be allocated.
You can pass
.ZN AllocNone
or
.ZN AllocAll .
.ds Cm that you want to create, copy, set, or destroy
.IP \fIcolormap\fP 1i
Specifies the colormap \*(Cm.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIvisual\fP 1i
Specifies a visual type supported on the screen.
If the visual type is not one supported by the screen,
a
.ZN BadMatch
error results.
.ds Wi on whose screen you want to create a colormap
.IP \fIw\fP 1i
Specifies the window \*(Wi.
.SH DESCRIPTION
The
.ZN XCreateColormap
function creates a colormap of the specified visual type for the screen
on which the specified window resides and returns the colormap ID
associated with it.
Note that the specified window is only used to determine the screen.
.LP
The initial values of the colormap entries are undefined for the
visual classes
.ZN GrayScale ,
.ZN PseudoColor ,
and
.ZN DirectColor .
For
.ZN StaticGray ,
.ZN StaticColor ,
and
.ZN TrueColor ,
the entries have defined values,
but those values are specific to the visual and are not defined by X.
For
.ZN StaticGray ,
.ZN StaticColor ,
and
.ZN TrueColor ,
alloc must be
.ZN AllocNone ,
or a
.ZN BadMatch
error results.
For the other visual classes,
if alloc is
.ZN AllocNone ,
the colormap initially has no allocated entries,
and clients can allocate them.
For information about the visual types,
see section 3.1.
.LP
If alloc is
.ZN AllocAll ,
the entire colormap is allocated writable.
The initial values of all allocated entries are undefined.
For
.ZN GrayScale
and
.ZN PseudoColor ,
the effect is as if an
.ZN XAllocColorCells
call returned all pixel values from zero to N \- 1,
where N is the colormap entries value in the specified visual.
For
.ZN DirectColor ,
the effect is as if an
.ZN XAllocColorPlanes
call returned a pixel value of zero and red_mask, green_mask,
and blue_mask values containing the same bits as the corresponding
masks in the specified visual.
However, in all cases,
none of these entries can be freed by using
.ZN XFreeColors .
.LP
.ZN XCreateColormap
can generate
.ZN BadAlloc ,
.ZN BadMatch ,
.ZN BadValue ,
and
.ZN BadWindow
errors.
.LP
The
.ZN XCopyColormapAndFree
function creates a colormap of the same visual type and for the same screen
as the specified colormap and returns the new colormap ID.
It also moves all of the client's existing allocation from the specified
colormap to the new colormap with their color values intact
and their read-only or writable characteristics intact and frees those entries
in the specified colormap.
Color values in other entries in the new colormap are undefined.
If the specified colormap was created by the client with alloc set to
.ZN AllocAll ,
the new colormap is also created with
.ZN AllocAll ,
all color values for all entries are copied from the specified colormap,
and then all entries in the specified colormap are freed.
If the specified colormap was not created by the client with
.ZN AllocAll ,
the allocations to be moved are all those pixels and planes
that have been allocated by the client using
.ZN XAllocColor ,
.ZN XAllocNamedColor ,
.ZN XAllocColorCells ,
or
.ZN XAllocColorPlanes
and that have not been freed since they were allocated.
.LP
.ZN XCopyColormapAndFree
can generate
.ZN BadAlloc
and
.ZN BadColor
errors.
.LP
The
.ZN XFreeColormap
function deletes the association between the colormap resource ID
and the colormap and frees the colormap storage.
However, this function has no effect on the default colormap for a screen.
If the specified colormap is an installed map for a screen,
it is uninstalled (see
.ZN XUninstallColormap ).
If the specified colormap is defined as the colormap for a window (by
.ZN XCreateWindow ,
.ZN XSetWindowColormap ,
or
.ZN XChangeWindowAttributes ),
.ZN XFreeColormap
changes the colormap associated with the window to
.ZN None
and generates a
.ZN ColormapNotify
event.
X does not define the colors displayed for a window with a colormap of
.ZN None .
.LP
.ZN XFreeColormap
can generate a
.ZN BadColor
error.
.SH STRUCTURES
The
.ZN XColor
structure contains:
.LP
.Ds 0
.TA .5i 2.5i
.ta .5i 2.5i
typedef struct {
unsigned long pixel; /* pixel value */
unsigned short red, green, blue; /* rgb values */
char flags; /* DoRed, DoGreen, DoBlue */
char pad;
} XColor;
.De
.LP
The red, green, and blue values are always in the range 0 to 65535
inclusive, independent of the number of bits actually used in the
display hardware.
The server scales these values down to the range used by the hardware.
Black is represented by (0,0,0),
and white is represented by (65535,65535,65535).
.IN "Color"
In some functions,
the flags member controls which of the red, green, and blue members is used
and can be the inclusive OR of zero or more of
.ZN DoRed ,
.ZN DoGreen ,
and
.ZN DoBlue .
.SH DIAGNOSTICS
.TP 1i
.ZN BadAlloc
The server failed to allocate the requested resource or server memory.
.TP 1i
.ZN BadColor
A value for a Colormap argument does not name a defined Colormap.
.TP 1i
.ZN BadMatch
An
.ZN InputOnly
window is used as a Drawable.
.TP 1i
.ZN BadMatch
Some argument or pair of arguments has the correct type and range but fails
to match in some other way required by the request.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XAllocColor(3X11),
XChangeWindowAtrributes(3X11),
XCreateWindow(3X11),
XQueryColor(3X11),
XStoreColors(3X11)
.br
\fI\*(xL\fP

337
man/XCreateFontCursor.man Normal file
View file

@ -0,0 +1,337 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XCreateFontCursor 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XCreateFontCursor, XCreatePixmapCursor, XCreateGlyphCursor \- create cursors
.SH SYNTAX
#include <X11/cursorfont.h>
.sp 6p
Cursor XCreateFontCursor\^(\^\fIdisplay\fP, \fIshape\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
unsigned int \fIshape\fP\^;
.LP
Cursor XCreatePixmapCursor\^(\^\fIdisplay\fP, \fIsource\fP\^, \fImask\fP\^, \fIforeground_color\fP\^, \fIbackground_color\fP\^, \fIx\fP\^, \fIy\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Pixmap \fIsource\fP\^;
.br
Pixmap \fImask\fP\^;
.br
XColor *\fIforeground_color\fP\^;
.br
XColor *\fIbackground_color\fP\^;
.br
unsigned int \fIx\fP\^, \fIy\fP\^;
.LP
Cursor XCreateGlyphCursor\^(\^\fIdisplay\fP, \fIsource_font\fP\^, \fImask_font\fP\^, \fIsource_char\fP\^, \fImask_char\fP\^,
.br
\fIforeground_color\fP\^, \fIbackground_color\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Font \fIsource_font\fP\^, \fImask_font\fP\^;
.br
unsigned int \fIsource_char\fP\^, \fImask_char\fP\^;
.br
XColor *\fIforeground_color\fP\^;
.br
XColor *\fIbackground_color\fP\^;
.SH ARGUMENTS
.IP \fIbackground_color\fP 1i
Specifies the RGB values for the background of the source.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIforeground_color\fP 1i
Specifies the RGB values for the foreground of the source.
.IP \fImask\fP 1i
Specifies the cursor's source bits to be displayed or
.ZN None .
.IP \fImask_char\fP 1i
Specifies the glyph character for the mask.
.IP \fImask_font\fP 1i
Specifies the font for the mask glyph or
.ZN None .
.IP \fIshape\fP 1i
Specifies the shape of the cursor.
.IP \fIsource\fP 1i
Specifies the shape of the source cursor.
.\" *** JIM: NEED TO CHECK THIS. ***
.IP \fIsource_char\fP 1i
Specifies the character glyph for the source.
.IP \fIsource_font\fP 1i
Specifies the font for the source glyph.
.ds Xy , which indicate the hotspot relative to the source's origin
.IP \fIx\fP 1i
.br
.ns
.IP \fIy\fP 1i
Specify the x and y coordinates\*(Xy.
.SH DESCRIPTION
X provides a set of standard cursor shapes in a special font named
cursor.
Applications are encouraged to use this interface for their cursors
because the font can be customized for the individual display type.
The shape argument specifies which glyph of the standard fonts
to use.
.LP
The hotspot comes from the information stored in the cursor font.
The initial colors of a cursor are a black foreground and a white
background (see
.ZN XRecolorCursor ).
.LP
.ZN XCreateFontCursor
can generate
.ZN BadAlloc
and
.ZN BadValue
errors.
.LP
The
.ZN XCreatePixmapCursor
function creates a cursor and returns the cursor ID associated with it.
The foreground and background RGB values must be specified using
foreground_color and background_color,
even if the X server only has a
.ZN StaticGray
or
.ZN GrayScale
screen.
The foreground color is used for the pixels set to 1 in the
source, and the background color is used for the pixels set to 0.
Both source and mask, if specified, must have depth one (or a
.ZN BadMatch
error results) but can have any root.
The mask argument defines the shape of the cursor.
The pixels set to 1 in the mask define which source pixels are displayed,
and the pixels set to 0 define which pixels are ignored.
If no mask is given,
all pixels of the source are displayed.
The mask, if present, must be the same size as the pixmap defined by the
source argument, or a
.ZN BadMatch
error results.
The hotspot must be a point within the source,
or a
.ZN BadMatch
error results.
.LP
The components of the cursor can be transformed arbitrarily to meet
display limitations.
The pixmaps can be freed immediately if no further explicit references
to them are to be made.
Subsequent drawing in the source or mask pixmap has an undefined effect on the
cursor.
The X server might or might not make a copy of the pixmap.
.LP
.ZN XCreatePixmapCursor
can generate
.ZN BadAlloc
and
.ZN BadPixmap
errors.
.LP
The
.ZN XCreateGlyphCursor
function is similar to
.ZN XCreatePixmapCursor
except that the source and mask bitmaps are obtained from the specified
font glyphs.
The source_char must be a defined glyph in source_font,
or a
.ZN BadValue
error results.
If mask_font is given,
mask_char must be a defined glyph in mask_font,
or a
.ZN BadValue
error results.
The mask_font and character are optional.
The origins of the source_char and mask_char (if defined) glyphs are
positioned coincidently and define the hotspot.
The source_char and mask_char need not have the same bounding box metrics,
and there is no restriction on the placement of the hotspot relative to the bounding
boxes.
If no mask_char is given, all pixels of the source are displayed.
You can free the fonts immediately by calling
.ZN XFreeFont
if no further explicit references to them are to be made.
.LP
For 2-byte matrix fonts,
the 16-bit value should be formed with the byte1
member in the most significant byte and the byte2 member in the
least significant byte.
.LP
.ZN XCreateGlyphCursor
can generate
.ZN BadAlloc ,
.ZN BadFont ,
and
.ZN BadValue
errors.
.SH DIAGNOSTICS
.TP 1i
.ZN BadAlloc
The server failed to allocate the requested resource or server memory.
.TP 1i
.ZN BadFont
A value for a Font or GContext argument does not name a defined Font.
.TP 1i
.ZN BadMatch
Some argument or pair of arguments has the correct type and range but fails
to match in some other way required by the request.
.TP 1i
.ZN BadPixmap
A value for a Pixmap argument does not name a defined Pixmap.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.SH "SEE ALSO"
XDefineCursor(3X11),
XLoadFont(3X11),
XRecolorCursor(3X11)
.br
\fI\*(xL\fP

387
man/XCreateFontSet.man Normal file
View file

@ -0,0 +1,387 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XCreateFontSet 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XCreateFontSet, XFreeFontSet \- create and free an international text drawing font set
.SH SYNTAX
XFontSet XCreateFontSet\^(\^\fIdisplay\fP\^, \fIbase_font_name_list\fP\^, \fImissing_charset_list_return\fP\^,
.br
\fImissing_charset_count_return\fP\^, \fIdef_string_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
char *\fIbase_font_name_list\fP\^;
.br
char ***\fImissing_charset_list_return\fP\^;
.br
int *\fImissing_charset_count_return\fP\^;
.br
char **\fIdef_string_return\fP\^;
.LP
void XFreeFontSet\^(\^\fIdisplay\fP\^, \fIfont_set\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XFontSet \fIfont_set\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIbase_font_name_list\fP 1i
Specifies the base font names.
.IP \fIdef_string_return\fP 1i
Returns the string drawn for missing charsets.
.IP \fIfont_set\fP 1i
Specifies the font set.
.IP \fImissing_charset_count_return\fP 1i
Returns the number of missing charsets.
.IP \fImissing_charset_list_return\fP 1i
Returns the missing charsets.
.SH DESCRIPTION
The
.ZN XCreateFontSet
function creates a font set for the specified display.
The font set is bound to the current locale when
.ZN XCreateFontSet
is called.
The font set may be used in subsequent calls to obtain font
and character information and to image text in the locale of the font set.
.LP
The base_font_name_list argument is a list of base font names
that Xlib uses to load the fonts needed for the locale.
The base font names are a comma-separated list.
The string is null-terminated
and is assumed to be in the Host Portable Character Encoding;
otherwise, the result is implementation-dependent.
White space immediately on either side of a separating comma is ignored.
.LP
Use of XLFD font names permits Xlib to obtain the fonts needed for a
variety of locales from a single locale-independent base font name.
The single base font name should name a family of fonts whose members
are encoded in the various charsets needed by the locales of interest.
.LP
An XLFD base font name can explicitly name a charset needed for the locale.
This allows the user to specify an exact font for use with a charset required
by a locale, fully controlling the font selection.
.LP
If a base font name is not an XLFD name,
Xlib will attempt to obtain an XLFD name from the font properties
for the font.
If this action is successful in obtaining an XLFD name, the
.ZN XBaseFontNameListOfFontSet
function will return this XLFD name instead of the client-supplied name.
.LP
Xlib uses the following algorithm to select the fonts
that will be used to display text with the
.ZN XFontSet .
.LP
For each font charset required by the locale,
the base font name list is searched for the first appearance of one
of the following cases that names a set of fonts that exist at the server:
.IP \(bu 5
The first XLFD-conforming base font name that specifies the required
charset or a superset of the required charset in its
.ZN CharSetRegistry
and
.ZN CharSetEncoding
fields.
The implementation may use a base font name whose specified charset
is a superset of the required charset, for example,
an ISO8859-1 font for an ASCII charset.
.IP \(bu 5
The first set of one or more XLFD-conforming base font names
that specify one or more charsets that can be remapped to support the
required charset.
The Xlib implementation may recognize various mappings
from a required charset to one or more other charsets
and use the fonts for those charsets.
For example, JIS Roman is ASCII with tilde and backslash replaced
by yen and overbar;
Xlib may load an ISO8859-1 font to support this character set
if a JIS Roman font is not available.
.IP \(bu 5
The first XLFD-conforming font name or the first non-XLFD font name
for which an XLFD font name can be obtained, combined with the
required charset (replacing the
.ZN CharSetRegistry
and
.ZN CharSetEncoding
fields in the XLFD font name).
As in case 1,
the implementation may use a charset that is a superset
of the required charset.
.IP \(bu 5
The first font name that can be mapped in some implementation-dependent
manner to one or more fonts that support imaging text in the charset.
.LP
For example, assume that a locale required the charsets:
.LP
.Ds 0
ISO8859-1
JISX0208.1983
JISX0201.1976
GB2312-1980.0
.De
.LP
The user could supply a base_font_name_list that explicitly specifies the
charsets, ensuring that specific fonts are used if they exist.
For example:
.LP
.Ds 0
"-JIS-Fixed-Medium-R-Normal--26-180-100-100-C-240-JISX0208.1983-0,\\
-JIS-Fixed-Medium-R-Normal--26-180-100-100-C-120-JISX0201.1976-0,\\
-GB-Fixed-Medium-R-Normal--26-180-100-100-C-240-GB2312-1980.0,\\
-Adobe-Courier-Bold-R-Normal--25-180-75-75-M-150-ISO8859-1"
.De
.LP
Alternatively, the user could supply a base_font_name_list
that omits the charsets,
letting Xlib select font charsets required for the locale.
For example:
.LP
.Ds 0
"-JIS-Fixed-Medium-R-Normal--26-180-100-100-C-240,\\
-JIS-Fixed-Medium-R-Normal--26-180-100-100-C-120,\\
-GB-Fixed-Medium-R-Normal--26-180-100-100-C-240,\\
-Adobe-Courier-Bold-R-Normal--25-180-100-100-M-150"
.De
.LP
Alternatively, the user could simply supply a single base font name
that allows Xlib to select from all available fonts
that meet certain minimum XLFD property requirements.
For example:
.LP
.Ds 0
"-*-*-*-R-Normal--*-180-100-100-*-*"
.De
.LP
If
.ZN XCreateFontSet
is unable to create the font set,
either because there is insufficient memory or because the current locale
is not supported,
.ZN XCreateFontSet
returns NULL, missing_charset_list_return is set to NULL,
and missing_charset_count_return
is set to zero.
If fonts exist for all of the charsets required by the current locale,
.ZN XCreateFontSet
returns a valid
.ZN XFontSet ,
missing_charset_list_return is set to NULL,
and missing_charset_count_return is set to zero.
.LP
If no font exists for one or more of the required charsets,
.ZN XCreateFontSet
sets missing_charset_list_return to a
list of one or more null-terminated charset names for which no font exists
and sets missing_charset_count_return to the number of missing fonts.
The charsets are from the list of the required charsets for
the encoding of the locale and do not include any charsets to which Xlib
may be able to remap a required charset.
.LP
If no font exists for any of the required charsets
or if the locale definition in Xlib requires that a font exist
for a particular charset and a font is not found for that charset,
.ZN XCreateFontSet
returns NULL.
Otherwise,
.ZN XCreateFontSet
returns a valid
.ZN XFontSet
to font_set.
.LP
When an Xmb/wc drawing or measuring function is called with an
.ZN XFontSet
that has missing charsets, some characters in the locale will not be
drawable.
If def_string_return is non-NULL,
.ZN XCreateFontSet
returns a pointer to a string that represents the glyphs
that are drawn with this
.ZN XFontSet
when the charsets of the available fonts do not include all font glyphs
required to draw a codepoint.
The string does not necessarily consist of valid characters
in the current locale and is not necessarily drawn with
the fonts loaded for the font set,
but the client can draw and measure the default glyphs
by including this string in a string being drawn or measured with the
.ZN XFontSet .
.LP
If the string returned to def_string_return is the empty string ("\^"),
no glyphs are drawn, and the escapement is zero.
The returned string is null-terminated.
It is owned by Xlib and should not be modified or freed by the client.
It will be freed by a call to
.ZN XFreeFontSet
with the associated
.ZN XFontSet .
Until freed, its contents will not be modified by Xlib.
.LP
The client is responsible for constructing an error message from the
missing charset and default string information and may choose to continue
operation in the case that some fonts did not exist.
.LP
The returned
.ZN XFontSet
and missing charset list should be freed with
.ZN XFreeFontSet
and
.ZN XFreeStringList ,
respectively.
The client-supplied base_font_name_list may be freed
by the client after calling
.ZN XCreateFontSet .
.LP
The
.ZN XFreeFontSet
function frees the specified font set.
The associated base font name list, font name list,
.ZN XFontStruct
list, and
.ZN XFontSetExtents ,
if any, are freed.
.SH "SEE ALSO"
XExtentsofFontSet(3X11),
XFontsOfFontSet(3X11),
XFontSetExtents(3X11)
.br
\fI\*(xL\fP

1211
man/XCreateGC.man Normal file

File diff suppressed because it is too large Load diff

223
man/XCreateIC.man Normal file
View file

@ -0,0 +1,223 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XCreateIC 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XCreateIC, XDestroyIC, XIMOfIC \- create, destroy, and obtain the input method of an input context
.SH SYNTAX
XIC XCreateIC\^(\^\fIim\fP\^, ...)
.br
XIM \fIim\fP\^;
.LP
void XDestroyIC\^(\^\fIic\fP\^)
.br
XIC \fIic\fP\^;
.LP
XIM XIMOfIC\^(\^\fIic\fP\^)
.br
XIC \fIic\fP\^;
.SH ARGUMENTS
.IP \fIic\fP 1i
Specifies the input context.
.IP \fIim\fP 1i
Specifies the input method.
.ds Al \ to set XIC values
.IP ... 1i
Specifies the variable length argument list\*(Al.
.SH DESCRIPTION
The
.ZN XCreateIC
function creates a context within the specified input method.
.LP
Some of the arguments are mandatory at creation time, and
the input context will not be created if those arguments are not provided.
The mandatory arguments are the input style and the set of text callbacks
(if the input style selected requires callbacks).
All other input context values can be set later.
.LP
.ZN XCreateIC
returns a NULL value if no input context could be created.
A NULL value could be returned for any of the following reasons:
.IP \(bu 5
A required argument was not set.
.IP \(bu 5
A read-only argument was set (for example,
.ZN XNFilterEvents ).
.IP \(bu 5
The argument name is not recognized.
.IP \(bu 5
The input method encountered an input method implementation-dependent error.
.LP
The
.ZN XCreateIC
can generate
.ZN BadAtom ,
.ZN BadColor ,
.ZN BadPixmap ,
and
.ZN BadWindow
errors.
.LP
.ZN XDestroyIC
destroys the specified input context.
.LP
The
.ZN XIMOfIC
function returns the input method associated with the specified input context.
.SH DIAGNOSTICS
.TP 1i
.ZN BadAtom
A value for an Atom argument does not name a defined Atom.
.TP 1i
.ZN BadColor
A value for a Colormap argument does not name a defined Colormap.
.TP 1i
.ZN BadPixmap
A value for a Pixmap argument does not name a defined Pixmap.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XOpenIM(3X11),
XSetICFocus(3X11),
XSetICValues(3X11),
XmbResetIC(3X11)
.br
\fI\*(xL\fP

234
man/XCreateOC.man Normal file
View file

@ -0,0 +1,234 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XCreateOC 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XCreateOC, XDestroyOC, XSetOCValues, XGetOCValues, XOMOfOC \- create output contexts
.SH SYNTAX
XOC XCreateOC\^(\^\fIom\fP\^, ...)
.br
XOM \fIom\fP\^;
.LP
void XDestroyOC\^(\^\fIoc\fP\^)
.br
XOC \fIoc\fP\^;
.LP
char * XSetOCValues\^(\^\fIoc\fP\^, ...)
.br
XOC \fIoc\fP\^;
.LP
char * XGetOCValues\^(\^\fIoc\fP\^, ...)
.br
XOC \fIoc\fP\^;
.LP
XOM XOMOfOC\^(\^\fIoc\fP\^)
.br
XOC \fIoc\fP\^;
.SH ARGUMENTS
.IP \fIoc\fP 1i
Specifies the output context.
.IP \fIom\fP 1i
Specifies the output method.
.ds Al \ to set or get XOC values
.IP ... 1i
Specifies the variable length argument list\*(Al.
.SH DESCRIPTION
The
.ZN XCreateOC
function creates an output context within the specified output method.
.LP
The base font names argument is mandatory at creation time, and
the output context will not be created unless it is provided.
All other output context values can be set later.
.LP
.ZN XCreateOC
returns NULL if no output context could be created.
NULL can be returned for any of the following reasons:
.IP \(bu 5
A required argument was not set.
.IP \(bu 5
A read-only argument was set.
.IP \(bu 5
An argument name is not recognized.
.IP \(bu 5
The output method encountered an output method implementation-dependent error.
.LP
The
.ZN XDestroyOC
function destroys the specified output context.
.LP
The
.ZN XSetOCValues
function returns NULL if no error occurred;
otherwise,
it returns the name of the first argument that could not be set.
An argument might not be set for any of the following reasons:
.IP \(bu 5
The argument is read-only.
.IP \(bu 5
The argument name is not recognized.
.IP \(bu 5
An implementation-dependent error occurs.
.LP
Each value to be set must be an appropriate datum,
matching the data type imposed by the semantics of the argument.
.LP
The
.ZN XGetOCValues
function returns NULL if no error occurred; otherwise,
it returns the name of the first argument that could not be obtained.
An argument might not be obtained for any of the following reasons:
.IP \(bu 5
The argument name is not recognized.
.IP \(bu 5
An implementation-dependent error occurs.
.LP
Each argument value
following a name must point to a location where the value is to be stored.
.LP
The
.ZN XOMOfOC
function returns the output method associated with the
specified output context.
.SH "SEE ALSO"
XCreateOM(3X11),
XCreateFontSet(3X11)
.br
\fI\*(xL\fP

238
man/XCreatePixmap.man Normal file
View file

@ -0,0 +1,238 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XCreatePixmap 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XCreatePixmap, XFreePixmap \- create or destroy pixmaps
.SH SYNTAX
Pixmap XCreatePixmap\^(\^\fIdisplay\fP, \fId\fP\^, \fIwidth\fP\^, \fIheight\fP\^, \fIdepth\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
unsigned int \fIwidth\fP\^, \fIheight\fP\^;
.br
unsigned int \fIdepth\fP\^;
.LP
XFreePixmap\^(\^\fIdisplay\fP, \fIpixmap\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Pixmap \fIpixmap\fP\^;
.SH ARGUMENTS
.IP \fId\fP 1i
Specifies which screen the pixmap is created on.
.IP \fIdepth\fP 1i
Specifies the depth of the pixmap.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIpixmap\fP 1i
Specifies the pixmap.
.ds Wh , which define the dimensions of the pixmap
.IP \fIwidth\fP 1i
.br
.ns
.IP \fIheight\fP 1i
Specify the width and height\*(Wh.
.SH DESCRIPTION
The
.ZN XCreatePixmap
function creates a pixmap of the width, height, and depth you specified
and returns a pixmap ID that identifies it.
It is valid to pass an
.ZN InputOnly
window to the drawable argument.
The width and height arguments must be nonzero,
or a
.ZN BadValue
error results.
The depth argument must be one of the depths supported by the screen
of the specified drawable,
or a
.ZN BadValue
error results.
.LP
The server uses the specified drawable to determine on which screen
to create the pixmap.
The pixmap can be used only on this screen
and only with other drawables of the same depth (see
.ZN XCopyPlane
for an exception to this rule).
The initial contents of the pixmap are undefined.
.LP
.ZN XCreatePixmap
can generate
.ZN BadAlloc ,
.ZN BadDrawable ,
and
.ZN BadValue
errors.
.LP
The
.ZN XFreePixmap
function first deletes the association between the pixmap ID and the pixmap.
Then, the X server frees the pixmap storage when there are no references to it.
The pixmap should never be referenced again.
.LP
.ZN XFreePixmap
can generate a
.ZN BadPixmap
error.
.SH DIAGNOSTICS
.TP 1i
.ZN BadAlloc
The server failed to allocate the requested resource or server memory.
.TP 1i
.ZN BadDrawable
A value for a Drawable argument does not name a defined Window or Pixmap.
.TP 1i
.ZN BadPixmap
A value for a Pixmap argument does not name a defined Pixmap.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.SH "SEE ALSO"
XCopyArea(3X11)
.br
\fI\*(xL\fP

185
man/XCreateRegion.man Normal file
View file

@ -0,0 +1,185 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XCreateRegion 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XCreateRegion, XSetRegion, XDestroyRegion \- create or destroy regions
.SH SYNTAX
Region XCreateRegion\^()
.LP
XSetRegion\^(\^\fIdisplay\fP, \fIgc\fP\^, \fIr\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
GC \fIgc\fP\^;
.br
Region \fIr\fP\^;
.LP
XDestroyRegion\^(\^\fIr\fP\^)
.br
Region \fIr\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIgc\fP 1i
Specifies the GC.
.IP \fIr\fP 1i
Specifies the region.
.SH DESCRIPTION
The
.ZN XCreateRegion
function creates a new empty region.
.LP
The
.ZN XSetRegion
function sets the clip-mask in the GC to the specified region.
The region is specified relative to the drawable's origin.
The resulting GC clip origin is implementation-dependent.
Once it is set in the GC,
the region can be destroyed.
.LP
The
.ZN XDestroyRegion
function deallocates the storage associated with a specified region.
.SH "SEE ALSO"
XEmptyRegion(3X11),
XIntersectRegion(3X11)
.br
\fI\*(xL\fP

532
man/XCreateWindow.man Normal file
View file

@ -0,0 +1,532 @@
'\" t
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
'\" t
.TH XCreateWindow 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XCreateWindow, XCreateSimpleWindow, XSetWindowAttributes \- create windows and window attributes structure
.SH SYNTAX
Window XCreateWindow\^(\^\fIdisplay\fP, \fIparent\fP\^, \fIx\fP\^, \fIy\fP\^, \fIwidth\fP\^, \fIheight\fP\^, \fIborder_width\fP\^, \fIdepth\fP\^,
.br
\fIclass\fP\^, \fIvisual\fP\^, \fIvaluemask\fP\^, \fIattributes\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIparent\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.br
unsigned int \fIwidth\fP\^, \fIheight\fP\^;
.br
unsigned int \fIborder_width\fP\^;
.br
int \fIdepth\fP\^;
.br
unsigned int \fIclass\fP\^;
.br
Visual *\fIvisual\fP\^
.br
unsigned long \fIvaluemask\fP\^;
.br
XSetWindowAttributes *\fIattributes\fP\^;
.LP
Window XCreateSimpleWindow\^(\^\fIdisplay\fP, \fIparent\fP\^, \fIx\fP\^, \fIy\fP\^, \fIwidth\fP\^, \fIheight\fP\^, \fIborder_width\fP\^,
.br
\fIborder\fP\^, \fIbackground\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIparent\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.br
unsigned int \fIwidth\fP\^, \fIheight\fP\^;
.br
unsigned int \fIborder_width\fP\^;
.br
unsigned long \fIborder\fP\^;
.br
unsigned long \fIbackground\fP\^;
.SH ARGUMENTS
.IP \fIattributes\fP 1i
Specifies the structure from which the values (as specified by the value mask)
are to be taken.
The value mask should have the appropriate bits
set to indicate which attributes have been set in the structure.
.IP \fIbackground\fP 1i
Specifies the background pixel value of the window.
.IP \fIborder\fP 1i
Specifies the border pixel value of the window.
.IP \fIborder_width\fP 1i
Specifies the width of the created window's border in pixels.
.IP \fIclass\fP 1i
Specifies the created window's class.
You can pass
.ZN InputOutput ,
.ZN InputOnly ,
or
.ZN CopyFromParent .
A class of
.ZN CopyFromParent
means the class
is taken from the parent.
.IP \fIdepth\fP 1i
Specifies the window's depth.
A depth of
.ZN CopyFromParent
means the depth is taken from the parent.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIparent\fP 1i
Specifies the parent window.
.IP \fIvaluemask\fP 1i
Specifies which window attributes are defined in the attributes
argument.
This mask is the bitwise inclusive OR of the valid attribute mask bits.
If valuemask is zero,
the attributes are ignored and are not referenced.
.IP \fIvisual\fP 1i
Specifies the visual type.
A visual of
.ZN CopyFromParent
means the visual type is taken from the
parent.
.ds Wh , which are the created window's inside dimensions \
and do not include the created window's borders
.IP \fIwidth\fP 1i
.br
.ns
.IP \fIheight\fP 1i
Specify the width and height\*(Wh.
.ds Xy , which are the top-left outside corner of the window's \
borders and are relative to the inside of the parent window's borders
.IP \fIx\fP 1i
.br
.ns
.IP \fIy\fP 1i
Specify the x and y coordinates\*(Xy.
.SH DESCRIPTION
The
.ZN XCreateWindow
function creates an unmapped subwindow for a specified parent window,
returns the window ID of the created window,
and causes the X server to generate a
.ZN CreateNotify
event.
The created window is placed on top in the stacking order
with respect to siblings.
.LP
The coordinate system has the X axis horizontal and the Y axis vertical
with the origin [0, 0] at the upper-left corner.
Coordinates are integral,
in terms of pixels,
and coincide with pixel centers.
Each window and pixmap has its own coordinate system.
For a window,
the origin is inside the border at the inside, upper-left corner.
.LP
The border_width for an
.ZN InputOnly
window must be zero, or a
.ZN BadMatch
error results.
For class
.ZN InputOutput ,
the visual type and depth must be a combination supported for the screen,
or a
.ZN BadMatch
error results.
The depth need not be the same as the parent,
but the parent must not be a window of class
.ZN InputOnly ,
or a
.ZN BadMatch
error results.
For an
.ZN InputOnly
window,
the depth must be zero, and the visual must be one supported by the screen.
If either condition is not met,
a
.ZN BadMatch
error results.
The parent window, however, may have any depth and class.
If you specify any invalid window attribute for a window, a
.ZN BadMatch
error results.
.LP
The created window is not yet displayed (mapped) on the user's display.
To display the window, call
.ZN XMapWindow .
The new window initially uses the same cursor as
its parent.
A new cursor can be defined for the new window by calling
.ZN XDefineCursor .
.IN "Cursor" "Initial State"
.IN "XDefineCursor"
The window will not be visible on the screen unless it and all of its
ancestors are mapped and it is not obscured by any of its ancestors.
.LP
.ZN XCreateWindow
can generate
.ZN BadAlloc
.ZN BadColor ,
.ZN BadCursor ,
.ZN BadMatch ,
.ZN BadPixmap ,
.ZN BadValue ,
and
.ZN BadWindow
errors.
.LP
The
.ZN XCreateSimpleWindow
function creates an unmapped
.ZN InputOutput
subwindow for a specified parent window, returns the
window ID of the created window, and causes the X server to generate a
.ZN CreateNotify
event.
The created window is placed on top in the stacking order with respect to
siblings.
Any part of the window that extends outside its parent window is clipped.
The border_width for an
.ZN InputOnly
window must be zero, or a
.ZN BadMatch
error results.
.ZN XCreateSimpleWindow
inherits its depth, class, and visual from its parent.
All other window attributes, except background and border,
have their default values.
.LP
.ZN XCreateSimpleWindow
can generate
.ZN BadAlloc ,
.ZN BadMatch ,
.ZN BadValue ,
and
.ZN BadWindow
errors.
.SH STRUCTURES
The
.ZN XSetWindow Attributes
structure contains:
.LP
.LP
/* Window attribute value mask bits */
.TS
lw(.5i) lw(2.5i) lw(.8i).
T{
#define
T} T{
.ZN CWBackPixmap
T} T{
(1L<<0)
T}
T{
#define
T} T{
.ZN CWBackPixel
T} T{
(1L<<1)
T}
T{
#define
T} T{
.ZN CWBorderPixmap
T} T{
(1L<<2)
T}
T{
#define
T} T{
.ZN CWBorderPixel
T} T{
(1L<<3)
T}
T{
#define
T} T{
.ZN CWBitGravity
T} T{
(1L<<4)
T}
T{
#define
T} T{
.ZN CWWinGravity
T} T{
(1L<<5)
T}
T{
#define
T} T{
.ZN CWBackingStore
T} T{
(1L<<6)
T}
T{
#define
T} T{
.ZN CWBackingPlanes
T} T{
(1L<<7)
T}
T{
#define
T} T{
.ZN CWBackingPixel
T} T{
(1L<<8)
T}
T{
#define
T} T{
.ZN CWOverrideRedirect
T} T{
(1L<<9)
T}
T{
#define
T} T{
.ZN CWSaveUnder
T} T{
(1L<<10)
T}
T{
#define
T} T{
.ZN CWEventMask
T} T{
(1L<<11)
T}
T{
#define
T} T{
.ZN CWDontPropagate
T} T{
(1L<<12)
T}
T{
#define
T} T{
.ZN CWColormap
T} T{
(1L<<13)
T}
T{
#define
T} T{
.ZN CWCursor
T} T{
(1L<<14)
T}
.TE
.IN "XSetWindowAttributes" "" "@DEF@"
.Ds 0
.TA .5i 3i
.ta .5i 3i
/* Values */
typedef struct {
Pixmap background_pixmap; /* background, None, or ParentRelative */
unsigned long background_pixel; /* background pixel */
Pixmap border_pixmap; /* border of the window or CopyFromParent */
unsigned long border_pixel; /* border pixel value */
int bit_gravity; /* one of bit gravity values */
int win_gravity; /* one of the window gravity values */
int backing_store; /* NotUseful, WhenMapped, Always */
unsigned long backing_planes; /* planes to be preserved if possible */
unsigned long backing_pixel; /* value to use in restoring planes */
Bool save_under; /* should bits under be saved? (popups) */
long event_mask; /* set of events that should be saved */
long do_not_propagate_mask; /* set of events that should not propagate */
Bool override_redirect; /* boolean value for override_redirect */
Colormap colormap; /* color map to be associated with window */
Cursor cursor; /* cursor to be displayed (or None) */
} XSetWindowAttributes;
.De
.LP
For a detailed explanation of the members of this structure,
see \fI\*(xL\fP\^.
.SH DIAGNOSTICS
.TP 1i
.ZN BadAlloc
The server failed to allocate the requested resource or server memory.
.TP 1i
.ZN BadColor
A value for a Colormap argument does not name a defined Colormap.
.TP 1i
.ZN BadCursor
A value for a Cursor argument does not name a defined Cursor.
.TP 1i
.ZN BadMatch
The values do not exist for an
.ZN InputOnly
window.
.TP 1i
.ZN BadMatch
Some argument or pair of arguments has the correct type and range but fails
to match in some other way required by the request.
.TP 1i
.ZN BadPixmap
A value for a Pixmap argument does not name a defined Pixmap.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XChangeWindowAttributes(3X11),
XConfigureWindow(3X11),
XDefineCursor(3X11),
XDestroyWindow(3X11),
XMapWindow(3X11),
XRaiseWindow(3X11),
XUnmapWindow(3X11)
.br
\fI\*(xL\fP

228
man/XCreateWindowEvent.man Normal file
View file

@ -0,0 +1,228 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XCreateWindowEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XCreateWindowEvent \- CreateNotify event structure
.SH STRUCTURES
The structure for
.ZN CreateNotify
events contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* CreateNotify */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window parent; /* parent of the window */
Window window; /* window id of window created */
int x, y; /* window location */
int width, height; /* size of window */
int border_width; /* border width */
Bool override_redirect; /* creation should be overridden */
} XCreateWindowEvent;
.De
.LP
When you receive this event,
the structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
The parent member is set to the created window's parent.
The window member specifies the created window.
The x and y members are set to the created window's coordinates relative
to the parent window's origin and indicate the position of the upper-left
outside corner of the created window.
The width and height members are set to the inside size of the created window
(not including the border) and are always nonzero.
The border_width member is set to the width of the created window's border, in pixels.
The override_redirect member is set to the override-redirect attribute of the
window.
Window manager clients normally should ignore this window
if the override_redirect member is
.ZN True .
.SH "SEE ALSO"
XAnyEvent(3X11),
XButtonEvent(3X11),
XCirculateEvent(3X11),
XCirculateRequestEvent(3X11),
XColormapEvent(3X11),
XConfigureEvent(3X11),
XConfigureRequestEvent(3X11),
XCrossingEvent(3X11),
XDestroyWindowEvent(3X11),
XErrorEvent(3X11),
XExposeEvent(3X11),
XFocusChangeEvent(3X11),
XGraphicsExposeEvent(3X11),
XGravityEvent(3X11),
XKeymapEvent(3X11),
XMapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

325
man/XCrossingEvent.man Normal file
View file

@ -0,0 +1,325 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XCrossingEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XCrossingEvent \- EnterNotify and LeaveNotify event structure
.SH STRUCTURES
The structure for
.ZN EnterNotify
and
.ZN LeaveNotify
events contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* EnterNotify or LeaveNotify */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window; /* ``event'' window reported relative to */
Window root; /* root window that the event occurred on */
Window subwindow; /* child window */
Time time; /* milliseconds */
int x, y; /* pointer x, y coordinates in event window */
int x_root, y_root; /* coordinates relative to root */
int mode; /* NotifyNormal, NotifyGrab, NotifyUngrab */
int detail;
/*
* NotifyAncestor, NotifyVirtual, NotifyInferior,
* NotifyNonlinear,NotifyNonlinearVirtual
*/
Bool same_screen; /* same screen flag */
Bool focus; /* boolean focus */
unsigned int state; /* key or button mask */
} XCrossingEvent;
typedef XCrossingEvent XEnterWindowEvent;
typedef XCrossingEvent XLeaveWindowEvent;
.De
.LP
When you receive these events,
the structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
The window member is set to the window on which the
.ZN EnterNotify
or
.ZN LeaveNotify
event was generated and is referred to as the event window.
This is the window used by the X server to report the event,
and is relative to the root
window on which the event occurred.
The root member is set to the root window of the screen
on which the event occurred.
.LP
For a
.ZN LeaveNotify
event,
if a child of the event window contains the initial position of the pointer,
the subwindow component is set to that child.
Otherwise, the X server sets the subwindow member to
.ZN None .
For an
.ZN EnterNotify
event, if a child of the event window contains the final pointer position,
the subwindow component is set to that child or
.ZN None .
.LP
The time member is set to the time when the event was generated
and is expressed in milliseconds.
The x and y members are set to the coordinates of the pointer position in
the event window.
This position is always the pointer's final position,
not its initial position.
If the event window is on the same
screen as the root window, x and y are the pointer coordinates
relative to the event window's origin.
Otherwise, x and y are set to zero.
The x_root and y_root members are set to the pointer's coordinates relative to the
root window's origin at the time of the event.
.LP
The same_screen member is set to indicate whether the event window is on the same screen
as the root window and can be either
.ZN True
or
.ZN False .
If
.ZN True ,
the event and root windows are on the same screen.
If
.ZN False ,
the event and root windows are not on the same screen.
.LP
The focus member is set to indicate whether the event window is the focus window or an
inferior of the focus window.
The X server can set this member to either
.ZN True
or
.ZN False .
If
.ZN True ,
the event window is the focus window or an inferior of the focus window.
If
.ZN False ,
the event window is not the focus window or an inferior of the focus window.
.LP
The state member is set to indicate the state of the pointer buttons and
modifier keys just prior to the
event.
The X server can set this member to the bitwise inclusive OR of one
or more of the button or modifier key masks:
.ZN Button1Mask ,
.ZN Button2Mask ,
.ZN Button3Mask ,
.ZN Button4Mask ,
.ZN Button5Mask ,
.ZN ShiftMask ,
.ZN LockMask ,
.ZN ControlMask ,
.ZN Mod1Mask ,
.ZN Mod2Mask ,
.ZN Mod3Mask ,
.ZN Mod4Mask ,
.ZN Mod5Mask .
.LP
The mode member is set to indicate whether the events are normal events,
pseudo-motion events
when a grab activates, or pseudo-motion events when a grab deactivates.
The X server can set this member to
.ZN NotifyNormal ,
.ZN NotifyGrab ,
or
.ZN NotifyUngrab .
.LP
The detail member is set to indicate the notify detail and can be
.ZN NotifyAncestor ,
.ZN NotifyVirtual ,
.ZN NotifyInferior ,
.ZN NotifyNonlinear ,
or
.ZN NotifyNonlinearVirtual .
.SH "SEE ALSO"
XAnyEvent(3X11),
XButtonEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateEvent(3X11),
XCirculateRequestEvent(3X11),
XColormapEvent(3X11),
XConfigureEvent(3X11),
XConfigureRequestEvent(3X11),
XDestroyWindowEvent(3X11),
XErrorEvent(3X11),
XExposeEvent(3X11),
XFocusChangeEvent(3X11),
XGraphicsExposeEvent(3X11),
XGravityEvent(3X11),
XKeymapEvent(3X11),
XMapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

208
man/XDefineCursor.man Normal file
View file

@ -0,0 +1,208 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XDefineCursor 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XDefineCursor, XUndefineCursor \- define cursors
.SH SYNTAX
XDefineCursor\^(\^\fIdisplay\fP, \fIw\fP\^, \fIcursor\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
Cursor \fIcursor\fP\^;
.LP
XUndefineCursor\^(\^\fIdisplay\fP, \fIw\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.SH ARGUMENTS
.IP \fIcursor\fP 1i
Specifies the cursor that is to be displayed or
.ZN None .
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIw\fP 1i
Specifies the window.
.SH DESCRIPTION
If a cursor is set, it will be used when the pointer is in the window.
If the cursor is
.ZN None ,
it is equivalent to
.ZN XUndefineCursor .
.LP
.ZN XDefineCursor
can generate
.ZN BadCursor
and
.ZN BadWindow
errors.
.LP
The
.ZN XUndefineCursor
function undoes the effect of a previous
.ZN XDefineCursor
for this window.
When the pointer is in the window,
the parent's cursor will now be used.
On the root window,
the default cursor is restored.
.LP
.ZN XUndefineCursor
can generate a
.ZN BadWindow
error.
.SH DIAGNOSTICS
.TP 1i
.ZN BadAlloc
The server failed to allocate the requested resource or server memory.
.TP 1i
.ZN BadCursor
A value for a Cursor argument does not name a defined Cursor.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XCreateFontCursor(3X11),
XRecolorCursor(3X11)
.br
\fI\*(xL\fP

223
man/XDestroyWindow.man Normal file
View file

@ -0,0 +1,223 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XDestroyWindow 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XDestroyWindow, XDestroySubwindows \- destroy windows
.SH SYNTAX
XDestroyWindow\^(\^\fIdisplay\fP, \fIw\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.LP
XDestroySubwindows\^(\^\fIdisplay\fP, \fIw\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIw\fP 1i
Specifies the window.
.SH DESCRIPTION
The
.ZN XDestroyWindow
function destroys the specified window as well as all of its subwindows and causes
the X server to generate a
.ZN DestroyNotify
event for each window.
The window should never be referenced again.
If the window specified by the w argument is mapped,
it is unmapped automatically.
The ordering of the
.ZN DestroyNotify
events is such that for any given window being destroyed,
.ZN DestroyNotify
is generated on any inferiors of the window before being generated on
the window itself.
The ordering among siblings and across subhierarchies is not otherwise
constrained.
If the window you specified is a root window, no windows are destroyed.
Destroying a mapped window will generate
.ZN Expose
events on other windows that were obscured by the window being destroyed.
.LP
.ZN XDestroyWindow
can generate a
.ZN BadWindow
error.
.LP
The
.ZN XDestroySubwindows
function destroys all inferior windows of the specified window,
in bottom-to-top stacking order.
It causes the X server to generate a
.ZN DestroyNotify
event for each window.
If any mapped
subwindows were actually destroyed,
.ZN XDestroySubwindows
causes the X server to generate
.ZN Expose
events on the specified window.
This is much more efficient than deleting many windows
one at a time because much of the work need be performed only once for all
of the windows, rather than for each window.
The subwindows should never be referenced again.
.LP
.ZN XDestroySubwindows
can generate a
.ZN BadWindow
error.
.SH DIAGNOSTICS
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XChangeWindowAttributes(3X11),
XConfigureWindow(3X11),
XCreateWindow(3X11),
XMapWindow(3X11),
XRaiseWindow(3X11),
XUnmapWindow(3X11)
.br
\fI\*(xL\fP

218
man/XDestroyWindowEvent.man Normal file
View file

@ -0,0 +1,218 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XDestroyWindowEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XDestroyWindowEvent \- DestroyNotify event structure
.SH STRUCTURES
The structure for
.ZN DestroyNotify
events contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* DestroyNotify */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window event;
Window window;
} XDestroyWindowEvent;
.De
.LP
When you receive this event,
the structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
The event member is set either to the destroyed window or to its parent,
depending on whether
.ZN StructureNotify
or
.ZN SubstructureNotify
was selected.
The window member is set to the window that is destroyed.
.SH "SEE ALSO"
XAnyEvent(3X11),
XButtonEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateEvent(3X11),
XCirculateRequestEvent(3X11),
XColormapEvent(3X11),
XConfigureEvent(3X11),
XConfigureRequestEvent(3X11),
XCrossingEvent(3X11),
XErrorEvent(3X11),
XExposeEvent(3X11),
XFocusChangeEvent(3X11),
XGraphicsExposeEvent(3X11),
XGravityEvent(3X11),
XKeymapEvent(3X11),
XMapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

349
man/XDrawArc.man Normal file
View file

@ -0,0 +1,349 @@
'\" e
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
'\" e
.TH XDrawArc 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XDrawArc, XDrawArcs, XArc \- draw arcs and arc structure
.SH SYNTAX
XDrawArc\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^, \fIwidth\fP\^, \fIheight\fP\^, \fIangle1\fP\^, \fIangle2\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.br
unsigned int \fIwidth\fP\^, \fIheight\fP\^;
.br
int \fIangle1\fP\^, \fIangle2\fP\^;
.LP
XDrawArcs\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIarcs\fP\^, \fInarcs\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
XArc *\fIarcs\fP\^;
.br
int \fInarcs\fP\^;
.SH ARGUMENTS
.IP \fIangle1\fP 1i
Specifies the start of the arc relative to the three-o'clock position
from the center, in units of degrees * 64.
.IP \fIangle2\fP 1i
Specifies the path and extent of the arc relative to the start of the
arc, in units of degrees * 64.
.IP \fIarcs\fP 1i
Specifies an array of arcs.
.IP \fId\fP 1i
Specifies the drawable.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIgc\fP 1i
Specifies the GC.
.IP \fInarcs\fP 1i
Specifies the number of arcs in the array.
.ds Wh , which are the major and minor axes of the arc
.IP \fIwidth\fP 1i
.br
.ns
.IP \fIheight\fP 1i
Specify the width and height\*(Wh.
.ds Xy , which are relative to the origin of the drawable \
and specify the upper-left corner of the bounding rectangle
.IP \fIx\fP 1i
.br
.ns
.IP \fIy\fP 1i
Specify the x and y coordinates\*(Xy.
.SH DESCRIPTION
.EQ
delim %%
.EN
.ZN XDrawArc
draws a single circular or elliptical arc, and
.ZN XDrawArcs
draws multiple circular or elliptical arcs.
Each arc is specified by a rectangle and two angles.
The center of the circle or ellipse is the center of the
rectangle, and the major and minor axes are specified by the width and height.
Positive angles indicate counterclockwise motion,
and negative angles indicate clockwise motion.
If the magnitude of angle2 is greater than 360 degrees,
.ZN XDrawArc
or
.ZN XDrawArcs
truncates it to 360 degrees.
.LP
For an arc specified as %[ ~x, ~y, ~width , ~height, ~angle1, ~angle2 ]%,
the origin of the major and minor axes is at
% [ x +^ {width over 2} , ~y +^ {height over 2} ]%,
and the infinitely thin path describing the entire circle or ellipse
intersects the horizontal axis at % [ x, ~y +^ {height over 2} ]% and
% [ x +^ width , ~y +^ { height over 2 }] %
and intersects the vertical axis at % [ x +^ { width over 2 } , ~y ]% and
% [ x +^ { width over 2 }, ~y +^ height ]%.
These coordinates can be fractional
and so are not truncated to discrete coordinates.
The path should be defined by the ideal mathematical path.
For a wide line with line-width lw,
the bounding outlines for filling are given
by the two infinitely thin paths consisting of all points whose perpendicular
distance from the path of the circle/ellipse is equal to lw/2
(which may be a fractional value).
The cap-style and join-style are applied the same as for a line
corresponding to the tangent of the circle/ellipse at the endpoint.
.LP
For an arc specified as % [ ~x, ~y, ~width, ~height, ~angle1, ~angle2 ]%,
the angles must be specified
in the effectively skewed coordinate system of the ellipse (for a
circle, the angles and coordinate systems are identical). The
relationship between these angles and angles expressed in the normal
coordinate system of the screen (as measured with a protractor) is as
follows:
.LP
.Ds
% roman "skewed-angle" ~ = ~ atan left ( tan ( roman "normal-angle" )
* width over height right ) +^ adjust%
.De
.LP
The skewed-angle and normal-angle are expressed in radians (rather
than in degrees scaled by 64) in the range % [ 0 , ~2 pi ]% and where atan
returns a value in the range % [ - pi over 2 , ~pi over 2 ] %
and adjust is:
.LP
.Ds
.TA 1i 2i
.ta 1i 2i
%0% for normal-angle in the range % [ 0 , ~pi over 2 ]%
%pi% for normal-angle in the range % [ pi over 2 , ~{3 pi} over 2 ]%
%2 pi% for normal-angle in the range % [ {3 pi} over 2 , ~2 pi ]%
.De
.LP
For any given arc,
.ZN XDrawArc
and
.ZN XDrawArcs
do not draw a pixel more than once.
If two arcs join correctly and if the line-width is greater than zero
and the arcs intersect,
.ZN XDrawArc
and
.ZN XDrawArcs
do not draw a pixel more than once.
Otherwise,
the intersecting pixels of intersecting arcs are drawn multiple times.
Specifying an arc with one endpoint and a clockwise extent draws the same pixels
as specifying the other endpoint and an equivalent counterclockwise extent,
except as it affects joins.
.LP
If the last point in one arc coincides with the first point in the following
arc, the two arcs will join correctly.
If the first point in the first arc coincides with the last point in the last
arc, the two arcs will join correctly.
By specifying one axis to be zero, a horizontal or vertical line can be
drawn.
Angles are computed based solely on the coordinate system and ignore the
aspect ratio.
.LP
Both functions use these GC components:
function, plane-mask, line-width, line-style, cap-style, join-style,
fill-style, subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask.
They also use these GC mode-dependent components:
foreground, background, tile, stipple, tile-stipple-x-origin,
tile-stipple-y-origin, dash-offset, and dash-list.
.LP
.ZN XDrawArc
and
.ZN XDrawArcs
can generate
.ZN BadDrawable ,
.ZN BadGC ,
and
.ZN BadMatch
errors.
.SH STRUCTURES
The
.ZN XArc
structure contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
short x, y;
unsigned short width, height;
short angle1, angle2; /* Degrees * 64 */
} XArc;
.De
.LP
All x and y members are signed integers.
The width and height members are 16-bit unsigned integers.
You should be careful not to generate coordinates and sizes
out of the 16-bit ranges, because the protocol only has 16-bit fields
for these values.
.SH DIAGNOSTICS
.TP 1i
.ZN BadDrawable
A value for a Drawable argument does not name a defined Window or Pixmap.
.TP 1i
.ZN BadGC
A value for a GContext argument does not name a defined GContext.
.TP 1i
.ZN BadMatch
An
.ZN InputOnly
window is used as a Drawable.
.TP 1i
.ZN BadMatch
Some argument or pair of arguments has the correct type and range but fails
to match in some other way required by the request.
.SH "SEE ALSO"
XDrawLine(3X11),
XDrawPoint(3X11),
XDrawRectangle(3X11)
.br
\fI\*(xL\fP

270
man/XDrawImageString.man Normal file
View file

@ -0,0 +1,270 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XDrawImageString 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XDrawImageString, XDrawImageString16 \- draw image text
.SH SYNTAX
XDrawImageString\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^, \fIstring\fP\^, \fIlength\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.br
char *\fIstring\fP\^;
.br
int \fIlength\fP\^;
.LP
XDrawImageString16\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^, \fIstring\fP\^, \fIlength\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.br
XChar2b *\fIstring\fP\^;
.br
int \fIlength\fP\^;
.SH ARGUMENTS
.IP \fId\fP 1i
Specifies the drawable.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIgc\fP 1i
Specifies the GC.
.IP \fIlength\fP 1i
Specifies the number of characters in the string argument.
.IP \fIstring\fP 1i
Specifies the character string.
.ds Xy , which are relative to the origin of the specified drawable \
and define the origin of the first character
.IP \fIx\fP 1i
.br
.ns
.IP \fIy\fP 1i
Specify the x and y coordinates\*(Xy.
.SH DESCRIPTION
The
.ZN XDrawImageString16
function is similar to
.ZN XDrawImageString
except that it uses 2-byte or 16-bit characters.
Both functions also use both the foreground and background pixels
of the GC in the destination.
.LP
The effect is first to fill a
destination rectangle with the background pixel defined in the GC and then
to paint the text with the foreground pixel.
The upper-left corner of the filled rectangle is at:
.LP
.Ds
[x, y \- font-ascent]
.De
.LP
The width is:
.LP
.Ds
overall-width
.De
.LP
The height is:
.LP
.Ds
font-ascent + font-descent
.De
.LP
The overall-width, font-ascent, and font-descent
are as would be returned by
.ZN XQueryTextExtents
using gc and string.
The function and fill-style defined in the GC are ignored for these functions.
The effective function is
.ZN GXcopy ,
and the effective fill-style is
.ZN FillSolid .
.LP
For fonts defined with 2-byte matrix indexing
and used with
.ZN XDrawImageString ,
each byte is used as a byte2 with a byte1 of zero.
.LP
Both functions use these GC components:
plane-mask, foreground, background, font, subwindow-mode, clip-x-origin,
clip-y-origin, and clip-mask.
.LP
.ZN XDrawImageString
and
.ZN XDrawImageString16
can generate
.ZN BadDrawable ,
.ZN BadGC ,
and
.ZN BadMatch
errors.
.SH DIAGNOSTICS
.TP 1i
.ZN BadDrawable
A value for a Drawable argument does not name a defined Window or Pixmap.
.TP 1i
.ZN BadGC
A value for a GContext argument does not name a defined GContext.
.TP 1i
.ZN BadMatch
An
.ZN InputOnly
window is used as a Drawable.
.TP 1i
.ZN BadMatch
Some argument or pair of arguments has the correct type and range but fails
to match in some other way required by the request.
.SH "SEE ALSO"
XDrawString(3X11),
XDrawText(3X11),
XLoadFont(3X11),
XTextExtents(3X11)
.br
\fI\*(xL\fP

333
man/XDrawLine.man Normal file
View file

@ -0,0 +1,333 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XDrawLine 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XDrawLine, XDrawLines, XDrawSegments, XSegment \- draw lines, polygons, and line structure
.SH SYNTAX
XDrawLine\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIx1\fP\^, \fIy1\fP\^, \fIx2\fP\^, \fIy2\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
int \fIx1\fP\^, \fIy1\fP\^, \fIx2\fP\^, \fIy2\fP\^;
.LP
XDrawLines\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIpoints\fP\^, \fInpoints\fP\^, \fImode\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
XPoint *\fIpoints\fP\^;
.br
int \fInpoints\fP\^;
.br
int \fImode\fP\^;
.LP
XDrawSegments\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIsegments\fP\^, \fInsegments\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
XSegment *\fIsegments\fP\^;
.br
int \fInsegments\fP\^;
.SH ARGUMENTS
.IP \fId\fP 1i
Specifies the drawable.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIgc\fP 1i
Specifies the GC.
.IP \fImode\fP 1i
Specifies the coordinate mode.
You can pass
.ZN CoordModeOrigin
or
.ZN CoordModePrevious .
.IP \fInpoints\fP 1i
Specifies the number of points in the array.
.IP \fInsegments\fP 1i
Specifies the number of segments in the array.
.IP \fIpoints\fP 1i
Specifies an array of points.
.IP \fIsegments\fP 1i
Specifies an array of segments.
.IP \fIx1\fP 1i
.br
.ns
.IP \fIy1\fP 1i
.br
.ns
.IP \fIx2\fP 1i
.br
.ns
.IP \fIy2\fP 1i
Specify the points (x1, y1) and (x2, y2) to be connected.
.SH DESCRIPTION
The
.ZN XDrawLine
function uses the components of the specified GC to
draw a line between the specified set of points (x1, y1) and (x2, y2).
It does not perform joining at coincident endpoints.
For any given line,
.ZN XDrawLine
does not draw a pixel more than once.
If lines intersect, the intersecting pixels are drawn multiple times.
.LP
The
.ZN XDrawLines
function uses the components of the specified GC to draw
npoints\-1 lines between each pair of points (point[i], point[i+1])
in the array of
.ZN XPoint
structures.
It draws the lines in the order listed in the array.
The lines join correctly at all intermediate points, and if the first and last
points coincide, the first and last lines also join correctly.
For any given line,
.ZN XDrawLines
does not draw a pixel more than once.
If thin (zero line-width) lines intersect,
the intersecting pixels are drawn multiple times.
If wide lines intersect, the intersecting pixels are drawn only once, as though
the entire
.ZN PolyLine
protocol request were a single, filled shape.
.ZN CoordModeOrigin
treats all coordinates as relative to the origin,
and
.ZN CoordModePrevious
treats all coordinates after the first as relative to the previous point.
.LP
The
.ZN XDrawSegments
function draws multiple, unconnected lines.
For each segment,
.ZN XDrawSegments
draws a
line between (x1, y1) and (x2, y2).
It draws the lines in the order listed in the array of
.ZN XSegment
structures and does not perform joining at coincident endpoints.
For any given line,
.ZN XDrawSegments
does not draw a pixel more than once.
If lines intersect, the intersecting pixels are drawn multiple times.
.LP
All three functions use these GC components:
function, plane-mask, line-width,
line-style, cap-style, fill-style, subwindow-mode,
clip-x-origin, clip-y-origin, and clip-mask.
The
.ZN XDrawLines
function also uses the join-style GC component.
All three functions also use these GC mode-dependent components:
foreground, background, tile, stipple, tile-stipple-x-origin,
tile-stipple-y-origin, dash-offset, and dash-list.
.LP
.ZN XDrawLine ,
.ZN XDrawLines ,
and
.ZN XDrawSegments
can generate
.ZN BadDrawable ,
.ZN BadGC ,
and
.ZN BadMatch
errors.
.ZN XDrawLines
can also generate a
.ZN BadValue
error.
.SH STRUCTURES
The
.ZN XSegment
structure contains:
.LP
.Ds 0
.TA .5i
.ta .5i
typedef struct {
short x1, y1, x2, y2;
} XSegment;
.De
.LP
All x and y members are signed integers.
The width and height members are 16-bit unsigned integers.
You should be careful not to generate coordinates and sizes
out of the 16-bit ranges, because the protocol only has 16-bit fields
for these values.
.SH DIAGNOSTICS
.TP 1i
.ZN BadDrawable
A value for a Drawable argument does not name a defined Window or Pixmap.
.TP 1i
.ZN BadGC
A value for a GContext argument does not name a defined GContext.
.TP 1i
.ZN BadMatch
An
.ZN InputOnly
window is used as a Drawable.
.TP 1i
.ZN BadMatch
Some argument or pair of arguments has the correct type and range but fails
to match in some other way required by the request.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.SH "SEE ALSO"
XDrawArc(3X11),
XDrawPoint(3X11),
XDrawRectangle(3X11)
.br
\fI\*(xL\fP

268
man/XDrawPoint.man Normal file
View file

@ -0,0 +1,268 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XDrawPoint 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XDrawPoint, XDrawPoints, XPoint \- draw points and points structure
.SH SYNTAX
XDrawPoint\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.LP
XDrawPoints\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIpoints\fP\^, \fInpoints\fP\^, \fImode\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
XPoint *\fIpoints\fP\^;
.br
int \fInpoints\fP\^;
.br
int \fImode\fP\^;
.SH ARGUMENTS
.IP \fId\fP 1i
Specifies the drawable.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIgc\fP 1i
Specifies the GC.
.IP \fImode\fP 1i
Specifies the coordinate mode.
You can pass
.ZN CoordModeOrigin
or
.ZN CoordModePrevious .
.IP \fInpoints\fP 1i
Specifies the number of points in the array.
.IP \fIpoints\fP 1i
Specifies an array of points.
.IP \fIx\fP 1i
.br
.ns
.IP \fIy\fP 1i
Specify the x and y coordinates where you want the point drawn.
.SH DESCRIPTION
The
.ZN XDrawPoint
function uses the foreground pixel and function components of the
GC to draw a single point into the specified drawable;
.ZN XDrawPoints
draws multiple points this way.
.ZN CoordModeOrigin
treats all coordinates as relative to the origin,
and
.ZN CoordModePrevious
treats all coordinates after the first as relative to the previous point.
.ZN XDrawPoints
draws the points in the order listed in the array.
.LP
Both functions use these GC components: function, plane-mask,
foreground, subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask.
.LP
.ZN XDrawPoint
can generate
.ZN BadDrawable ,
.ZN BadGC ,
and
.ZN BadMatch
errors.
.ZN XDrawPoints
can generate
.ZN BadDrawable ,
.ZN BadGC ,
.ZN BadMatch ,
and
.ZN BadValue
errors.
.SH STRUCTURES
The
.ZN XPoint
structure contains:
.LP
.Ds 0
.TA .5i
.ta .5i
typedef struct {
short x, y;
} XPoint;
.De
.LP
All x and y members are signed integers.
The width and height members are 16-bit unsigned integers.
You should be careful not to generate coordinates and sizes
out of the 16-bit ranges, because the protocol only has 16-bit fields
for these values.
.SH DIAGNOSTICS
.TP 1i
.ZN BadDrawable
A value for a Drawable argument does not name a defined Window or Pixmap.
.TP 1i
.ZN BadGC
A value for a GContext argument does not name a defined GContext.
.TP 1i
.ZN BadMatch
An
.ZN InputOnly
window is used as a Drawable.
.TP 1i
.ZN BadMatch
Some argument or pair of arguments has the correct type and range but fails
to match in some other way required by the request.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.SH "SEE ALSO"
XDrawArc(3X11),
XDrawLine(3X11),
XDrawRectangle(3X11)
.br
\fI\*(xL\fP

267
man/XDrawRectangle.man Normal file
View file

@ -0,0 +1,267 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XDrawRectangle 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XDrawRectangle, XDrawRectangles, XRectangle \- draw rectangles and rectangles structure
.SH SYNTAX
XDrawRectangle\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^, \fIwidth\fP\^, \fIheight\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.br
unsigned int \fIwidth\fP\^, \fIheight\fP\^;
.LP
XDrawRectangles\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIrectangles\fP\^, \fInrectangles\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
XRectangle \fIrectangles\fP\^[\^]\^;
.br
int \fInrectangles\fP\^;
.SH ARGUMENTS
.IP \fId\fP 1i
Specifies the drawable.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIgc\fP 1i
Specifies the GC.
.IP \fInrectangles\fP 1i
Specifies the number of rectangles in the array.
.IP \fIrectangles\fP 1i
Specifies an array of rectangles.
.ds Wh , which specify the dimensions of the rectangle
.IP \fIwidth\fP 1i
.br
.ns
.IP \fIheight\fP 1i
Specify the width and height\*(Wh.
.ds Xy , which specify the upper-left corner of the rectangle
.IP \fIx\fP 1i
.br
.ns
.IP \fIy\fP 1i
Specify the x and y coordinates\*(Xy.
.SH DESCRIPTION
The
.ZN XDrawRectangle
and
.ZN XDrawRectangles
functions draw the outlines of the specified rectangle or rectangles as
if a five-point
.ZN PolyLine
protocol request were specified for each rectangle:
.IP
[x,y] [x+width,y] [x+width,y+height] [x,y+height] [x,y]
.LP
For the specified rectangle or rectangles,
these functions do not draw a pixel more than once.
.ZN XDrawRectangles
draws the rectangles in the order listed in the array.
If rectangles intersect,
the intersecting pixels are drawn multiple times.
.LP
Both functions use these GC components:
function, plane-mask, line-width,
line-style, cap-style, join-style, fill-style,
subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask.
They also use these GC mode-dependent components:
foreground, background, tile, stipple, tile-stipple-x-origin,
tile-stipple-y-origin, dash-offset, and dash-list.
.LP
.ZN XDrawRectangle
and
.ZN XDrawRectangles
can generate
.ZN BadDrawable ,
.ZN BadGC ,
and
.ZN BadMatch
errors.
.SH STRUCTURES
The
.ZN XRectangle
structure contains:
.LP
.Ds 0
.TA .5i
.ta .5i
typedef struct {
short x, y;
unsigned short width, height;
} XRectangle;
.De
.LP
All x and y members are signed integers.
The width and height members are 16-bit unsigned integers.
You should be careful not to generate coordinates and sizes
out of the 16-bit ranges, because the protocol only has 16-bit fields
for these values.
.SH DIAGNOSTICS
.TP 1i
.ZN BadDrawable
A value for a Drawable argument does not name a defined Window or Pixmap.
.TP 1i
.ZN BadGC
A value for a GContext argument does not name a defined GContext.
.TP 1i
.ZN BadMatch
An
.ZN InputOnly
window is used as a Drawable.
.TP 1i
.ZN BadMatch
Some argument or pair of arguments has the correct type and range but fails
to match in some other way required by the request.
.SH "SEE ALSO"
XDrawArc(3X11),
XDrawLine(3X11),
XDrawPoint(3X11)
.br
\fI\*(xL\fP

236
man/XDrawString.man Normal file
View file

@ -0,0 +1,236 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XDrawString 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XDrawString, XDrawString16 \- draw text characters
.SH SYNTAX
XDrawString\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^, \fIstring\fP\^, \fIlength\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.br
char *\fIstring\fP\^;
.br
int \fIlength\fP\^;
.LP
XDrawString16\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^, \fIstring\fP\^, \fIlength\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.br
XChar2b *\fIstring\fP\^;
.br
int \fIlength\fP\^;
.SH ARGUMENTS
.IP \fId\fP 1i
Specifies the drawable.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIgc\fP 1i
Specifies the GC.
.IP \fIlength\fP 1i
Specifies the number of characters in the string argument.
.IP \fIstring\fP 1i
Specifies the character string.
.ds Xy , which are relative to the origin of the specified drawable \
and define the origin of the first character
.IP \fIx\fP 1i
.br
.ns
.IP \fIy\fP 1i
Specify the x and y coordinates\*(Xy.
.SH DESCRIPTION
Each character image, as defined by the font in the GC, is treated as an
additional mask for a fill operation on the drawable.
The drawable is modified only where the font character has a bit set to 1.
For fonts defined with 2-byte matrix indexing
and used with
.ZN XDrawString16 ,
each byte is used as a byte2 with a byte1 of zero.
.LP
Both functions use these GC components:
function, plane-mask, fill-style, font, subwindow-mode, clip-x-origin,
clip-y-origin, and clip-mask.
They also use these GC mode-dependent components:
foreground, background, tile, stipple, tile-stipple-x-origin,
and tile-stipple-y-origin.
.LP
.ZN XDrawString
and
.ZN XDrawString16
can generate
.ZN BadDrawable ,
.ZN BadGC ,
and
.ZN BadMatch
errors.
.SH DIAGNOSTICS
.TP 1i
.ZN BadDrawable
A value for a Drawable argument does not name a defined Window or Pixmap.
.TP 1i
.ZN BadGC
A value for a GContext argument does not name a defined GContext.
.TP 1i
.ZN BadMatch
An
.ZN InputOnly
window is used as a Drawable.
.TP 1i
.ZN BadMatch
Some argument or pair of arguments has the correct type and range but fails
to match in some other way required by the request.
.SH "SEE ALSO"
XDrawImageString(3X11),
XDrawText(3X11),
XLoadFont(3X11)
.br
\fI\*(xL\fP

308
man/XDrawText.man Normal file
View file

@ -0,0 +1,308 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XDrawText 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XDrawText, XDrawText16, XTextItem, XTextItem16 \- draw polytext text and text drawing structures
.SH SYNTAX
XDrawText\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^, \fIitems\fP\^, \fInitems\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.br
XTextItem *\fIitems\fP\^;
.br
int \fInitems\fP\^;
.LP
XDrawText16\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^, \fIitems\fP\^, \fInitems\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.br
XTextItem16 *\fIitems\fP\^;
.br
int \fInitems\fP\^;
.SH ARGUMENTS
.IP \fId\fP 1i
Specifies the drawable.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIgc\fP 1i
Specifies the GC.
.IP \fIitems\fP 1i
Specifies an array of text items.
.IP \fInitems\fP 1i
Specifies the number of text items in the array.
.ds Xy , which are relative to the origin of the specified drawable \
and define the origin of the first character
.IP \fIx\fP 1i
.br
.ns
.IP \fIy\fP 1i
Specify the x and y coordinates\*(Xy.
.SH DESCRIPTION
The
.ZN XDrawText16
function is similar to
.ZN XDrawText
except that it uses 2-byte or 16-bit characters.
Both functions allow complex spacing and font shifts between counted strings.
.LP
Each text item is processed in turn.
A font member other than
.ZN None
in an item causes the font to be stored in the GC
and used for subsequent text.
A text element delta specifies an additional change
in the position along the x axis before the string is drawn.
The delta is always added to the character origin
and is not dependent on any characteristics of the font.
Each character image, as defined by the font in the GC, is treated as an
additional mask for a fill operation on the drawable.
The drawable is modified only where the font character has a bit set to 1.
If a text item generates a
.ZN BadFont
error, the previous text items may have been drawn.
.LP
For fonts defined with linear indexing rather than 2-byte matrix indexing,
each
.ZN XChar2b
structure is interpreted as a 16-bit number with byte1 as the
most significant byte.
.LP
Both functions use these GC components:
function, plane-mask, fill-style, font, subwindow-mode,
clip-x-origin, clip-y-origin, and clip-mask.
They also use these GC mode-dependent components:
foreground, background, tile, stipple, tile-stipple-x-origin,
and tile-stipple-y-origin.
.LP
.ZN XDrawText
and
.ZN XDrawText16
can generate
.ZN BadDrawable ,
.ZN BadFont ,
.ZN BadGC ,
and
.ZN BadMatch
errors.
.SH STRUCTURES
The
.ZN XTextItem
and
.ZN XTextItem16
structures contain:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
char *chars; /* pointer to string */
int nchars; /* number of characters */
int delta; /* delta between strings */
Font font; /* Font to print it in, None don't change */
} XTextItem;
.De
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
XChar2b *chars; /* pointer to two-byte characters */
int nchars; /* number of characters */
int delta; /* delta between strings */
Font font; /* font to print it in, None don't change */
} XTextItem16;
.De
.LP
If the font member is not
.ZN None ,
the font is changed before printing and also is stored in the GC.
If an error was generated during text drawing,
the previous items may have been drawn.
The baseline of the characters are drawn starting at the x and y
coordinates that you pass in the text drawing functions.
.LP
For example, consider the background rectangle drawn by
.ZN XDrawImageString .
If you want the upper-left corner of the background rectangle
to be at pixel coordinate (x,y), pass the (x,y + ascent)
as the baseline origin coordinates to the text functions.
The ascent is the font ascent, as given in the
.ZN XFontStruct
structure.
If you want the lower-left corner of the background rectangle
to be at pixel coordinate (x,y), pass the (x,y \- descent + 1)
as the baseline origin coordinates to the text functions.
The descent is the font descent, as given in the
.ZN XFontStruct
structure.
.SH DIAGNOSTICS
.TP 1i
.ZN BadDrawable
A value for a Drawable argument does not name a defined Window or Pixmap.
.TP 1i
.ZN BadFont
A value for a Font or GContext argument does not name a defined Font.
.TP 1i
.ZN BadGC
A value for a GContext argument does not name a defined GContext.
.TP 1i
.ZN BadMatch
An
.ZN InputOnly
window is used as a Drawable.
.SH "SEE ALSO"
XDrawImageString(3X11),
XDrawString(3X11),
XLoadFont(3X11)
.br
\fI\*(xL\fP

220
man/XEmptyRegion.man Normal file
View file

@ -0,0 +1,220 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XEmptyRegion 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XEmptyRegion, XEqualRegion, XPointInRegion, XRectInRegion \- determine if regions are empty or equal
.SH SYNTAX
Bool XEmptyRegion\^(\^\fIr\fP\^)
.br
Region \fIr\fP\^;
.LP
Bool XEqualRegion\^(\^\fIr1\fP\^, \fIr2\fP\^)
.br
Region \fIr1\fP\^, \fIr2\fP\^;
.LP
Bool XPointInRegion\^(\^\fIr\fP\^, \fIx\fP\^, \fIy\fP\^)
.br
Region \fIr\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.LP
int XRectInRegion\^(\^\fIr\fP\^, \fIx\fP\^, \fIy\fP\^, \fIwidth\fP\^, \fIheight\fP\^)
.br
Region \fIr\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.br
unsigned int \fIwidth\fP\^, \fIheight\fP\^;
.SH ARGUMENTS
.IP \fIr\fP 1i
Specifies the region.
.IP \fIr1\fP 1i
.br
.ns
.IP \fIr2\fP 1i
Specify the two regions.
.ds Wh , which define the rectangle
.IP \fIwidth\fP 1i
.br
.ns
.IP \fIheight\fP 1i
Specify the width and height\*(Wh.
.ds Xy , which define the point \
or the coordinates of the upper-left corner of the rectangle
.IP \fIx\fP 1i
.br
.ns
.IP \fIy\fP 1i
Specify the x and y coordinates\*(Xy.
.SH DESCRIPTION
The
.ZN XEmptyRegion
function returns
.ZN True
if the region is empty.
.LP
The
.ZN XEqualRegion
function returns
.ZN True
if the two regions have the same offset, size, and shape.
.LP
The
.ZN XPointInRegion
function returns
.ZN True
if the point (x, y) is contained in the region r.
.LP
The
.ZN XRectInRegion
function returns
.ZN RectangleIn
if the rectangle is entirely in the specified region,
.ZN RectangleOut
if the rectangle is entirely out of the specified region,
and
.ZN RectanglePart
if the rectangle is partially in the specified region.
.SH "SEE ALSO"
XCreateRegion(3X11),
XIntersectRegion(3X11)
.br
\fI\*(xL\fP

202
man/XErrorEvent.man Normal file
View file

@ -0,0 +1,202 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XErrorEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XErrorEvent \- X error event structure
.SH STRUCTURES
The
.ZN XErrorEvent
structure contains:
.LP
.Ds 0
.TA .5i 2.5i
.ta .5i 2.5i
typedef struct {
int type;
Display *display; /* Display the event was read from */
unsigned long serial; /* serial number of failed request */
unsigned char error_code; /* error code of failed request */
unsigned char request_code; /* Major op-code of failed request */
unsigned char minor_code; /* Minor op-code of failed request */
XID resourceid; /* resource id */
} XErrorEvent;
.De
.LP
When you receive this event,
the structure members are set as follows.
.LP
The serial member is the number of requests, starting from one,
sent over the network connection since it was opened.
It is the number that was the value of
.ZN NextRequest
immediately before the failing call was made.
The request_code member is a protocol request
of the procedure that failed, as defined in
.hN X11/Xproto.h .
.SH "SEE ALSO"
AllPlanes(3X11),
XAnyEvent(3X11),
XButtonEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateEvent(3X11),
XCirculateRequestEvent(3X11),
XColormapEvent(3X11),
XConfigureEvent(3X11),
XConfigureRequestEvent(3X11),
XCrossingEvent(3X11),
XDestroyWindowEvent(3X11),
XExposeEvent(3X11),
XFocusChangeEvent(3X11),
XGraphicsExposeEvent(3X11),
XGravityEvent(3X11),
XKeymapEvent(3X11),
XMapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

231
man/XExposeEvent.man Normal file
View file

@ -0,0 +1,231 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XExposeEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XExposeEvent \- Expose event structure
.SH STRUCTURES
The structure for
.ZN Expose
events contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* Expose */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window;
int x, y;
int width, height;
int count; /* if nonzero, at least this many more */
} XExposeEvent;
.De
.LP
When you receive this event,
the structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
The window member is set to the exposed (damaged) window.
The x and y members are set to the coordinates relative to the window's origin
and indicate the upper-left corner of the rectangle.
The width and height members are set to the size (extent) of the rectangle.
The count member is set to the number of
.ZN Expose
events that are to follow.
If count is zero, no more
.ZN Expose
events follow for this window.
However, if count is nonzero, at least that number of
.ZN Expose
events (and possibly more) follow for this window.
Simple applications that do not want to optimize redisplay by distinguishing
between subareas of its window can just ignore all
.ZN Expose
events with nonzero counts and perform full redisplays
on events with zero counts.
.SH "SEE ALSO"
XAnyEvent(3X11),
XButtonEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateEvent(3X11),
XCirculateRequestEvent(3X11),
XColormapEvent(3X11),
XConfigureEvent(3X11),
XConfigureRequestEvent(3X11),
XCrossingEvent(3X11),
XDestroyWindowEvent(3X11),
XErrorEvent(3X11),
XFocusChangeEvent(3X11),
XGraphicsExposeEvent(3X11),
XGravityEvent(3X11),
XKeymapEvent(3X11),
XMapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

173
man/XExtentsOfFontSet.man Normal file
View file

@ -0,0 +1,173 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XExtentsOfFontSet 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XExtentsOfFontSet \- obtain the maximum extents structure for a font set
.SH SYNTAX
XFontSetExtents *XExtentsOfFontSet\^(\^\fIfont_set\fP\^)
.br
XFontSet \fIfont_set\fP\^;
.SH ARGUMENTS
.IP \fIfont_set\fP 1i
Specifies the font set.
.SH DESCRIPTION
The
.ZN XExtentsOfFontSet
function returns an
.ZN XFontSetExtents
structure for the fonts used by the Xmb and Xwc layers
for the given font set.
.LP
The
.ZN XFontSetExtents
structure is owned by Xlib and should not be modified
or freed by the client.
It will be freed by a call to
.ZN XFreeFontSet
with the associated
.ZN XFontSet .
Until freed, its contents will not be modified by Xlib.
.SH "SEE ALSO"
XCreateFontSet(3X11),
XFontsOfFontSet(3X11),
XFontSetExtents(3X11)
.br
\fI\*(xL\fP

440
man/XFillRectangle.man Normal file
View file

@ -0,0 +1,440 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XFillRectangle 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XFillRectangle, XFillRectangles, XFillPolygon, XFillArc, XFillArcs \- fill rectangles, polygons, or arcs
.SH SYNTAX
XFillRectangle\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^, \fIwidth\fP\^, \fIheight\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.br
unsigned int \fIwidth\fP\^, \fIheight\fP\^;
.LP
XFillRectangles\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIrectangles\fP\^, \fInrectangles\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
XRectangle *\fIrectangles\fP\^;
.br
int \fInrectangles\fP\^;
.LP
XFillPolygon\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIpoints\fP\^, \fInpoints\fP\^, \fIshape\fP\^, \fImode\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
XPoint *\fIpoints\fP\^;
.br
int \fInpoints\fP\^;
.br
int \fIshape\fP\^;
.br
int \fImode\fP\^;
.LP
XFillArc\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIx\fP\^, \fIy\fP\^, \fIwidth\fP\^, \fIheight\fP\^, \fIangle1\fP\^, \fIangle2\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
int \fIx\fP\^, \fIy\fP\^;
.br
unsigned int \fIwidth\fP\^, \fIheight\fP\^;
.br
int \fIangle1\fP\^, \fIangle2\fP\^;
.LP
XFillArcs\^(\^\fIdisplay\fP, \fId\fP\^, \fIgc\fP\^, \fIarcs\fP\^, \fInarcs\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
GC \fIgc\fP\^;
.br
XArc *\fIarcs\fP\^;
.br
int \fInarcs\fP\^;
.SH ARGUMENTS
.IP \fIangle1\fP 1i
Specifies the start of the arc relative to the three-o'clock position
from the center, in units of degrees * 64.
.IP \fIangle2\fP 1i
Specifies the path and extent of the arc relative to the start of the
arc, in units of degrees * 64.
.IP \fIarcs\fP 1i
Specifies an array of arcs.
.IP \fId\fP 1i
Specifies the drawable.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIgc\fP 1i
Specifies the GC.
.IP \fImode\fP 1i
Specifies the coordinate mode.
You can pass
.ZN CoordModeOrigin
or
.ZN CoordModePrevious .
.IP \fInarcs\fP 1i
Specifies the number of arcs in the array.
.IP \fInpoints\fP 1i
Specifies the number of points in the array.
.IP \fInrectangles\fP 1i
Specifies the number of rectangles in the array.
.IP \fIpoints\fP 1i
Specifies an array of points.
.IP \fIrectangles\fP 1i
Specifies an array of rectangles.
.IP \fIshape\fP 1i
Specifies a shape that helps the server to improve performance.
You can pass
.ZN Complex ,
.ZN Convex ,
or
.ZN Nonconvex .
.ds Wh , which are the dimensions of the rectangle to be filled \
or the major and minor axes of the arc
.IP \fIwidth\fP 1i
.br
.ns
.IP \fIheight\fP 1i
Specify the width and height\*(Wh.
.ds Xy , which are relative to the origin of the drawable \
and specify the upper-left corner of the rectangle
.IP \fIx\fP 1i
.br
.ns
.IP \fIy\fP 1i
Specify the x and y coordinates\*(Xy.
.SH DESCRIPTION
The
.ZN XFillRectangle
and
.ZN XFillRectangles
functions fill the specified rectangle or rectangles
as if a four-point
.ZN FillPolygon
protocol request were specified for each rectangle:
.LP
.Ds
[x,y] [x+width,y] [x+width,y+height] [x,y+height]
.De
.LP
Each function uses the x and y coordinates,
width and height dimensions, and GC you specify.
.LP
.ZN XFillRectangles
fills the rectangles in the order listed in the array.
For any given rectangle,
.ZN XFillRectangle
and
.ZN XFillRectangles
do not draw a pixel more than once.
If rectangles intersect, the intersecting pixels are
drawn multiple times.
.LP
Both functions use these GC components:
function, plane-mask, fill-style, subwindow-mode,
clip-x-origin, clip-y-origin, and clip-mask.
They also use these GC mode-dependent components:
foreground, background, tile, stipple, tile-stipple-x-origin,
and tile-stipple-y-origin.
.LP
.ZN XFillRectangle
and
.ZN XFillRectangles
can generate
.ZN BadDrawable ,
.ZN BadGC ,
and
.ZN BadMatch
errors.
.LP
.ZN XFillPolygon
fills the region closed by the specified path.
The path is closed
automatically if the last point in the list does not coincide with the
first point.
.ZN XFillPolygon
does not draw a pixel of the region more than once.
.ZN CoordModeOrigin
treats all coordinates as relative to the origin,
and
.ZN CoordModePrevious
treats all coordinates after the first as relative to the previous point.
.LP
Depending on the specified shape, the following occurs:
.IP \(bu 5
If shape is
.ZN Complex ,
the path may self-intersect.
Note that contiguous coincident points in the path are not treated
as self-intersection.
.IP \(bu 5
If shape is
.ZN Convex ,
for every pair of points inside the polygon,
the line segment connecting them does not intersect the path.
If known by the client,
specifying
.ZN Convex
can improve performance.
If you specify
.ZN Convex
for a path that is not convex,
the graphics results are undefined.
.IP \(bu 5
If shape is
.ZN Nonconvex ,
the path does not self-intersect, but the shape is not
wholly convex.
If known by the client,
specifying
.ZN Nonconvex
instead of
.ZN Complex
may improve performance.
If you specify
.ZN Nonconvex
for a self-intersecting path, the graphics results are undefined.
.LP
The fill-rule of the GC controls the filling behavior of
self-intersecting polygons.
.LP
This function uses these GC components:
function, plane-mask, fill-style, fill-rule, subwindow-mode, clip-x-origin,
clip-y-origin, and clip-mask.
It also uses these GC mode-dependent components:
foreground, background, tile, stipple, tile-stipple-x-origin,
and tile-stipple-y-origin.
.LP
.ZN XFillPolygon
can generate
.ZN BadDrawable ,
.ZN BadGC ,
.ZN BadMatch ,
and
.ZN BadValue
errors.
.LP
For each arc,
.ZN XFillArc
or
.ZN XFillArcs
fills the region closed by the infinitely thin path
described by the specified arc and, depending on the
arc-mode specified in the GC, one or two line segments.
For
.ZN ArcChord ,
the single line segment joining the endpoints of the arc is used.
For
.ZN ArcPieSlice ,
the two line segments joining the endpoints of the arc with the center
point are used.
.ZN XFillArcs
fills the arcs in the order listed in the array.
For any given arc,
.ZN XFillArc
and
.ZN XFillArcs
do not draw a pixel more than once.
If regions intersect,
the intersecting pixels are drawn multiple times.
.LP
Both functions use these GC components:
function, plane-mask, fill-style, arc-mode, subwindow-mode, clip-x-origin,
clip-y-origin, and clip-mask.
They also use these GC mode-dependent components:
foreground, background, tile, stipple, tile-stipple-x-origin,
and tile-stipple-y-origin.
.LP
.ZN XFillArc
and
.ZN XFillArcs
can generate
.ZN BadDrawable ,
.ZN BadGC ,
and
.ZN BadMatch
errors.
.SH DIAGNOSTICS
.TP 1i
.ZN BadDrawable
A value for a Drawable argument does not name a defined Window or Pixmap.
.TP 1i
.ZN BadGC
A value for a GContext argument does not name a defined GContext.
.TP 1i
.ZN BadMatch
An
.ZN InputOnly
window is used as a Drawable.
.TP 1i
.ZN BadMatch
Some argument or pair of arguments has the correct type and range but fails
to match in some other way required by the request.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.SH "SEE ALSO"
XDrawArc(3X11),
XDrawPoint(3X11),
XDrawRectangle(3X11)
.br
\fI\*(xL\fP

188
man/XFilterEvent.man Normal file
View file

@ -0,0 +1,188 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XFilterEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XFilterEvent \- filter X events for an input method
.SH SYNTAX
Bool XFilterEvent\^(\^\fIevent\fP\^, \fIw\fP\^)
.br
XEvent *\fIevent\fP\^;
.br
Window \fIw\fP\^;
.SH ARGUMENTS
.ds Ev event to filter
.IP \fIevent\fP 1i
Specifies the \*(Ev.
.ds Wi for which the filter is to be applied
.IP \fIw\fP 1i
Specifies the window \*(Wi.
.SH DESCRIPTION
If the window argument is
.ZN None ,
.ZN XFilterEvent
applies the filter to the window specified in the
.ZN XEvent
structure.
The window argument is provided so that layers above Xlib
that do event redirection can indicate to which window an event
has been redirected.
.LP
If
.ZN XFilterEvent
returns
.ZN True ,
then some input method has filtered the event,
and the client should discard the event.
If
.ZN XFilterEvent
returns
.ZN False ,
then the client should continue processing the event.
.LP
If a grab has occurred in the client and
.ZN XFilterEvent
returns
.ZN True ,
the client should ungrab the keyboard.
.SH "SEE ALSO"
XNextEvent(3X11)
.br
\fI\*(xL\fP

274
man/XFlush.man Normal file
View file

@ -0,0 +1,274 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XFlush 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XFlush, XSync, XEventsQueued, XPending \- handle output buffer or event queue
.SH SYNTAX
XFlush\^(\^\fIdisplay\fP\^)
.br
Display *\fIdisplay\fP\^;
.LP
XSync\^(\^\fIdisplay\fP, \fIdiscard\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Bool \fIdiscard\fP\^;
.LP
int XEventsQueued\^(\^\fIdisplay\fP, \fImode\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
int \fImode\fP\^;
.LP
int XPending\^(\^\fIdisplay\fP\^)
.br
Display *\fIdisplay\fP\^;
.SH ARGUMENTS
.IP \fIdiscard\fP 1i
Specifies a Boolean value that indicates whether
.ZN XSync
discards all events on the event queue.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fImode\fP 1i
Specifies the mode.
You can pass
.ZN QueuedAlready ,
.ZN QueuedAfterFlush ,
or
.ZN QueuedAfterReading .
.SH DESCRIPTION
The
.ZN XFlush
function
flushes the output buffer.
Most client applications need not use this function because the output
buffer is automatically flushed as needed by calls to
.ZN XPending ,
.ZN XNextEvent ,
and
.ZN XWindowEvent .
.IN "XPending"
.IN "XNextEvent"
.IN "XWindowEvent"
Events generated by the server may be enqueued into the library's event queue.
.LP
The
.ZN XSync
function
flushes the output buffer and then waits until all requests have been received
and processed by the X server.
Any errors generated must be handled by the error handler.
For each protocol error received by Xlib,
.ZN XSync
calls the client application's error handling routine (see section 11.8.2).
Any events generated by the server are enqueued into the library's
event queue.
.LP
Finally, if you passed
.ZN False ,
.ZN XSync
does not discard the events in the queue.
If you passed
.ZN True ,
.ZN XSync
discards all events in the queue,
including those events that were on the queue before
.ZN XSync
was called.
Client applications seldom need to call
.ZN XSync .
.LP
If mode is
.ZN QueuedAlready ,
.ZN XEventsQueued
returns the number of events
already in the event queue (and never performs a system call).
If mode is
.ZN QueuedAfterFlush ,
.ZN XEventsQueued
returns the number of events already in the queue if the number is nonzero.
If there are no events in the queue,
.ZN XEventsQueued
flushes the output buffer,
attempts to read more events out of the application's connection,
and returns the number read.
If mode is
.ZN QueuedAfterReading ,
.ZN XEventsQueued
returns the number of events already in the queue if the number is nonzero.
If there are no events in the queue,
.ZN XEventsQueued
attempts to read more events out of the application's connection
without flushing the output buffer and returns the number read.
.LP
.ZN XEventsQueued
always returns immediately without I/O if there are events already in the
queue.
.ZN XEventsQueued
with mode
.ZN QueuedAfterFlush
is identical in behavior to
.ZN XPending .
.ZN XEventsQueued
with mode
.ZN QueuedAlready
is identical to the
.ZN XQLength
function.
.LP
The
.ZN XPending
function returns the number of events that have been received from the
X server but have not been removed from the event queue.
.ZN XPending
is identical to
.ZN XEventsQueued
with the mode
.ZN QueuedAfterFlush
specified.
.SH "SEE ALSO"
AllPlanes(3X11),
XIfEvent(3X11),
XNextEvent(3X11),
XPutBackEvent(3X11)
.br
\fI\*(xL\fP

265
man/XFocusChangeEvent.man Normal file
View file

@ -0,0 +1,265 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XFocusChangeEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XFocusChangeEvent \- FocusIn and FocusOut event structure
.SH STRUCTURES
The structure for
.ZN FocusIn
and
.ZN FocusOut
events contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* FocusIn or FocusOut */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window; /* window of event */
int mode; /* NotifyNormal, NotifyGrab, NotifyUngrab */
int detail;
/*
* NotifyAncestor, NotifyVirtual, NotifyInferior,
* NotifyNonlinear,NotifyNonlinearVirtual, NotifyPointer,
* NotifyPointerRoot, NotifyDetailNone
*/
} XFocusChangeEvent;
typedef XFocusChangeEvent XFocusInEvent;
typedef XFocusChangeEvent XFocusOutEvent;
.De
.LP
When you receive these events,
the structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
The window member is set to the window on which the
.ZN FocusIn
or
.ZN FocusOut
event was generated.
This is the window used by the X server to report the event.
The mode member is set to indicate whether the focus events
are normal focus events,
focus events while grabbed,
focus events
when a grab activates, or focus events when a grab deactivates.
The X server can set the mode member to
.ZN NotifyNormal ,
.ZN NotifyWhileGrabbed ,
.ZN NotifyGrab ,
or
.ZN NotifyUngrab .
.LP
All
.ZN FocusOut
events caused by a window unmap are generated after any
.ZN UnmapNotify
event; however, the X protocol does not constrain the ordering of
.ZN FocusOut
events with respect to
generated
.ZN EnterNotify ,
.ZN LeaveNotify ,
.ZN VisibilityNotify ,
and
.ZN Expose
events.
.LP
Depending on the event mode,
the detail member is set to indicate the notify detail and can be
.ZN NotifyAncestor ,
.ZN NotifyVirtual ,
.ZN NotifyInferior ,
.ZN NotifyNonlinear ,
.ZN NotifyNonlinearVirtual ,
.ZN NotifyPointer ,
.ZN NotifyPointerRoot ,
or
.ZN NotifyDetailNone .
.SH "SEE ALSO"
XAnyEvent(3X11),
XButtonEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateEvent(3X11),
XCirculateRequestEvent(3X11),
XColormapEvent(3X11),
XConfigureEvent(3X11),
XConfigureRequestEvent(3X11),
XCrossingEvent(3X11),
XDestroyWindowEvent(3X11),
XErrorEvent(3X11),
XExposeEvent(3X11),
XGraphicsExposeEvent(3X11),
XGravityEvent(3X11),
XKeymapEvent(3X11),
XMapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

192
man/XFontSetExtents.man Normal file
View file

@ -0,0 +1,192 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XFontSetExtents 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XFontSetExtents \- XFontSetExtents structure
.SH STRUCTURES
The
.ZN XFontSetExtents
structure contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
XRectangle max_ink_extent; /* over all drawable characters */
XRectangle max_logical_extent; /* over all drawable characters */
} XFontSetExtents;
.De
.LP
The
.ZN XRectangle
structures used to return font set metrics are the usual Xlib screen-oriented
rectangles
with x, y giving the upper left corner, and width and height always positive.
.LP
The max_ink_extent member gives the maximum extent, over all drawable characters, of
the rectangles that bound the character glyph image drawn in the
foreground color, relative to a constant origin.
See
.ZN XmbTextExtents
and
.ZN XwcTextExtents
for detailed semantics.
.LP
The max_logical_extent member gives the maximum extent,
over all drawable characters, of the rectangles
that specify minimum spacing to other graphical features,
relative to a constant origin.
Other graphical features drawn by the client, for example,
a border surrounding the text, should not intersect this rectangle.
The max_logical_extent member should be used to compute minimum
interline spacing and the minimum area that must be allowed
in a text field to draw a given number of arbitrary characters.
.LP
Due to context-dependent rendering,
appending a given character to a string may change
the string's extent by an amount other than that character's
individual extent.
.SH "SEE ALSO"
XCreateFontSet(3X11),
XExtentsOfFontSet(3X11),
XFontsOfFontSet(3X11)
.br
\fI\*(xL\fP

301
man/XFontsOfFontSet.man Normal file
View file

@ -0,0 +1,301 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XFontsOfFontSet 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XFontsOfFontSet, XBaseFontNameListOfFontSet, XLocaleOfFontSet, XContextDependentDrawing, XContextualDrawing, XDirectionalDependentDrawing \- obtain fontset information
.SH SYNTAX
int XFontsOfFontSet\^(\^\fIfont_set\fP\^, \fIfont_struct_list_return\fP\^, \fIfont_name_list_return\fP\^)
.br
XFontSet \fIfont_set\fP\^;
.br
XFontStruct ***\fIfont_struct_list_return\fP\^;
.br
char ***\fIfont_name_list_return\fP\^;
.LP
char *XBaseFontNameListOfFontSet\^(\^\fIfont_set\fP\^)
.br
XFontSet \fIfont_set\fP\^;
.LP
char *XLocaleOfFontSet\^(\^\fIfont_set\fP\^)
.br
XFontSet \fIfont_set\fP\^;
.LP
Bool XContextDependentDrawing\^(\^\fIfont_set\fP\^)
.br
XFontSet \fIfont_set\fP\^;
.LP
Bool XContextualDrawing\^(\^\fIfont_set\fP\^)
.br
XFontSet \fIfont_set\fP\^;
.LP
Bool XDirectionalDependentDrawing\^(\^\fIfont_set\fP\^)
.br
XFontSet \fIfont_set\fP\^;
.SH ARGUMENTS
.IP \fIfont_set\fP 1i
Specifies the font set.
.IP \fIfont_name_list_return\fP 1i
Returns the list of font names.
.IP \fIfont_struct_list_return\fP 1i
Returns the list of font structs.
.SH DESCRIPTION
The
.ZN XFontsOfFontSet
function returns a list of one or more
.ZN XFontStructs
and font names for the fonts used by the Xmb and Xwc layers
for the given font set.
A list of pointers to the
.ZN XFontStruct
structures is returned to font_struct_list_return.
A list of pointers to null-terminated, fully specified font name strings
in the locale of the font set is returned to font_name_list_return.
The font_name_list order corresponds to the font_struct_list order.
The number of
.ZN XFontStruct
structures and font names is returned as the value of the function.
.LP
Because it is not guaranteed that a given character will be imaged using a
single font glyph,
there is no provision for mapping a character or default string
to the font properties, font ID, or direction hint for the font
for the character.
The client may access the
.ZN XFontStruct
list to obtain these values for all the fonts currently in use.
.LP
Xlib does not guarantee that fonts are loaded from the server
at the creation of an
.ZN XFontSet .
Xlib may choose to cache font data, loading it only as needed to draw text
or compute text dimensions.
Therefore, existence of the per_char metrics in the
.ZN XFontStruct
structures in the
.ZN XFontStructSet
is undefined.
Also, note that all properties in the
.ZN XFontStruct
structures are in the STRING encoding.
.LP
The
.ZN XFontStruct
and font name lists are owned by Xlib
and should not be modified or freed by the client.
They will be freed by a call to
.ZN XFreeFontSet
with the associated
.ZN XFontSet .
Until freed, their contents will not be modified by Xlib.
.LP
The
.ZN XBaseFontNameListOfFontSet
function returns the original base font name list supplied
by the client when the
.ZN XFontSet
was created.
A null-terminated string containing a list of
comma-separated font names is returned
as the value of the function.
White space may appear immediately on either side of separating commas.
.LP
If
.ZN XCreateFontSet
obtained an XLFD name from the font properties for the font specified
by a non-XLFD base name, the
.ZN XBaseFontNameListOfFontSet
function will return the XLFD name instead of the non-XLFD base name.
.LP
The base font name list is owned by Xlib and should not be modified or
freed by the client.
It will be freed by a call to
.ZN XFreeFontSet
with the associated
.ZN XFontSet .
Until freed, its contents will not be modified by Xlib.
.LP
The
.ZN XLocaleOfFontSet
function
returns the name of the locale bound to the specified
.ZN XFontSet ,
as a null-terminated string.
.LP
The returned locale name string is owned by Xlib
and should not be modified or freed by the client.
It may be freed by a call to
.ZN XFreeFontSet
with the associated
.ZN XFontSet .
Until freed, it will not be modified by Xlib.
.LP
The
.ZN XContextDependentDrawing
function returns
.ZN True
if the drawing functions implement implicit text directionality or
if text drawn with the font_set might include context-dependent drawing;
otherwise, it returns
.ZN False .
.LP
The
.ZN XContextualDrawing
function returns
.ZN True
if text drawn with the font set might include context-dependent drawing;
otherwise, it returns
.ZN False .
.LP
The
.ZN XDirectionalDependentDrawing
function returns
.ZN True
if the drawing functions implement implicit text directionality;
otherwise, it returns
.ZN False .
.SH "SEE ALSO"
XCreateFontSet(3X11),
XCreateOM(3X11),
XCreateOC(3X11),
XExtentsOfFontSet(3X11),
XFontSetExtents(3X11)
.br
\fI\*(xL\fP

159
man/XFree.man Normal file
View file

@ -0,0 +1,159 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XFree 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XFree \- free client data
.SH SYNTAX
XFree\^(\^\fIdata\fP\^)
.br
void *\fIdata\fP\^;
.SH ARGUMENTS
.IP \fIdata\fP 1i
Specifies the data that is to be freed.
.SH DESCRIPTION
The
.ZN XFree
function is a general-purpose Xlib routine that frees the specified data.
You must use it to free any objects that were allocated by Xlib,
unless an alternate function is explicitly specified for the object.
A NULL pointer cannot be passed to this function.
.SH "SEE ALSO"
\fI\*(xL\fP

328
man/XGetVisualInfo.man Normal file
View file

@ -0,0 +1,328 @@
'\" t
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
'\" t
.TH XGetVisualInfo 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XGetVisualInfo, XMatchVisualInfo, XVisualIDFromVisual, XVisualInfo \- obtain visual information and visual structure
.SH SYNTAX
XVisualInfo *XGetVisualInfo\^(\^\fIdisplay\fP, \fIvinfo_mask\fP, \fIvinfo_template\fP, \fInitems_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
long \fIvinfo_mask\fP\^;
.br
XVisualInfo *\fIvinfo_template\fP\^;
.br
int *\fInitems_return\fP\^;
.LP
Status XMatchVisualInfo\^(\^\fIdisplay\fP, \fIscreen\fP, \fIdepth\fP, \fIclass\fP, \fIvinfo_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
int \fIscreen\fP\^;
.br
int \fIdepth\fP\^;
.br
int \fIclass\fP\^;
.br
XVisualInfo *\fIvinfo_return\fP\^;
.LP
VisualID XVisualIDFromVisual\^(\^\fIvisual\fP\^)
.br
Visual *\^\fIvisual\fP\^;
.SH ARGUMENTS
.IP \fIclass\fP 1i
Specifies the class of the screen.
.IP \fIdepth\fP 1i
Specifies the depth of the screen.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fInitems_return\fP 1i
Returns the number of matching visual structures.
.IP \fIscreen\fP 1i
Specifies the screen.
.IP \fIvisual\fP 1i
Specifies the visual type.
.IP \fIvinfo_mask\fP 1i
Specifies the visual mask value.
.IP \fIvinfo_return\fP 1i
Returns the matched visual information.
.IP \fIvinfo_template\fP 1i
Specifies the visual attributes that are to be used in matching the visual
structures.
.SH DESCRIPTION
The
.ZN XGetVisualInfo
function returns a list of visual structures that have attributes
equal to the attributes specified by vinfo_template.
If no visual structures match the template using the specified vinfo_mask,
.ZN XGetVisualInfo
returns a NULL.
To free the data returned by this function, use
.ZN XFree .
.LP
The
.ZN XMatchVisualInfo
function returns the visual information for a visual that matches the specified
depth and class for a screen.
Because multiple visuals that match the specified depth and class can exist,
the exact visual chosen is undefined.
If a visual is found,
.ZN XMatchVisualInfo
returns nonzero and the information on the visual to vinfo_return.
Otherwise, when a visual is not found,
.ZN XMatchVisualInfo
returns zero.
.LP
The
.ZN XVisualIDFromVisual
function returns the visual ID for the specified visual type.
.SH STRUCTURES
The
.ZN XVisualInfo
structure contains:
.LP
.LP
/* Visual information mask bits */
.TS
lw(.5i) lw(2.5i) lw(.8i).
T{
#define
T} T{
.ZN VisualNoMask
T} T{
0x0
T}
T{
#define
T} T{
.ZN VisualIDMask
T} T{
0x1
T}
T{
#define
T} T{
.ZN VisualScreenMask
T} T{
0x2
T}
T{
#define
T} T{
.ZN VisualDepthMask
T} T{
0x4
T}
T{
#define
T} T{
.ZN VisualClassMask
T} T{
0x8
T}
T{
#define
T} T{
.ZN VisualRedMaskMask
T} T{
0x10
T}
T{
#define
T} T{
.ZN VisualGreenMaskMask
T} T{
0x20
T}
T{
#define
T} T{
.ZN VisualBlueMaskMask
T} T{
0x40
T}
T{
#define
T} T{
.ZN VisualColormapSizeMask
T} T{
0x80
T}
T{
#define
T} T{
.ZN VisualBitsPerRGBMask
T} T{
0x100
T}
T{
#define
T} T{
.ZN VisualAllMask
T} T{
0x1FF
T}
.TE
.IN "XVisualInfo" "" "@DEF@"
.Ds 0
.TA .5i 3i
.ta .5i 3i
/* Values */
typedef struct {
Visual *visual;
VisualID visualid;
int screen;
unsigned int depth;
int class;
unsigned long red_mask;
unsigned long green_mask;
unsigned long blue_mask;
int colormap_size;
int bits_per_rgb;
} XVisualInfo;
.De
.SH "SEE ALSO"
XFree(3X11)
.br
\fI\*(xL\fP

View file

@ -0,0 +1,408 @@
'\" t
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
'\" t
.TH XGetWindowAttributes 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XGetWindowAttributes, XGetGeometry, XWindowAttributes \- get current window attribute or geometry and current window attributes structure
.SH SYNTAX
Status XGetWindowAttributes\^(\^\fIdisplay\fP, \fIw\fP\^, \fIwindow_attributes_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
XWindowAttributes *\fIwindow_attributes_return\fP\^;
.LP
Status XGetGeometry\^(\^\fIdisplay\fP, \fId\fP\^, \^\fIroot_return\fP\^, \fIx_return\fP\^, \fIy_return\fP\^, \fIwidth_return\fP\^,
.br
\fIheight_return\fP\^, \fIborder_width_return\fP\^, \fIdepth_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Drawable \fId\fP\^;
.br
Window *\fIroot_return\fP\^;
.br
int *\fIx_return\fP\^, *\fIy_return\fP\^;
.br
unsigned int *\fIwidth_return\fP\^, *\fIheight_return\fP\^;
.br
unsigned int *\fIborder_width_return\fP\^;
.br
unsigned int *\fIdepth_return\fP\^;
.SH ARGUMENTS
.IP \fIborder_width_return\fP 1i
Returns the border width in pixels.
.ds Dr , which can be a window or a pixmap
.IP \fId\fP 1i
Specifies the drawable\*(Dr.
.IP \fIdepth_return\fP 1i
Returns the depth of the drawable (bits per pixel for the object).
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIroot_return\fP 1i
Returns the root window.
.ds Wi whose current attributes you want to obtain
.IP \fIw\fP 1i
Specifies the window \*(Wi.
.IP \fIwidth_return\fP 1i
.br
.ns
.IP \fIheight_return\fP 1i
Return the drawable's dimensions (width and height).
.IP \fIwindow_attributes_return\fP 1i
Returns the specified window's attributes in the
.ZN XWindowAttributes
structure.
.IP \fIx_return\fP 1i
.br
.ns
.IP \fIy_return\fP 1i
Return the x and y coordinates that define the location of the drawable.
For a window,
these coordinates specify the upper-left outer corner relative to
its parent's origin.
For pixmaps, these coordinates are always zero.
.SH DESCRIPTION
The
.ZN XGetWindowAttributes
function returns the current attributes for the specified window to an
.ZN XWindowAttributes
structure.
.LP
.ZN XGetWindowAttributes
can generate
.ZN BadDrawable
and
.ZN BadWindow
errors.
.LP
The
.ZN XGetGeometry
function returns the root window and the current geometry of the drawable.
The geometry of the drawable includes the x and y coordinates, width and height,
border width, and depth.
These are described in the argument list.
It is legal to pass to this function a window whose class is
.ZN InputOnly .
.SH STRUCTURES
The
.ZN XWindowAttributes
structure contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int x, y; /* location of window */
int width, height; /* width and height of window */
int border_width; /* border width of window */
int depth; /* depth of window */
Visual *visual; /* the associated visual structure */
Window root; /* root of screen containing window */
int class; /* InputOutput, InputOnly*/
int bit_gravity; /* one of the bit gravity values */
int win_gravity; /* one of the window gravity values */
int backing_store; /* NotUseful, WhenMapped, Always */
unsigned long backing_planes; /* planes to be preserved if possible */
unsigned long backing_pixel; /* value to be used when restoring planes */
Bool save_under; /* boolean, should bits under be saved? */
Colormap colormap; /* color map to be associated with window */
Bool map_installed; /* boolean, is color map currently installed*/
int map_state; /* IsUnmapped, IsUnviewable, IsViewable */
long all_event_masks; /* set of events all people have interest in*/
long your_event_mask; /* my event mask */
long do_not_propagate_mask; /* set of events that should not propagate */
Bool override_redirect; /* boolean value for override-redirect */
Screen *screen; /* back pointer to correct screen */
} XWindowAttributes;
.De
.LP
The x and y members are set to the upper-left outer
corner relative to the parent window's origin.
The width and height members are set to the inside size of the window,
not including the border.
The border_width member is set to the window's border width in pixels.
The depth member is set to the depth of the window
(that is, bits per pixel for the object).
The visual member is a pointer to the screen's associated
.ZN Visual
structure.
The root member is set to the root window of the screen containing the window.
The class member is set to the window's class and can be either
.ZN InputOutput
or
.ZN InputOnly .
.LP
The bit_gravity member is set to the window's bit gravity
and can be one of the following:
.LP
.TS
lw(1.5i) lw(1.5i).
T{
.ZN ForgetGravity
T} T{
.ZN EastGravity
T}
T{
.ZN NorthWestGravity
T} T{
.ZN SouthWestGravity
T}
T{
.ZN NorthGravity
T} T{
.ZN SouthGravity
T}
T{
.ZN NorthEastGravity
T} T{
.ZN SouthEastGravity
T}
T{
.ZN WestGravity
T} T{
.ZN StaticGravity
T}
.ZN CenterGravity
.TE
.LP
The win_gravity member is set to the window's window gravity
and can be one of the following:
.LP
.TS
lw(1.5i) lw(1.5i).
T{
.ZN UnmapGravity
T} T{
.ZN EastGravity
T}
T{
.ZN NorthWestGravity
T} T{
.ZN SouthWestGravity
T}
T{
.ZN NorthGravity
T} T{
.ZN SouthGravity
T}
T{
.ZN NorthEastGravity
T} T{
.ZN SouthEastGravity
T}
T{
.ZN WestGravity
T} T{
.ZN StaticGravity
T}
.ZN CenterGravity
.TE
.LP
For additional information on gravity,
see section 3.3.
.LP
The backing_store member is set to indicate how the X server should maintain
the contents of a window
and can be
.ZN WhenMapped ,
.ZN Always ,
or
.ZN NotUseful .
The backing_planes member is set to indicate (with bits set to 1) which bit
planes of the window hold dynamic data that must be preserved in backing_stores
and during save_unders.
The backing_pixel member is set to indicate what values to use
for planes not set in backing_planes.
.LP
The save_under member is set to
.ZN True
or
.ZN False .
The colormap member is set to the colormap for the specified window and can be
a colormap ID or
.ZN None .
The map_installed member is set to indicate whether the colormap is
currently installed and can be
.ZN True
or
.ZN False .
The map_state member is set to indicate the state of the window and can be
.ZN IsUnmapped ,
.ZN IsUnviewable ,
or
.ZN IsViewable .
.ZN IsUnviewable
is used if the window is mapped but some ancestor is unmapped.
.LP
The all_event_masks member is set to the bitwise inclusive OR of all event
masks selected on the window by all clients.
The your_event_mask member is set to the bitwise inclusive OR of all event
masks selected by the querying client.
The do_not_propagate_mask member is set to the bitwise inclusive OR of the
set of events that should not propagate.
.LP
The override_redirect member is set to indicate whether this window overrides
structure control facilities and can be
.ZN True
or
.ZN False .
Window manager clients should ignore the window if this member is
.ZN True .
.LP
The screen member is set to a screen pointer that gives you a back pointer
to the correct screen.
This makes it easier to obtain the screen information without
having to loop over the root window fields to see which field matches.
.SH DIAGNOSTICS
.TP 1i
.ZN BadDrawable
A value for a Drawable argument does not name a defined Window or Pixmap.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XQueryPointer(3X11),
XQueryTree(3X11)
.br
\fI\*(xL\fP

521
man/XGetWindowProperty.man Normal file
View file

@ -0,0 +1,521 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XGetWindowProperty 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XGetWindowProperty, XListProperties, XChangeProperty, XRotateWindowProperties, XDeleteProperty \- obtain and change window properties
.SH SYNTAX
int XGetWindowProperty\^(\^\fIdisplay\fP, \fIw\fP\^, \fIproperty\fP\^, \fIlong_offset\fP\^, \fIlong_length\fP\^, \fIdelete\fP\^, \fIreq_type\fP\^,
.br
\fIactual_type_return\fP\^, \fIactual_format_return\fP\^, \fInitems_return\fP\^, \fIbytes_after_return\fP\^,
.br
\fIprop_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
Atom \fIproperty\fP\^;
.br
long \fIlong_offset\fP\^, \fIlong_length\fP\^;
.br
Bool \fIdelete\fP\^;
.br
Atom \fIreq_type\fP\^;
.br
Atom *\fIactual_type_return\fP\^;
.br
int *\fIactual_format_return\fP\^;
.br
unsigned long *\fInitems_return\fP\^;
.br
unsigned long *\fIbytes_after_return\fP\^;
.br
unsigned char **\fIprop_return\fP\^;
.LP
Atom *XListProperties\^(\^\fIdisplay\fP, \fIw\fP\^, \fInum_prop_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
int *\fInum_prop_return\fP\^;
.LP
XChangeProperty\^(\^\fIdisplay\fP, \fIw\fP\^, \fIproperty\fP\^, \fItype\fP\^, \fIformat\fP\^, \fImode\fP\^, \fIdata\fP\^, \fInelements\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
Atom \fIproperty\fP\^, \fItype\fP\^;
.br
int \fIformat\fP\^;
.br
int \fImode\fP\^;
.br
unsigned char *\fIdata\fP\^;
.br
int \fInelements\fP\^;
.LP
XRotateWindowProperties\^(\^\fIdisplay\fP, \fIw\fP, \fIproperties\fP, \fInum_prop\fP, \fInpositions\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
Atom \fIproperties\fP\^[]\^;
.br
int \fInum_prop\fP\^;
.br
int \fInpositions\fP\^;
.LP
XDeleteProperty\^(\^\fIdisplay\fP, \fIw\fP\^, \fIproperty\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
Atom \fIproperty\fP\^;
.SH ARGUMENTS
.IP \fIactual_format_return\fP 1i
Returns the actual format of the property.
.IP \fIactual_type_return\fP 1i
Returns the atom identifier that defines the actual type of the property.
.IP \fIbytes_after_return\fP 1i
Returns the number of bytes remaining to be read in the property if
a partial read was performed.
.IP \fIdata\fP 1i
Specifies the property data.
.IP \fIdelete\fP 1i
Specifies a Boolean value that determines whether the property is deleted.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIformat\fP 1i
Specifies whether the data should be viewed as a list
of 8-bit, 16-bit, or 32-bit quantities.
Possible values are 8, 16, and 32.
This information allows the X server to correctly perform
byte-swap operations as necessary.
If the format is 16-bit or 32-bit,
you must explicitly cast your data pointer to an (unsigned char *) in the call
to
.ZN XChangeProperty .
.IP \fIlong_length\fP 1i
Specifies the length in 32-bit multiples of the data to be retrieved.
.IP \fIlong_offset\fP 1i
Specifies the offset in the specified property (in 32-bit quantities)
where the data is to be retrieved.
.\" Changed name of this file to prop_mode.a on 1/13/87
.IP \fImode\fP 1i
Specifies the mode of the operation.
You can pass
.ZN PropModeReplace ,
.ZN PropModePrepend ,
or
.ZN PropModeAppend .
.IP \fInelements\fP 1i
Specifies the number of elements of the specified data format.
.IP \fInitems_return\fP 1i
Returns the actual number of 8-bit, 16-bit, or 32-bit items
stored in the prop_return data.
.IP \fInum_prop\fP 1i
Specifies the length of the properties array.
.IP \fInum_prop_return\fP 1i
Returns the length of the properties array.
.IP \fInpositions\fP 1i
Specifies the rotation amount.
.IP \fIprop_return\fP 1i
Returns the data in the specified format.
.IP \fIproperty\fP 1i
Specifies the property name.
.IP \fIproperties\fP 1i
Specifies the array of properties that are to be rotated.
.IP \fIreq_type\fP 1i
Specifies the atom identifier associated with the property type or
.ZN AnyPropertyType .
.IP \fItype\fP 1i
Specifies the type of the property.
The X server does not interpret the type but simply
passes it back to an application that later calls
.ZN XGetWindowProperty .
.ds Wi whose property you want to obtain, change, rotate or delete
.IP \fIw\fP 1i
Specifies the window \*(Wi.
.SH DESCRIPTION
The
.ZN XGetWindowProperty
function returns the actual type of the property; the actual format of the property;
the number of 8-bit, 16-bit, or 32-bit items transferred; the number of bytes remaining
to be read in the property; and a pointer to the data actually returned.
.ZN XGetWindowProperty
sets the return arguments as follows:
.IP \(bu 5
If the specified property does not exist for the specified window,
.ZN XGetWindowProperty
returns
.ZN None
to actual_type_return and the value zero to
actual_format_return and bytes_after_return.
The nitems_return argument is empty.
In this case, the delete argument is ignored.
.IP \(bu 5
If the specified property exists
but its type does not match the specified type,
.ZN XGetWindowProperty
returns the actual property type to actual_type_return,
the actual property format (never zero) to actual_format_return,
and the property length in bytes
(even if the actual_format_return is 16 or 32)
to bytes_after_return.
It also ignores the delete argument.
The nitems_return argument is empty.
.IP \(bu 5
If the specified property exists and either you assign
.ZN AnyPropertyType
to the req_type argument or the specified type matches the actual property type,
.ZN XGetWindowProperty
returns the actual property type to actual_type_return and the actual
property format (never zero) to actual_format_return.
It also returns a value to bytes_after_return and nitems_return, by
defining the following
values:
.IP
.nf
N = actual length of the stored property in bytes
(even if the format is 16 or 32)
I = 4 * long_offset
T = N - I
L = MINIMUM(T, 4 * long_length)
A = N - (I + L)
.fi
.IP
The returned value starts at byte index I in the property (indexing
from zero), and its length in bytes is L.
If the value for long_offset causes L to be negative,
a
.ZN BadValue
error results.
The value of bytes_after_return is A,
giving the number of trailing unread bytes in the stored property.
.LP
If the returned format is 8, the returned data is represented as a
.ZN char
array.
If the returned format is 16, the returned data is represented as a
.ZN short
array and should be cast to that type to obtain the elements.
If the returned format is 32, the returned data is represented as a
.ZN long
array and should be cast to that type to obtain the elements.
.LP
.ZN XGetWindowProperty
always allocates one extra byte in prop_return
(even if the property is zero length)
and sets it to zero so that simple properties consisting of characters
do not have to be copied into yet another string before use.
.LP
If delete is
.ZN True
and bytes_after_return is zero,
.ZN XGetWindowProperty
deletes the property
from the window and generates a
.ZN PropertyNotify
event on the window.
.LP
The function returns
.ZN Success
if it executes successfully.
To free the resulting data,
use
.ZN XFree .
.LP
.ZN XGetWindowProperty
can generate
.ZN BadAtom ,
.ZN BadValue ,
and
.ZN BadWindow
errors.
.LP
The
.ZN XListProperties
function returns a pointer to an array of atom properties that are defined for
the specified window or returns NULL if no properties were found.
To free the memory allocated by this function, use
.ZN XFree .
.LP
.ZN XListProperties
can generate a
.ZN BadWindow
error.
.LP
The
.ZN XChangeProperty
function alters the property for the specified window and
causes the X server to generate a
.ZN PropertyNotify
event on that window.
.ZN XChangeProperty
performs the following:
.IP \(bu 5
If mode is
.ZN PropModeReplace ,
.ZN XChangeProperty
discards the previous property value and stores the new data.
.IP \(bu 5
If mode is
.ZN PropModePrepend
or
.ZN PropModeAppend ,
.ZN XChangeProperty
inserts the specified data before the beginning of the existing data
or onto the end of the existing data, respectively.
The type and format must match the existing property value,
or a
.ZN BadMatch
error results.
If the property is undefined,
it is treated as defined with the correct type and
format with zero-length data.
.LP
If the specified format is 8, the property data must be a
.ZN char
array.
If the specified format is 16, the property data must be a
.ZN short
array.
If the specified format is 32, the property data must be a
.ZN long
array.
.LP
The lifetime of a property is not tied to the storing client.
Properties remain until explicitly deleted, until the window is destroyed,
or until the server resets.
For a discussion of what happens when the connection to the X server is closed,
see section 2.6.
The maximum size of a property is server dependent and can vary dynamically
depending on the amount of memory the server has available.
(If there is insufficient space, a
.ZN BadAlloc
error results.)
.LP
.ZN XChangeProperty
can generate
.ZN BadAlloc ,
.ZN BadAtom ,
.ZN BadMatch ,
.ZN BadValue ,
and
.ZN BadWindow
errors.
.LP
The
.ZN XRotateWindowProperties
function allows you to rotate properties on a window and causes
the X server to generate
.ZN PropertyNotify
events.
If the property names in the properties array are viewed as being numbered
starting from zero and if there are num_prop property names in the list,
then the value associated with property name I becomes the value associated
with property name (I + npositions) mod N for all I from zero to N \- 1.
The effect is to rotate the states by npositions places around the virtual ring
of property names (right for positive npositions,
left for negative npositions).
If npositions mod N is nonzero,
the X server generates a
.ZN PropertyNotify
event for each property in the order that they are listed in the array.
If an atom occurs more than once in the list or no property with that
name is defined for the window,
a
.ZN BadMatch
error results.
If a
.ZN BadAtom
or
.ZN BadMatch
error results,
no properties are changed.
.LP
.ZN XRotateWindowProperties
can generate
.ZN BadAtom ,
.ZN BadMatch ,
and
.ZN BadWindow
errors.
.LP
The
.ZN XDeleteProperty
function deletes the specified property only if the
property was defined on the specified window
and causes the X server to generate a
.ZN PropertyNotify
event on the window unless the property does not exist.
.LP
.ZN XDeleteProperty
can generate
.ZN BadAtom
and
.ZN BadWindow
errors.
.SH DIAGNOSTICS
.TP 1i
.ZN BadAlloc
The server failed to allocate the requested resource or server memory.
.TP 1i
.ZN BadAtom
A value for an Atom argument does not name a defined Atom.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XFree(3X11),
XInternAtom(3X11)
.br
\fI\*(xL\fP

330
man/XGrabButton.man Normal file
View file

@ -0,0 +1,330 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XGrabButton 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XGrabButton, XUngrabButton \- grab pointer buttons
.SH SYNTAX
XGrabButton\^(\^\fIdisplay\fP, \fIbutton\fP\^, \fImodifiers\fP\^, \fIgrab_window\fP\^, \fIowner_events\fP\^, \fIevent_mask\fP\^,
.br
\fIpointer_mode\fP\^, \fIkeyboard_mode\fP\^, \fIconfine_to\fP\^, \fIcursor\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
unsigned int \fIbutton\fP\^;
.br
unsigned int \fImodifiers\fP\^;
.br
Window \fIgrab_window\fP\^;
.br
Bool \fIowner_events\fP\^;
.br
unsigned int \fIevent_mask\fP\^;
.br
int \fIpointer_mode\fP\^, \fIkeyboard_mode\fP\^;
.br
Window \fIconfine_to\fP\^;
.br
Cursor \fIcursor\fP\^;
.LP
XUngrabButton\^(\^\fIdisplay\fP, \fIbutton\fP\^, \fImodifiers\fP\^, \fIgrab_window\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
unsigned int \fIbutton\fP\^;
.br
unsigned int \fImodifiers\fP\^;
.br
Window \fIgrab_window\fP\^;
.SH ARGUMENTS
.ds Bu grabbed or released
.IP \fIbutton\fP 1i
Specifies the pointer button that is to be \*(Bu or
.ZN AnyButton .
.IP \fIconfine_to\fP 1i
Specifies the window to confine the pointer in or
.ZN None .
.IP \fIcursor\fP 1i
Specifies the cursor that is to be displayed or
.ZN None .
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIevent_mask\fP 1i
Specifies which pointer events are reported to the client.
The mask is the bitwise inclusive OR of the valid pointer event mask bits.
.IP \fIgrab_window\fP 1i
Specifies the grab window.
.IP \fIkeyboard_mode\fP 1i
Specifies further processing of keyboard events.
You can pass
.ZN GrabModeSync
or
.ZN GrabModeAsync .
.IP \fImodifiers\fP 1i
Specifies the set of keymasks or
.ZN AnyModifier .
The mask is the bitwise inclusive OR of the valid keymask bits.
.IP \fIowner_events\fP 1i
Specifies a Boolean value that indicates whether the pointer
events are to be reported as usual or reported with respect to the grab window
if selected by the event mask.
.IP \fIpointer_mode\fP 1i
Specifies further processing of pointer events.
You can pass
.ZN GrabModeSync
or
.ZN GrabModeAsync .
.SH DESCRIPTION
The
.ZN XGrabButton
function establishes a passive grab.
In the future,
the pointer is actively grabbed (as for
.ZN XGrabPointer ),
the last-pointer-grab time is set to the time at which the button was pressed
(as transmitted in the
.ZN ButtonPress
event), and the
.ZN ButtonPress
event is reported if all of the following conditions are true:
.IP \(bu 5
The pointer is not grabbed, and the specified button is logically pressed
when the specified modifier keys are logically down,
and no other buttons or modifier keys are logically down.
.IP \(bu 5
The grab_window contains the pointer.
.IP \(bu 5
The confine_to window (if any) is viewable.
.IP \(bu 5
A passive grab on the same button/key combination does not exist
on any ancestor of grab_window.
.LP
The interpretation of the remaining arguments is as for
.ZN XGrabPointer .
The active grab is terminated automatically when the logical state of the
pointer has all buttons released
(independent of the state of the logical modifier keys).
.LP
Note that the logical state of a device (as seen by client applications)
may lag the physical state if device event processing is frozen.
.LP
This request overrides all previous grabs by the same client on the same
button/key combinations on the same window.
A modifiers of
.ZN AnyModifier
is equivalent to issuing the grab request for all
possible modifier combinations (including the combination of no modifiers).
It is not required that all modifiers specified have currently assigned
KeyCodes.
A button of
.ZN AnyButton
is equivalent to
issuing the request for all possible buttons.
Otherwise, it is not required that the specified button currently be assigned
to a physical button.
.LP
If some other client has already issued a
.ZN XGrabButton
with the same button/key combination on the same window, a
.ZN BadAccess
error results.
When using
.ZN AnyModifier
or
.ZN AnyButton ,
the request fails completely,
and a
.ZN BadAccess
error results (no grabs are
established) if there is a conflicting grab for any combination.
.ZN XGrabButton
has no effect on an active grab.
.LP
.ZN XGrabButton
can generate
.ZN BadCursor ,
.ZN BadValue ,
and
.ZN BadWindow
errors.
.LP
The
.ZN XUngrabButton
function releases the passive button/key combination on the specified window if
it was grabbed by this client.
A modifiers of
.ZN AnyModifier
is
equivalent to issuing
the ungrab request for all possible modifier combinations, including
the combination of no modifiers.
A button of
.ZN AnyButton
is equivalent to issuing the
request for all possible buttons.
.ZN XUngrabButton
has no effect on an active grab.
.LP
.ZN XUngrabButton
can generate
.ZN BadValue
and
.ZN BadWindow
errors.
.SH DIAGNOSTICS
.TP 1i
.ZN BadCursor
A value for a Cursor argument does not name a defined Cursor.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XAllowEvents(3X11),
XGrabPointer(3X11),
XGrabKey(3X11),
XGrabKeyboard(3X11),
.br
\fI\*(xL\fP

312
man/XGrabKey.man Normal file
View file

@ -0,0 +1,312 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XGrabKey 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XGrabKey, XUngrabKey \- grab keyboard keys
.SH SYNTAX
XGrabKey\^(\^\fIdisplay\fP, \fIkeycode\fP\^, \fImodifiers\fP\^, \fIgrab_window\fP\^, \fIowner_events\fP\^, \fIpointer_mode\fP\^,
.br
\fIkeyboard_mode\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
int \fIkeycode\fP\^;
.br
unsigned int \fImodifiers\fP\^;
.br
Window \fIgrab_window\fP\^;
.br
Bool \fIowner_events\fP\^;
.br
int \fIpointer_mode\fP\^, \fIkeyboard_mode\fP\^;
.LP
XUngrabKey\^(\^\fIdisplay\fP, \fIkeycode\fP\^, \fImodifiers\fP\^, \fIgrab_window\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
int \fIkeycode\fP\^;
.br
unsigned int \fImodifiers\fP\^;
.br
Window \fIgrab_window\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIgrab_window\fP 1i
Specifies the grab window.
.IP \fIkeyboard_mode\fP 1i
Specifies further processing of keyboard events.
You can pass
.ZN GrabModeSync
or
.ZN GrabModeAsync .
.IP \fIkeycode\fP 1i
Specifies the KeyCode or
.ZN AnyKey .
.IP \fImodifiers\fP 1i
Specifies the set of keymasks or
.ZN AnyModifier .
The mask is the bitwise inclusive OR of the valid keymask bits.
.IP \fIowner_events\fP 1i
Specifies a Boolean value that indicates whether the keyboard events
are to be reported as usual.
.IP \fIpointer_mode\fP 1i
Specifies further processing of pointer events.
You can pass
.ZN GrabModeSync
or
.ZN GrabModeAsync .
.SH DESCRIPTION
The
.ZN XGrabKey
function establishes a passive grab on the keyboard.
In the future,
the keyboard is actively grabbed (as for
.ZN XGrabKeyboard ),
the last-keyboard-grab time is set to the time at which the key was pressed
(as transmitted in the
.ZN KeyPress
event), and the
.ZN KeyPress
event is reported if all of the following conditions are true:
.IP \(bu 5
The keyboard is not grabbed and the specified key
(which can itself be a modifier key) is logically pressed
when the specified modifier keys are logically down,
and no other modifier keys are logically down.
.IP \(bu 5
Either the grab_window is an ancestor of (or is) the focus window,
or the grab_window is a descendant of the focus window and contains the pointer.
.IP \(bu 5
A passive grab on the same key combination does not exist
on any ancestor of grab_window.
.LP
The interpretation of the remaining arguments is as for
.ZN XGrabKeyboard .
The active grab is terminated automatically when the logical state of the
keyboard has the specified key released
(independent of the logical state of the modifier keys).
.LP
Note that the logical state of a device (as seen by client applications)
may lag the physical state if device event processing is frozen.
.LP
A modifiers argument of
.ZN AnyModifier
is equivalent to issuing the request for all
possible modifier combinations (including the combination of no
modifiers).
It is not required that all modifiers specified have
currently assigned KeyCodes.
A keycode argument of
.ZN AnyKey
is equivalent to issuing
the request for all possible KeyCodes.
Otherwise, the specified keycode must be in
the range specified by min_keycode and max_keycode in the connection
setup,
or a
.ZN BadValue
error results.
.LP
If some other client has issued a
.ZN XGrabKey
with the same key combination on the same window, a
.ZN BadAccess
error results.
When using
.ZN AnyModifier
or
.ZN AnyKey ,
the request fails completely,
and a
.ZN BadAccess
error results (no grabs are established)
if there is a conflicting grab for any combination.
.LP
.ZN XGrabKey
can generate
.ZN BadAccess ,
.ZN BadValue ,
and
.ZN BadWindow
errors.
.LP
The
.ZN XUngrabKey
function releases the key combination on the specified window if it was grabbed
by this client.
It has no effect on an active grab.
A modifiers of
.ZN AnyModifier
is equivalent to issuing
the request for all possible modifier combinations
(including the combination of no modifiers).
A keycode argument of
.ZN AnyKey
is equivalent to issuing the request for all possible key codes.
.LP
.ZN XUngrabKey
can generate
.ZN BadValue
and
.ZN BadWindow
error.
.SH DIAGNOSTICS
.TP 1i
.ZN BadAccess
A client attempted
to grab a key/button combination already grabbed by another client.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XAllowAccess(3X11),
XGrabButton(3X11),
XGrabKeyboard(3X11),
XGrabPointer(3X11)
.br
\fI\*(xL\fP

307
man/XGrabKeyboard.man Normal file
View file

@ -0,0 +1,307 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XGrabKeyboard 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XGrabKeyboard, XUngrabKeyboard \- grab the keyboard
.SH SYNTAX
int XGrabKeyboard\^(\^\fIdisplay\fP, \fIgrab_window\fP\^, \fIowner_events\fP\^, \fIpointer_mode\fP\^, \fIkeyboard_mode\fP\^, \fItime\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIgrab_window\fP\^;
.br
Bool \fIowner_events\fP\^;
.br
int \fIpointer_mode\fP\^, \fIkeyboard_mode\fP\^;
.br
Time \fItime\fP\^;
.LP
XUngrabKeyboard\^(\^\fIdisplay\fP, \fItime\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Time \fItime\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIgrab_window\fP 1i
Specifies the grab window.
.IP \fIkeyboard_mode\fP 1i
Specifies further processing of keyboard events.
You can pass
.ZN GrabModeSync
or
.ZN GrabModeAsync .
.IP \fIowner_events\fP 1i
Specifies a Boolean value that indicates whether the keyboard events
are to be reported as usual.
.IP \fIpointer_mode\fP 1i
Specifies further processing of pointer events.
You can pass
.ZN GrabModeSync
or
.ZN GrabModeAsync .
.IP \fItime\fP 1i
Specifies the time.
You can pass either a timestamp or
.ZN CurrentTime .
.SH DESCRIPTION
The
.ZN XGrabKeyboard
function actively grabs control of the keyboard and generates
.ZN FocusIn
and
.ZN FocusOut
events.
Further key events are reported only to the
grabbing client.
.ZN XGrabKeyboard
overrides any active keyboard grab by this client.
If owner_events is
.ZN False ,
all generated key events are reported with
respect to grab_window.
If owner_events is
.ZN True
and if a generated
key event would normally be reported to this client, it is reported
normally; otherwise, the event is reported with respect to the
grab_window.
Both
.ZN KeyPress
and
.ZN KeyRelease
events are always reported,
independent of any event selection made by the client.
.LP
If the keyboard_mode argument is
.ZN GrabModeAsync ,
keyboard event processing continues
as usual.
If the keyboard is currently frozen by this client,
then processing of keyboard events is resumed.
If the keyboard_mode argument is
.ZN GrabModeSync ,
the state of the keyboard (as seen by client applications) appears to freeze,
and the X server generates no further keyboard events until the
grabbing client issues a releasing
.ZN XAllowEvents
call or until the keyboard grab is released.
Actual keyboard changes are not lost while the keyboard is frozen;
they are simply queued in the server for later processing.
.LP
If pointer_mode is
.ZN GrabModeAsync ,
pointer event processing is unaffected
by activation of the grab.
If pointer_mode is
.ZN GrabModeSync ,
the state of the pointer (as seen by client applications) appears to freeze,
and the X server generates no further pointer events
until the grabbing client issues a releasing
.ZN XAllowEvents
call or until the keyboard grab is released.
Actual pointer changes are not lost while the pointer is frozen;
they are simply queued in the server for later processing.
.LP
If the keyboard is actively grabbed by some other client,
.ZN XGrabKeyboard
fails and returns
.ZN AlreadyGrabbed .
If grab_window is not viewable,
it fails and returns
.ZN GrabNotViewable .
If the keyboard is frozen by an active grab of another client,
it fails and returns
.ZN GrabFrozen .
If the specified time is earlier than the last-keyboard-grab time
or later than the current X server time,
it fails and returns
.ZN GrabInvalidTime .
Otherwise, the last-keyboard-grab time is set to the specified time
.Pn ( CurrentTime
is replaced by the current X server time).
.LP
.ZN XGrabKeyboard
can generate
.ZN BadValue
and
.ZN BadWindow
errors.
.LP
The
.ZN XUngrabKeyboard
function
releases the keyboard and any queued events if this client has it actively grabbed from
either
.ZN XGrabKeyboard
or
.ZN XGrabKey .
.ZN XUngrabKeyboard
does not release the keyboard and any queued events
if the specified time is earlier than
the last-keyboard-grab time or is later than the current X server time.
It also generates
.ZN FocusIn
and
.ZN FocusOut
events.
The X server automatically performs an
.ZN UngrabKeyboard
request if the event window for an
active keyboard grab becomes not viewable.
.SH DIAGNOSTICS
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XAllowEvents(3X11),
XGrabButton(3X11),
XGrabKey(3X11),
XGrabPointer(3X11)
.br
\fI\*(xL\fP

388
man/XGrabPointer.man Normal file
View file

@ -0,0 +1,388 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XGrabPointer 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XGrabPointer, XUngrabPointer, XChangeActivePointerGrab \- grab the pointer
.SH SYNTAX
int XGrabPointer\^(\^\fIdisplay\fP, \fIgrab_window\fP\^, \fIowner_events\fP\^, \fIevent_mask\fP\^, \fIpointer_mode\fP\^,
\fIkeyboard_mode\fP\^, \fIconfine_to\fP\^, \fIcursor\fP\^, \fItime\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIgrab_window\fP\^;
.br
Bool \fIowner_events\fP\^;
.br
unsigned int \fIevent_mask\fP\^;
.br
int \fIpointer_mode\fP\^, \fIkeyboard_mode\fP\^;
.br
Window \fIconfine_to\fP\^;
.br
Cursor \fIcursor\fP\^;
.br
Time \fItime\fP\^;
.LP
XUngrabPointer\^(\^\fIdisplay\fP, \fItime\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Time \fItime\fP\^;
.LP
XChangeActivePointerGrab\^(\^\fIdisplay\fP, \fIevent_mask\fP\^, \fIcursor\fP\^, \fItime\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
unsigned int \fIevent_mask\fP\^;
.br
Cursor \fIcursor\fP\^;
.br
Time \fItime\fP\^;
.SH ARGUMENTS
.IP \fIconfine_to\fP 1i
Specifies the window to confine the pointer in or
.ZN None .
.IP \fIcursor\fP 1i
Specifies the cursor that is to be displayed during the grab or
.ZN None .
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIevent_mask\fP 1i
Specifies which pointer events are reported to the client.
The mask is the bitwise inclusive OR of the valid pointer event mask bits.
.IP \fIgrab_window\fP 1i
Specifies the grab window.
.IP \fIkeyboard_mode\fP 1i
Specifies further processing of keyboard events.
You can pass
.ZN GrabModeSync
or
.ZN GrabModeAsync .
.IP \fIowner_events\fP 1i
Specifies a Boolean value that indicates whether the pointer
events are to be reported as usual or reported with respect to the grab window
if selected by the event mask.
.IP \fIpointer_mode\fP 1i
Specifies further processing of pointer events.
You can pass
.ZN GrabModeSync
or
.ZN GrabModeAsync .
.IP \fItime\fP 1i
Specifies the time.
You can pass either a timestamp or
.ZN CurrentTime .
.SH DESCRIPTION
The
.ZN XGrabPointer
function actively grabs control of the pointer and returns
.ZN GrabSuccess
if the grab was successful.
Further pointer events are reported only to the grabbing client.
.ZN XGrabPointer
overrides any active pointer grab by this client.
If owner_events is
.ZN False ,
all generated pointer events
are reported with respect to grab_window and are reported only if
selected by event_mask.
If owner_events is
.ZN True
and if a generated
pointer event would normally be reported to this client,
it is reported as usual.
Otherwise, the event is reported with respect to the
grab_window and is reported only if selected by event_mask.
For either value of owner_events, unreported events are discarded.
.LP
If the pointer_mode is
.ZN GrabModeAsync ,
pointer event processing continues as usual.
If the pointer is currently frozen by this client,
the processing of events for the pointer is resumed.
If the pointer_mode is
.ZN GrabModeSync ,
the state of the pointer, as seen by
client applications,
appears to freeze, and the X server generates no further pointer events
until the grabbing client calls
.ZN XAllowEvents
or until the pointer grab is released.
Actual pointer changes are not lost while the pointer is frozen;
they are simply queued in the server for later processing.
.LP
If the keyboard_mode is
.ZN GrabModeAsync ,
keyboard event processing is unaffected by activation of the grab.
If the keyboard_mode is
.ZN GrabModeSync ,
the state of the keyboard, as seen by
client applications,
appears to freeze, and the X server generates no further keyboard events
until the grabbing client calls
.ZN XAllowEvents
or until the pointer grab is released.
Actual keyboard changes are not lost while the pointer is frozen;
they are simply queued in the server for later processing.
.LP
If a cursor is specified, it is displayed regardless of what
window the pointer is in.
If
.ZN None
is specified,
the normal cursor for that window is displayed
when the pointer is in grab_window or one of its subwindows;
otherwise, the cursor for grab_window is displayed.
.LP
If a confine_to window is specified,
the pointer is restricted to stay contained in that window.
The confine_to window need have no relationship to the grab_window.
If the pointer is not initially in the confine_to window,
it is warped automatically to the closest edge
just before the grab activates and enter/leave events are generated as usual.
If the confine_to window is subsequently reconfigured,
the pointer is warped automatically, as necessary,
to keep it contained in the window.
.LP
The time argument allows you to avoid certain circumstances that come up
if applications take a long time to respond or if there are long network
delays.
Consider a situation where you have two applications, both
of which normally grab the pointer when clicked on.
If both applications specify the timestamp from the event,
the second application may wake up faster and successfully grab the pointer
before the first application.
The first application then will get an indication that the other application
grabbed the pointer before its request was processed.
.LP
.ZN XGrabPointer
generates
.ZN EnterNotify
and
.ZN LeaveNotify
events.
.LP
Either if grab_window or confine_to window is not viewable
or if the confine_to window lies completely outside the boundaries of the root
window,
.ZN XGrabPointer
fails and returns
.ZN GrabNotViewable .
If the pointer is actively grabbed by some other client,
it fails and returns
.ZN AlreadyGrabbed .
If the pointer is frozen by an active grab of another client,
it fails and returns
.ZN GrabFrozen .
If the specified time is earlier than the last-pointer-grab time or later
than the current X server time, it fails and returns
.ZN GrabInvalidTime .
Otherwise, the last-pointer-grab time is set to the specified time
.Pn ( CurrentTime
is replaced by the current X server time).
.LP
.ZN XGrabPointer
can generate
.ZN BadCursor ,
.ZN BadValue ,
and
.ZN BadWindow
errors.
.LP
The
.ZN XUngrabPointer
function releases the pointer and any queued events
if this client has actively grabbed the pointer from
.ZN XGrabPointer ,
.ZN XGrabButton ,
or from a normal button press.
.ZN XUngrabPointer
does not release the pointer if the specified
time is earlier than the last-pointer-grab time or is later than the
current X server time.
It also generates
.ZN EnterNotify
and
.ZN LeaveNotify
events.
The X server performs an
.ZN UngrabPointer
request automatically if the event window or confine_to window
for an active pointer grab becomes not viewable
or if window reconfiguration causes the confine_to window to lie completely
outside the boundaries of the root window.
.LP
The
.ZN XChangeActivePointerGrab
function changes the specified dynamic parameters if the pointer is actively
grabbed by the client and if the specified time is no earlier than the
last-pointer-grab time and no later than the current X server time.
This function has no effect on the passive parameters of a
.ZN XGrabButton .
The interpretation of event_mask and cursor is the same as described in
.ZN XGrabPointer .
.LP
.ZN XChangeActivePointerGrab
can generate a
.ZN BadCursor
and
.ZN BadValue
error.
.SH DIAGNOSTICS
.TP 1i
.ZN BadCursor
A value for a Cursor argument does not name a defined Cursor.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XAllowEvents(3X11),
XGrabButton(3X11),
XGrabKey(3X11),
XGrabKeyboard(3X11)
.br
\fI\*(xL\fP

172
man/XGrabServer.man Normal file
View file

@ -0,0 +1,172 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XGrabServer 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XGrabServer, XUngrabServer \- grab the server
.SH SYNTAX
XGrabServer\^(\^\fIdisplay\fP\^)
.br
Display *\fIdisplay\fP\^;
.LP
XUngrabServer\^(\^\fIdisplay\fP\^)
.br
Display *\fIdisplay\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.SH DESCRIPTION
The
.ZN XGrabServer
function disables processing of requests and close downs on all other
connections than the one this request arrived on.
You should not grab the X server any more than is absolutely necessary.
.LP
The
.ZN XUngrabServer
function restarts processing of requests and close downs on other connections.
You should avoid grabbing the X server as much as possible.
.SH "SEE ALSO"
XGrabButton(3X11),
XGrabKey(3X11),
XGrabKeyboard(3X11),
XGrabPointer(3X11)
.br
\fI\*(xL\fP

View file

@ -0,0 +1,275 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XGraphicsExposeEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XGraphicsExposeEvent, XNoExposeEvent \- GraphicsExpose and NoExpose event structures
.SH STRUCTURES
The structures for
.ZN GraphicsExpose
and
.ZN NoExpose
events contain:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* GraphicsExpose */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Drawable drawable;
int x, y;
int width, height;
int count; /* if nonzero, at least this many more */
int major_code; /* core is CopyArea or CopyPlane */
int minor_code; /* not defined in the core */
} XGraphicsExposeEvent;
.De
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* NoExpose */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Drawable drawable;
int major_code; /* core is CopyArea or CopyPlane */
int minor_code; /* not defined in the core */
} XNoExposeEvent;
.De
.LP
When you receive these events,
their structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
Both structures have these common members: drawable, major_code, and minor_code.
The drawable member is set to the drawable of the destination region on
which the graphics request was to be performed.
The major_code member is set to the graphics request initiated by the client
and can be either
.ZN X_CopyArea
or
.ZN X_CopyPlane .
If it is
.ZN X_CopyArea ,
a call to
.ZN XCopyArea
initiated the request.
If it is
.ZN X_CopyPlane ,
a call to
.ZN XCopyPlane
initiated the request.
These constants are defined in
.hN X11/Xproto.h .
The minor_code member,
like the major_code member,
indicates which graphics request was initiated by
the client.
However, the minor_code member is not defined by the core
X protocol and will be zero in these cases,
although it may be used by an extension.
.LP
The
.ZN XGraphicsExposeEvent
structure has these additional members: x, y, width, height, and count.
The x and y members are set to the coordinates relative to the drawable's origin
and indicate the upper-left corner of the rectangle.
The width and height members are set to the size (extent) of the rectangle.
The count member is set to the number of
.ZN GraphicsExpose
events to follow.
If count is zero, no more
.ZN GraphicsExpose
events follow for this window.
However, if count is nonzero, at least that number of
.ZN GraphicsExpose
events (and possibly more) are to follow for this window.
.SH "SEE ALSO"
XAnyEvent(3X11),
XButtonEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateEvent(3X11),
XCirculateRequestEvent(3X11),
XColormapEvent(3X11),
XConfigureEvent(3X11),
XConfigureRequestEvent(3X11),
XCopyArea(3X11),
XCrossingEvent(3X11),
XDestroyWindowEvent(3X11),
XErrorEvent(3X11),
XExposeEvent(3X11),
XFocusChangeEvent(3X11),
XGravityEvent(3X11),
XKeymapEvent(3X11),
XMapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

223
man/XGravityEvent.man Normal file
View file

@ -0,0 +1,223 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XGravityEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XGravityEvent \- GravityNotify event structure
.SH STRUCTURES
The structure for
.ZN GravityNotify
events contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* GravityNotify */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window event;
Window window;
int x, y;
} XGravityEvent;
.De
.LP
When you receive this event,
the structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
The event member is set either to the window that was moved or to its parent,
depending on whether
.ZN StructureNotify
or
.ZN SubstructureNotify
was selected.
The window member is set to the child window that was moved.
The x and y members are set to the coordinates relative to the
new parent window's origin
and indicate the position of the upper-left outside corner of the
window.
.SH "SEE ALSO"
XAnyEvent(3X11),
XButtonEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateEvent(3X11),
XCirculateRequestEvent(3X11),
XColormapEvent(3X11),
XConfigureEvent(3X11),
XConfigureRequestEvent(3X11),
XCrossingEvent(3X11),
XDestroyWindowEvent(3X11),
XErrorEvent(3X11),
XExposeEvent(3X11),
XFocusChangeEvent(3X11),
XGraphicsExposeEvent(3X11),
XKeymapEvent(3X11),
XMapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

273
man/XIconifyWindow.man Normal file
View file

@ -0,0 +1,273 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XIconifyWindow 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XIconifyWindow, XWithdrawWindow, XReconfigureWMWindow \- manipulate top-level windows
.SH SYNTAX
Status XIconifyWindow\^(\^\fIdisplay\fP, \fIw\fP, \fIscreen_number\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP;
.br
int \fIscreen_number\fP\^;
.LP
Status XWithdrawWindow\^(\^\fIdisplay\fP, \fIw\fP, \fIscreen_number\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
int \fIscreen_number\fP\^;
.LP
Status XReconfigureWMWindow\^(\^\fIdisplay\fP, \fIw\fP, \fIscreen_number\fP, \
\fIvalue_mask\fP, \fIvalues\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
int \fIscreen_number\fP\^;
.br
unsigned int \fIvalue_mask\fP\^;
.br
XWindowChanges *\fIvalues\fP;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIscreen_number\fP 1i
Specifies the appropriate screen number on the host server.
.IP \fIvalue_mask\fP 1i
Specifies which values are to be set using information in
the values structure.
This mask is the bitwise inclusive OR of the valid configure window values bits.
.IP \fIvalues\fP 1i
Specifies the
.ZN XWindowChanges
structure.
.IP \fIw\fP 1i
Specifies the window.
.SH DESCRIPTION
The
.ZN XIconifyWindow
function sends a WM_CHANGE_STATE
.ZN ClientMessage
event with a format of 32 and a first data element of
.ZN IconicState
(as described in section 4.1.4 of the
\fIInter-Client Communication Conventions Manual\fP)
and a window of w
to the root window of the specified screen
with an event mask set to
.ZN SubstructureNotifyMask |
.ZN SubstructureRedirectMask .
Window managers may elect to receive this message and
if the window is in its normal state,
may treat it as a request to change the window's state from normal to iconic.
If the WM_CHANGE_STATE property cannot be interned,
.ZN XIconifyWindow
does not send a message and returns a zero status.
It returns a nonzero status if the client message is sent successfully;
otherwise, it returns a zero status.
.LP
The
.ZN XWithdrawWindow
function unmaps the specified window
and sends a synthetic
.ZN UnmapNotify
event to the root window of the specified screen.
Window managers may elect to receive this message
and may treat it as a request to change the window's state to withdrawn.
When a window is in the withdrawn state,
neither its normal nor its iconic representations is visible.
It returns a nonzero status if the
.ZN UnmapNotify
event is successfully sent;
otherwise, it returns a zero status.
.LP
.ZN XWithdrawWindow
can generate a
.ZN BadWindow
error.
.LP
The
.ZN XReconfigureWMWindow
function issues a
.ZN ConfigureWindow
request on the specified top-level window.
If the stacking mode is changed and the request fails with a
.ZN BadMatch
error,
the error is trapped by Xlib and a synthetic
.ZN ConfigureRequestEvent
containing the same configuration parameters is sent to the root
of the specified window.
Window managers may elect to receive this event
and treat it as a request to reconfigure the indicated window.
It returns a nonzero status if the request or event is successfully sent;
otherwise, it returns a zero status.
.LP
.ZN XReconfigureWMWindow
can generate
.ZN BadValue
and
.ZN BadWindow
errors.
.SH DIAGNOSTICS
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XChangeWindowAttributes(3X11),
XConfigureWindow(3X11),
XCreateWindow(3X11),
XDestroyWindow(3X11),
XRaiseWindow(3X11),
XMapWindow(3X11),
XUnmapWindow(3X11)
.br
\fI\*(xL\fP

234
man/XIfEvent.man Normal file
View file

@ -0,0 +1,234 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XIfEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XIfEvent, XCheckIfEvent, XPeekIfEvent \- check the event queue with a predicate procedure
.SH SYNTAX
XIfEvent\^(\^\fIdisplay\fP, \fIevent_return\fP, \fIpredicate\fP, \fIarg\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XEvent *\fIevent_return\fP\^;
.br
Bool (\^*\fIpredicate\fP\^)\^(\^)\^;
.br
XPointer \fIarg\fP\^;
.LP
Bool XCheckIfEvent\^(\^\fIdisplay\fP, \fIevent_return\fP, \fIpredicate\fP, \fIarg\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XEvent *\fIevent_return\fP\^;
.br
Bool (\^*\fIpredicate\fP\^)\^(\^)\^;
.br
XPointer \fIarg\fP\^;
.LP
XPeekIfEvent\^(\^\fIdisplay\fP, \fIevent_return\fP, \fIpredicate\fP, \fIarg\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XEvent *\fIevent_return\fP\^;
.br
Bool (\^*\fIpredicate\fP\^)\^(\^)\^;
.br
XPointer \fIarg\fP\^;
.SH ARGUMENTS
.IP \fIarg\fP 1i
Specifies the user-supplied argument that will be passed to the predicate procedure.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.ds Ev \ either a copy of or
.IP \fIevent_return\fP 1i
Returns\*(Ev the matched event's associated structure.
.IP \fIpredicate\fP 1i
Specifies the procedure that is to be called to determine
if the next event in the queue matches what you want.
.SH DESCRIPTION
The
.ZN XIfEvent
function completes only when the specified predicate
procedure returns
.ZN True
for an event,
which indicates an event in the queue matches.
.ZN XIfEvent
flushes the output buffer if it blocks waiting for additional events.
.ZN XIfEvent
removes the matching event from the queue
and copies the structure into the client-supplied
.ZN XEvent
structure.
.LP
When the predicate procedure finds a match,
.ZN XCheckIfEvent
copies the matched event into the client-supplied
.ZN XEvent
structure and returns
.ZN True .
(This event is removed from the queue.)
If the predicate procedure finds no match,
.ZN XCheckIfEvent
returns
.ZN False ,
and the output buffer will have been flushed.
All earlier events stored in the queue are not discarded.
.LP
The
.ZN XPeekIfEvent
function returns only when the specified predicate
procedure returns
.ZN True
for an event.
After the predicate procedure finds a match,
.ZN XPeekIfEvent
copies the matched event into the client-supplied
.ZN XEvent
structure without removing the event from the queue.
.ZN XPeekIfEvent
flushes the output buffer if it blocks waiting for additional events.
.SH "SEE ALSO"
XAnyEvent(3X11),
XNextEvent(3X11),
XPutBackEvent(3X11)
XSendEvent(3X11)
.br
\fI\*(xL\fP

360
man/XInitImage.man Normal file
View file

@ -0,0 +1,360 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XCreateImage 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XInitImage, XCreateImage, XGetPixel, XPutPixel, XSubImage, XAddPixel, XDestroyImage \- image utilities
.SH SYNTAX
Status XInitImage\^(\^\fIimage\fP\^)
.br
XImage *\fIimage\fP\^;
.LP
XImage *XCreateImage\^(\^\fIdisplay\fP, \fIvisual\fP, \fIdepth\fP, \fIformat\fP, \fIoffset\fP, \fIdata\fP, \fIwidth\fP, \fIheight\fP\^, \fIbitmap_pad\fP,
.br
\fIbytes_per_line\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Visual *\fIvisual\fP\^;
.br
unsigned int \fIdepth\fP\^;
.br
int \fIformat\fP\^;
.br
int \fIoffset\fP\^;
.br
char *\fIdata\fP\^;
.br
unsigned int \fIwidth\fP\^;
.br
unsigned int \fIheight\fP\^;
.br
int \fIbitmap_pad\fP\^;
.br
int \fIbytes_per_line\fP\^;
.LP
unsigned long XGetPixel\^(\^\fIximage\fP, \fIx\fP, \fIy\fP\^)
.br
XImage *\fIximage\fP\^;
.br
int \fIx\fP\^;
.br
int \fIy\fP\^;
.LP
XPutPixel\^(\^\fIximage\fP, \fIx\fP, \fIy\fP, \fIpixel\fP\^)
.br
XImage *\fIximage\fP\^;
.br
int \fIx\fP\^;
.br
int \fIy\fP\^;
.br
unsigned long \fIpixel\fP\^;
.LP
XImage *XSubImage\^(\^\fIximage\fP, \fIx\fP, \fIy\fP, \fIsubimage_width\fP, \fIsubimage_height\fP\^)
.br
XImage *\fIximage\fP\^;
.br
int \fIx\fP\^;
.br
int \fIy\fP\^;
.br
unsigned int \fIsubimage_width\fP\^;
.br
unsigned int \fIsubimage_height\fP\^;
.LP
XAddPixel\^(\^\fIximage\fP, \fIvalue\fP\^)
.br
XImage *\fIximage\fP\^;
.br
long \fIvalue\fP\^;
.LP
XDestroyImage\^(\^\fIximage\fP\^)
.br
XImage *\^\fIximage\fP\^;
.SH ARGUMENTS
.IP \fIbitmap_pad\fP 1i
Specifies the quantum of a scanline (8, 16, or 32).
In other words, the start of one scanline is separated in client memory from
the start of the next scanline by an integer multiple of this many bits.
.IP \fIbytes_per_line\fP 1i
Specifies the number of bytes in the client image between
the start of one scanline and the start of the next.
.IP \fIdata\fP 1i
Specifies the image data.
.IP \fIdepth\fP 1i
Specifies the depth of the image.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIformat\fP 1i
Specifies the format for the image.
You can pass
.ZN XYBitmap ,
.ZN XYPixmap ,
or
.ZN ZPixmap .
.IP \fIheight\fP 1i
Specifies the height of the image, in pixels.
.IP \fIoffset\fP 1i
Specifies the number of pixels to ignore at the beginning of the scanline.
.IP \fIpixel\fP 1i
Specifies the new pixel value.
.IP \fIsubimage_height\fP 1i
Specifies the height of the new subimage, in pixels.
.IP \fIsubimage_width\fP 1i
Specifies the width of the new subimage, in pixels.
.IP \fIvalue\fP 1i
Specifies the constant value that is to be added.
.IP \fIvisual\fP 1i
Specifies the
.ZN Visual
structure.
.IP \fIwidth\fP 1i
Specifies the width of the image, in pixels.
.IP \fIximage\fP 1i
Specifies the image.
.IP \fIx\fP 1i
.br
.ns
.IP \fIy\fP 1i
Specify the x and y coordinates.
.SH DESCRIPTION
The
.ZN XInitImage
function initializes the internal image manipulation routines of an
image structure, based on the values of the various structure members.
All fields other than the manipulation routines must already be initialized.
If the bytes_per_line member is zero,
.ZN XInitImage
will assume the image data is contiguous in memory and set the
bytes_per_line member to an appropriate value based on the other
members; otherwise, the value of bytes_per_line is not changed.
All of the manipulation routines are initialized to functions
that other Xlib image manipulation functions need to operate on the
type of image specified by the rest of the structure.
.LP
This function must be called for any image constructed by the client
before passing it to any other Xlib function.
Image structures created or returned by Xlib do not need to be
initialized in this fashion.
.LP
This function returns a nonzero status if initialization of the
structure is successful. It returns zero if it detected some error
or inconsistency in the structure, in which case the image is not changed.
.LP
The
.ZN XCreateImage
function allocates the memory needed for an
.ZN XImage
structure for the
specified display but does not allocate space for the image itself.
Rather, it initializes the structure byte-order, bit-order, and bitmap-unit
values from the display and returns a pointer to the
.ZN XImage
structure.
The red, green, and blue mask values are defined for Z format images only
and are derived from the
.ZN Visual
structure passed in.
Other values also are passed in.
The offset permits the rapid displaying of the image without requiring each
scanline to be shifted into position.
If you pass a zero value in bytes_per_line,
Xlib assumes that the scanlines are contiguous
in memory and calculates the value of bytes_per_line itself.
.LP
Note that when the image is created using
.ZN XCreateImage ,
.ZN XGetImage ,
or
.ZN XSubImage ,
the destroy procedure that the
.ZN XDestroyImage
function calls frees both the image structure
and the data pointed to by the image structure.
.LP
The basic functions used to get a pixel, set a pixel, create a subimage,
and add a constant value to an image are defined in the image object.
The functions in this section are really macro invocations of the functions
in the image object and are defined in
.hN X11/Xutil.h .
.LP
The
.ZN XGetPixel
function returns the specified pixel from the named image.
The pixel value is returned in normalized format (that is,
the least significant byte of the long is the least significant byte
of the pixel).
The image must contain the x and y coordinates.
.LP
The
.ZN XPutPixel
function overwrites the pixel in the named image with the specified pixel value.
The input pixel value must be in normalized format
(that is, the least significant byte of the long is the least significant
byte of the pixel).
The image must contain the x and y coordinates.
.LP
The
.ZN XSubImage
function creates a new image that is a subsection of an existing one.
It allocates the memory necessary for the new
.ZN XImage
structure
and returns a pointer to the new image.
The data is copied from the source image,
and the image must contain the rectangle defined by x, y, subimage_width,
and subimage_height.
.LP
The
.ZN XAddPixel
function adds a constant value to every pixel in an image.
It is useful when you have a base pixel value from allocating
color resources and need to manipulate the image to that form.
.LP
The
.ZN XDestroyImage
function deallocates the memory associated with the
.ZN XImage
structure.
.SH "SEE ALSO"
XPutImage(3X11)
.br
\fI\*(xL\fP

205
man/XInitThreads.man Normal file
View file

@ -0,0 +1,205 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XInitThreads 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XInitThreads, XLockDisplay, XUnlockDisplay \- multi-threading support
.SH SYNTAX
Status XInitThreads\^(\|);
.LP
void XLockDisplay\^(\^\fIdisplay\fP\^)
.br
Display *\fIdisplay\fP\^;
.LP
void XUnlockDisplay\^(\^\fIdisplay\fP\^)
.br
Display *\fIdisplay\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.SH DESCRIPTION
The
.ZN XInitThreads
function initializes Xlib support for concurrent threads.
This function must be the first Xlib function a
multi-threaded program calls, and it must complete
before any other Xlib call is made.
This function returns a nonzero status if initialization was
successful; otherwise, it returns zero.
On systems that do not support threads, this function always returns zero.
.LP
It is only necessary to call this function if multiple threads
might use Xlib concurrently. If all calls to Xlib functions
are protected by some other access mechanism (for example,
a mutual exclusion lock in a toolkit or through explicit client
programming), Xlib thread initialization is not required.
It is recommended that single-threaded programs not call this function.
.LP
The
.ZN XLockDisplay
function locks out all other threads from using the specified display.
Other threads attempting to use the display will block until
the display is unlocked by this thread.
Nested calls to
.ZN XLockDisplay
work correctly; the display will not actually be unlocked until
.ZN XUnlockDisplay
has been called the same number of times as
.ZN XLockDisplay .
This function has no effect unless Xlib was successfully initialized
for threads using
.ZN XInitThreads .
.LP
The
.ZN XUnlockDisplay
function allows other threads to use the specified display again.
Any threads that have blocked on the display are allowed to continue.
Nested locking works correctly; if
.ZN XLockDisplay
has been called multiple times by a thread, then
.ZN XUnlockDisplay
must be called an equal number of times before the display is
actually unlocked.
This function has no effect unless Xlib was successfully initialized
for threads using
.ZN XInitThreads .
.SH "SEE ALSO"
\fI\*(xL\fP

256
man/XInstallColormap.man Normal file
View file

@ -0,0 +1,256 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XInstallColormap 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XInstallColormap, XUninstallColormap, XListInstalledColormaps \- control colormaps
.SH SYNTAX
XInstallColormap\^(\^\fIdisplay\fP, \fIcolormap\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Colormap \fIcolormap\fP\^;
.LP
XUninstallColormap\^(\^\fIdisplay\fP, \fIcolormap\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Colormap \fIcolormap\fP\^;
.LP
Colormap *XListInstalledColormaps\^(\^\fIdisplay\fP, \fIw\fP, \fInum_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
int *\fInum_return\fP\^;
.SH ARGUMENTS
.IP \fIcolormap\fP 1i
Specifies the colormap.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fInum_return\fP 1i
Returns the number of currently installed colormaps.
.ds Wi that determines the screen
.IP \fIw\fP 1i
Specifies the window \*(Wi.
.SH DESCRIPTION
The
.ZN XInstallColormap
function installs the specified colormap for its associated screen.
All windows associated with this colormap immediately display with
true colors.
You associated the windows with this colormap when you created them by calling
.ZN XCreateWindow ,
.ZN XCreateSimpleWindow ,
.ZN XChangeWindowAttributes ,
or
.ZN XSetWindowColormap .
.LP
If the specified colormap is not already an installed colormap,
the X server generates a
.ZN ColormapNotify
event on each window that has that colormap.
In addition, for every other colormap that is installed as
a result of a call to
.ZN XInstallColormap ,
the X server generates a
.ZN ColormapNotify
event on each window that has that colormap.
.LP
.ZN XInstallColormap
can generate a
.ZN BadColor
error.
.LP
The
.ZN XUninstallColormap
function removes the specified colormap from the required
list for its screen.
As a result,
the specified colormap might be uninstalled,
and the X server might implicitly install or uninstall additional colormaps.
Which colormaps get installed or uninstalled is server dependent
except that the required list must remain installed.
.LP
If the specified colormap becomes uninstalled,
the X server generates a
.ZN ColormapNotify
event on each window that has that colormap.
In addition, for every other colormap that is installed or uninstalled as a
result of a call to
.ZN XUninstallColormap ,
the X server generates a
.ZN ColormapNotify
event on each window that has that colormap.
.LP
.ZN XUninstallColormap
can generate a
.ZN BadColor
error.
.LP
The
.ZN XListInstalledColormaps
function returns a list of the currently installed colormaps for the screen
of the specified window.
The order of the colormaps in the list is not significant
and is no explicit indication of the required list.
When the allocated list is no longer needed,
free it by using
.ZN XFree .
.LP
.ZN XListInstalledColormaps
can generate a
.ZN BadWindow
error.
.SH DIAGNOSTICS
.TP 1i
.ZN BadColor
A value for a Colormap argument does not name a defined Colormap.
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XChangeWindowAtrributes(3X11),
XCreateColormap(3X11),
XCreateWindow(3X11),
XFree(3X11)
.br
\fI\*(xL\fP

302
man/XInternAtom.man Normal file
View file

@ -0,0 +1,302 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XInternAtom 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XInternAtom, XInternAtoms, XGetAtomName, XGetAtomNames \- create or return atom names
.SH SYNTAX
Atom XInternAtom\^(\^\fIdisplay\fP, \fIatom_name\fP\^, \fIonly_if_exists\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
char *\fIatom_name\fP\^;
.br
Bool \fIonly_if_exists\fP\^;
.LP
Status XInternAtoms\^(\^\fIdisplay\fP, \fInames\fP\^, \fIcount\fP\^, \fIonly_if_exists\fP, \fIatoms_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
char **\fInames\fP\^;
.br
int \fIcount\fP\^;
.br
Bool \fIonly_if_exists\fP\^;
.br
Atom *\fIatoms_return\fP\^;
.LP
char *XGetAtomName\^(\^\fIdisplay\fP, \fIatom\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Atom \fIatom\fP\^;
.LP
Status XGetAtomNames\^(\^\fIdisplay\fP, \fIatoms\fP, \fIcount\fP\^, \fInames_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Atom *\fIatoms\fP\^;
.br
int \fIcount\fP\^;
.br
char **\fInames_return\fP\^;
.SH ARGUMENTS
.IP \fIatom\fP 1i
Specifies the atom for the property name you want returned.
.IP \fIatoms\fP 1i
Specifies the array of atoms.
.IP \fIatom_name\fP 1i
Specifies the name associated with the atom you want returned.
.IP \fIatoms_return\fP 1i
Returns the atoms.
.ds Cn atom names in the array
.IP \fIcount\fP 1i
Specifies the number of \*(Cn.
.ds Cn atoms in the array
.IP \fIcount\fP 1i
Specifies the number of \*(Cn.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fInames\fP 1i
Specifies the array of atom names.
.IP \fInames_return\fP 1i
Returns the atom names.
.IP \fIonly_if_exists\fP 1i
Specifies a Boolean value that indicates whether the atom must be created.
.SH DESCRIPTION
The
.ZN XInternAtom
function returns the atom identifier associated with the specified atom_name
string.
If only_if_exists is
.ZN False ,
the atom is created if it does not exist.
Therefore,
.ZN XInternAtom
can return
.ZN None .
If the atom name is not in the Host Portable Character Encoding,
the result is implementation-dependent.
Uppercase and lowercase matter;
the strings ``thing'', ``Thing'', and ``thinG''
all designate different atoms.
The atom will remain defined even after the client's connection closes.
It will become undefined only when the last connection to
the X server closes.
.LP
.ZN XInternAtom
can generate
.ZN BadAlloc
and
.ZN BadValue
errors.
.LP
The
.ZN XInternAtoms
function returns the atom identifiers associated with the specified names.
The atoms are stored in the atoms_return array supplied by the caller.
Calling this function is equivalent to calling
.ZN XInternAtom
for each of the names in turn with the specified value of only_if_exists,
but this function minimizes the number of round-trip protocol exchanges
between the client and the X server.
.LP
This function returns a nonzero status if atoms are returned for
all of the names;
otherwise, it returns zero.
.LP
.ZN XInternAtoms
can generate
.ZN BadAlloc
and
.ZN BadValue
errors.
.LP
The
.ZN XGetAtomName
function returns the name associated with the specified atom.
If the data returned by the server is in the Latin Portable Character Encoding,
then the returned string is in the Host Portable Character Encoding.
Otherwise, the result is implementation-dependent.
To free the resulting string,
call
.ZN XFree .
.LP
.ZN XGetAtomName
can generate a
.ZN BadAtom
error.
.LP
The
.ZN XGetAtomNames
function returns the names associated with the specified atoms.
The names are stored in the names_return array supplied by the caller.
Calling this function is equivalent to calling
.ZN XGetAtomName
for each of the atoms in turn,
but this function minimizes the number of round-trip protocol exchanges
between the client and the X server.
.LP
This function returns a nonzero status if names are returned for
all of the atoms;
otherwise, it returns zero.
.LP
.ZN XGetAtomNames
can generate a
.ZN BadAtom
error.
.SH DIAGNOSTICS
.TP 1i
.ZN BadAlloc
The server failed to allocate the requested resource or server memory.
.TP 1i
.ZN BadAtom
A value for an Atom argument does not name a defined Atom.
.TP 1i
.ZN BadValue
Some numeric value falls outside the range of values accepted by the request.
Unless a specific range is specified for an argument, the full range defined
by the argument's type is accepted. Any argument defined as a set of
alternatives can generate this error.
.SH "SEE ALSO"
XFree(3X11),
XGetWindowProperty(3X11)
.br
\fI\*(xL\fP

241
man/XIntersectRegion.man Normal file
View file

@ -0,0 +1,241 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XIntersectRegion 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XIntersectRegion, XUnionRegion, XUnionRectWithRegion, XSubtractRegion, XXorRegion, XOffsetRegion, XShrinkRegion \- region arithmetic
.SH SYNTAX
XIntersectRegion\^(\^\fIsra\fP\^, \fIsrb\fP\^, \fIdr_return\fP\^)
.br
Region \fIsra\fP\^, \fIsrb\fP\^, \fIdr_return\fP\^;
.LP
XUnionRegion\^(\^\fIsra\fP\^, \fIsrb\fP\^, \fIdr_return\fP\^)
.br
Region \fIsra\fP\^, \fIsrb\fP\^, \fIdr_return\fP\^;
.LP
XUnionRectWithRegion\^(\^\fIrectangle\fP, \fIsrc_region\fP, \
\fIdest_region_return\fP\^)
.br
XRectangle *\fIrectangle\fP\^;
.br
Region \fIsrc_region\fP\^;
.br
Region \fIdest_region_return\fP\^;
.LP
XSubtractRegion\^(\^\fIsra\fP\^, \fIsrb\fP\^, \fIdr_return\fP\^)
.br
Region \fIsra\fP\^, \fIsrb\fP\^, \fIdr_return\fP\^;
.LP
XXorRegion\^(\^\fIsra\fP\^, \fIsrb\fP\^, \fIdr_return\fP\^)
.br
Region \fIsra\fP\^, \fIsrb\fP\^, \fIdr_return\fP\^;
.LP
XOffsetRegion\^(\^\fIr\fP\^, \fIdx\fP\^, \fIdy\fP\^)
.br
Region \fIr\fP\^;
.br
int \fIdx\fP\^, \fIdy\fP\^;
.LP
XShrinkRegion\^(\^\fIr\fP\^, \fIdx\fP\^, \fIdy\fP\^)
.br
Region \fIr\fP\^;
.br
int \fIdx\fP\^, \fIdy\fP\^;
.SH ARGUMENTS
.IP \fIdest_region_return\fP 1i
Returns the destination region.
.IP \fIdr_return\fP 1i
Returns the result of the computation.
ds Dy move or shrink
.IP \fIdx\fP 1i
.br
.ns
.IP \fIdy\fP 1i
Specify the x and y coordinates,
which define the amount you want to \*(Dy the specified region.
.IP \fIr\fP 1i
Specifies the region.
.IP \fIrectangle\fP 1i
Specifies the rectangle.
.IP \fIsra\fP 1i
.br
.ns
.IP \fIsrb\fP 1i
Specify the two regions with which you want to perform the computation.
.IP \fIsrc_region\fP 1i
Specifies the source region to be used.
.SH DESCRIPTION
The
.ZN XIntersectRegion
function computes the intersection of two regions.
.LP
The
.ZN XUnionRegion
function computes the union of two regions.
.LP
The
.ZN XUnionRectWithRegion
function updates the destination region from a union of the specified rectangle
and the specified source region.
.LP
The
.ZN XSubtractRegion
function subtracts srb from sra and stores the results in dr_return.
.LP
The
.ZN XXorRegion
function calculates the difference between the union and intersection
of two regions.
.LP
The
.ZN XOffsetRegion
function moves the specified region by a specified amount.
.LP
The
.ZN XShrinkRegion
function reduces the specified region by a specified amount.
Positive values shrink the size of the region,
and negative values expand the region.
.SH "SEE ALSO"
XCreateRegion(3X11),
XDrawRectangle(3X11),
XEmptyRegion(3X11)
.br
\fI\*(xL\fP

219
man/XKeymapEvent.man Normal file
View file

@ -0,0 +1,219 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XKeymapEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XKeymapEvent \- KeymapNotify event structure
.SH STRUCTURES
The structure for
.ZN KeymapNotify
events contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
/* generated on EnterWindow and FocusIn when KeymapState selected */
typedef struct {
int type; /* KeymapNotify */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window;
char key_vector[32];
} XKeymapEvent;
.De
.LP
When you receive this event,
the structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
The window member is not used but is present to aid some toolkits.
The key_vector member is set to the bit vector of the keyboard.
Each bit set to 1 indicates that the corresponding key
is currently pressed.
The vector is represented as 32 bytes.
Byte N (from 0) contains the bits for keys 8N to 8N + 7
with the least significant bit in the byte representing key 8N.
.SH "SEE ALSO"
XAnyEvent(3X11),
XButtonEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateEvent(3X11),
XCirculateRequestEvent(3X11),
XColormapEvent(3X11),
XConfigureEvent(3X11),
XConfigureRequestEvent(3X11),
XCrossingEvent(3X11),
XDestroyWindowEvent(3X11),
XErrorEvent(3X11),
XExposeEvent(3X11),
XFocusChangeEvent(3X11),
XGraphicsExposeEvent(3X11),
XGravityEvent(3X11),
XMapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

279
man/XListFonts.man Normal file
View file

@ -0,0 +1,279 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XListFonts 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XListFonts, XFreeFontNames, XListFontsWithInfo, XFreeFontInfo \- obtain or free font names and information
.SH SYNTAX
char **XListFonts\^(\^\fIdisplay\fP, \fIpattern\fP\^, \fImaxnames\fP, \fIactual_count_return\fP\^)
.br
Display *\^\fIdisplay\fP\^;
.br
char *\^\fIpattern\fP\^;
.br
int \fImaxnames\fP\^;
.br
int *\^\fIactual_count_return\fP\^;
.LP
XFreeFontNames\^(\^\fIlist\fP\^)
.br
char *\fIlist\fP\^[\^]\^;
.LP
char **XListFontsWithInfo\^(\^\fIdisplay\fP, \fIpattern\fP, \fImaxnames\fP, \fIcount_return\fP, \fIinfo_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
char *\fIpattern\fP\^;
.br
int \fImaxnames\fP\^;
.br
int *\fIcount_return\fP\^;
.br
XFontStruct **\fIinfo_return\fP\^;
.LP
XFreeFontInfo(\^\fInames\fP, \fIfree_info\fP, \fIactual_count\fP\^)
.br
char **\fInames\fP\^;
.br
XFontStruct *\fIfree_info\fP;
.br
int \fIactual_count\fP\^;
.SH ARGUMENTS
.IP \fIactual_count\fP 1i
Specifies the actual number of font names.
.IP \fIactual_count_return\fP 1i
Returns the actual number of font names.
.IP \fIcount_return\fP 1i
Returns the actual number of matched font names.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIinfo_return\fP 1i
Returns the font information.
.IP \fIfree_info\fP 1i
Specifies the font information.
.IP \fIlist\fP 1i
Specifies the array of strings you want to free.
.IP \fImaxnames\fP 1i
Specifies the maximum number of names to be returned.
.IP \fInames\fP 1i
Specifies the list of font names.
.IP \fIpattern\fP 1i
Specifies the null-terminated pattern string that can contain wildcard
characters.
.SH DESCRIPTION
The
.ZN XListFonts
function returns an array of available font names
(as controlled by the font search path; see
.ZN XSetFontPath )
that match the string you passed to the pattern argument.
The pattern string can contain any characters,
but each asterisk (*) is a wildcard for any number of characters,
and each question mark (?) is a wildcard for a single character.
If the pattern string is not in the Host Portable Character Encoding,
the result is implementation-dependent.
Use of uppercase or lowercase does not matter.
Each returned string is null-terminated.
If the data returned by the server is in the Latin Portable Character Encoding,
then the returned strings are in the Host Portable Character Encoding.
Otherwise, the result is implementation-dependent.
If there are no matching font names,
.ZN XListFonts
returns NULL.
The client should call
.ZN XFreeFontNames
when finished with the result to free the memory.
.LP
The
.ZN XFreeFontNames
function frees the array and strings returned by
.ZN XListFonts
or
.ZN XListFontsWithInfo .
.LP
The
.ZN XListFontsWithInfo
function returns a list of font names that match the specified pattern and their
associated font information.
The list of names is limited to size specified by maxnames.
The information returned for each font is identical to what
.ZN XLoadQueryFont
would return except that the per-character metrics are not returned.
The pattern string can contain any characters,
but each asterisk (*) is a wildcard for any number of characters,
and each question mark (?) is a wildcard for a single character.
If the pattern string is not in the Host Portable Character Encoding,
the result is implementation-dependent.
Use of uppercase or lowercase does not matter.
Each returned string is null-terminated.
If the data returned by the server is in the Latin Portable Character Encoding,
then the returned strings are in the Host Portable Character Encoding.
Otherwise, the result is implementation-dependent.
If there are no matching font names,
.ZN XListFontsWithInfo
returns NULL.
.LP
To free only the allocated name array,
the client should call
.ZN XFreeFontNames .
To free both the name array and the font information array
or to free just the font information array,
the client should call
.ZN XFreeFontInfo .
.LP
The
.ZN XFreeFontInfo
function frees a font structure or an array of font structures
and optionally an array of font names.
If NULL is passed for names, no font names are freed.
If a font structure for an open font (returned by
.ZN XLoadQueryFont )
is passed, the structure is freed,
but the font is not closed; use
.ZN XUnloadFont
to close the font.
.SH "SEE ALSO"
XLoadFont(3X11),
XSetFontPath(3X11)
.br
\fI\*(xL\fP

562
man/XLoadFont.man Normal file
View file

@ -0,0 +1,562 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XLoadFont 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XLoadFont, XQueryFont, XLoadQueryFont, XFreeFont, XGetFontProperty, XUnloadFont, XCharStruct, XFontProp, XChar2b, XFontStruct \- load or unload fonts and font metric structures
.SH SYNTAX
Font XLoadFont\^(\^\fIdisplay\fP, \fIname\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
char *\fIname\fP\^;
.LP
XFontStruct *XQueryFont\^(\^\fIdisplay\fP, \fIfont_ID\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XID \fIfont_ID\fP\^;
.LP
XFontStruct *XLoadQueryFont\^(\^\fIdisplay\fP, \fIname\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
char *\fIname\fP\^;
.LP
XFreeFont\^(\^\fIdisplay\fP, \fIfont_struct\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XFontStruct *\fIfont_struct\fP\^;
.LP
Bool XGetFontProperty\^(\^\fIfont_struct\fP\^, \^\fIatom\fP\^, \^\fIvalue_return\fP\^)
.br
XFontStruct *\fIfont_struct\fP\^;
.br
Atom \fIatom\fP\^;
.br
unsigned long *\fIvalue_return\fP\^;
.LP
XUnloadFont\^(\^\fIdisplay\fP, \fIfont\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Font \fIfont\fP\^;
.SH ARGUMENTS
.IP \fIatom\fP 1i
Specifies the atom for the property name you want returned.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIfont\fP 1i
Specifies the font.
.IP \fIfont_ID\fP 1i
Specifies the font ID or the
.ZN GContext
ID.
.IP \fIfont_struct\fP 1i
Specifies the storage associated with the font.
.IP \fIgc\fP 1i
Specifies the GC.
.IP \fIname\fP 1i
Specifies the name of the font,
which is a null-terminated string.
.IP \fIvalue_return\fP 1i
Returns the value of the font property.
.SH DESCRIPTION
The
.ZN XLoadFont
function loads the specified font and returns its associated font ID.
If the font name is not in the Host Portable Character Encoding,
the result is implementation-dependent.
Use of uppercase or lowercase does not matter.
When the characters ``?'' and ``*'' are used in a font name, a
pattern match is performed and any matching font is used.
In the pattern,
the ``?'' character will match any single character,
and the ``*'' character will match any number of characters.
A structured format for font names is specified in the X Consortium standard
\fIX Logical Font Description Conventions\fP.
If
.ZN XLoadFont
was unsuccessful at loading the specified font,
a
.ZN BadName
error results.
Fonts are not associated with a particular screen
and can be stored as a component
of any GC.
When the font is no longer needed, call
.ZN XUnloadFont .
.LP
.ZN XLoadFont
can generate
.ZN BadAlloc
and
.ZN BadName
errors.
.LP
The
.ZN XQueryFont
function returns a pointer to the
.ZN XFontStruct
structure, which contains information associated with the font.
You can query a font or the font stored in a GC.
The font ID stored in the
.ZN XFontStruct
structure will be the
.ZN GContext
ID, and you need to be careful when using this ID in other functions
(see
.ZN XGContextFromGC ).
If the font does not exist,
.ZN XQueryFont
returns NULL.
To free this data, use
.ZN XFreeFontInfo .
.LP
.ZN XLoadQueryFont
can generate a
.ZN BadAlloc
error.
.LP
The
.ZN XLoadQueryFont
function provides the most common way for accessing a font.
.ZN XLoadQueryFont
both opens (loads) the specified font and returns a pointer to the
appropriate
.ZN XFontStruct
structure.
If the font name is not in the Host Portable Character Encoding,
the result is implementation-dependent.
If the font does not exist,
.ZN XLoadQueryFont
returns NULL.
.LP
The
.ZN XFreeFont
function deletes the association between the font resource ID and the specified
font and frees the
.ZN XFontStruct
structure.
The font itself will be freed when no other resource references it.
The data and the font should not be referenced again.
.LP
.ZN XFreeFont
can generate a
.ZN BadFont
error.
.LP
Given the atom for that property,
the
.ZN XGetFontProperty
function returns the value of the specified font property.
.ZN XGetFontProperty
also returns
.ZN False
if the property was not defined or
.ZN True
if it was defined.
A set of predefined atoms exists for font properties,
which can be found in
.hN X11/Xatom.h .
This set contains the standard properties associated with
a font.
Although it is not guaranteed,
it is likely that the predefined font properties will be present.
.LP
The
.ZN XUnloadFont
function deletes the association between the font resource ID and the specified font.
The font itself will be freed when no other resource references it.
The font should not be referenced again.
.LP
.ZN XUnloadFont
can generate a
.ZN BadFont
error.
.SH STRUCTURES
The
.ZN XFontStruct
structure contains all of the information for the font
and consists of the font-specific information as well as
a pointer to an array of
.ZN XCharStruct
structures for the
characters contained in the font.
The
.ZN XFontStruct ,
.ZN XFontProp ,
and
.ZN XCharStruct
structures contain:
.LP
.IN "XCharStruct" "" "@DEF@"
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
short lbearing; /* origin to left edge of raster */
short rbearing; /* origin to right edge of raster */
short width; /* advance to next char's origin */
short ascent; /* baseline to top edge of raster */
short descent; /* baseline to bottom edge of raster */
unsigned short attributes; /* per char flags (not predefined) */
} XCharStruct;
.De
.LP
.IN "XFontProp" "" "@DEF@"
.Ds 0
.TA .5i 1i 3i
.ta .5i 1i 3i
typedef struct {
Atom name;
unsigned long card32;
} XFontProp;
.De
.LP
.IN "XChar2b" "" "@DEF@"
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct { /* normal 16 bit characters are two bytes */
unsigned char byte1;
unsigned char byte2;
} XChar2b;
.De
.LP
.IN "XFontStruct" "" "@DEF@"
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
XExtData *ext_data; /* hook for extension to hang data */
Font fid; /* Font id for this font */
unsigned direction; /* hint about the direction font is painted */
unsigned min_char_or_byte2; /* first character */
unsigned max_char_or_byte2; /* last character */
unsigned min_byte1; /* first row that exists */
unsigned max_byte1; /* last row that exists */
Bool all_chars_exist; /* flag if all characters have nonzero size */
unsigned default_char; /* char to print for undefined character */
int n_properties; /* how many properties there are */
XFontProp *properties; /* pointer to array of additional properties */
XCharStruct min_bounds; /* minimum bounds over all existing char */
XCharStruct max_bounds; /* maximum bounds over all existing char */
XCharStruct *per_char; /* first_char to last_char information */
int ascent; /* logical extent above baseline for spacing */
int descent; /* logical decent below baseline for spacing */
} XFontStruct;
.De
.LP
X supports single byte/character, two bytes/character matrix,
and 16-bit character text operations.
Note that any of these forms can be used with a font, but a
single byte/character text request can only specify a single byte
(that is, the first row of a 2-byte font).
You should view 2-byte fonts as a two-dimensional matrix of defined
characters: byte1 specifies the range of defined rows and
byte2 defines the range of defined columns of the font.
Single byte/character fonts have one row defined, and the byte2 range
specified in the structure defines a range of characters.
.LP
The bounding box of a character is defined by the
.ZN XCharStruct
of that character.
When characters are absent from a font,
the default_char is used.
When fonts have all characters of the same size,
only the information in the
.ZN XFontStruct
min and max bounds are used.
.LP
The members of the
.ZN XFontStruct
have the following semantics:
.IP \(bu 5
The direction member can be either
.ZN FontLeftToRight
or
.ZN FontRightToLeft .
It is just a hint as to whether most
.ZN XCharStruct
elements
have a positive
.Pn ( FontLeftToRight )
or a negative
.Pn ( FontRightToLeft )
character width
metric.
The core protocol defines no support for vertical text.
.IP \(bu 5
If the min_byte1 and max_byte1 members are both zero, min_char_or_byte2
specifies the linear character index corresponding to the first element
of the per_char array, and max_char_or_byte2 specifies the linear character
index of the last element.
.IP
If either min_byte1 or max_byte1 are nonzero, both
min_char_or_byte2 and max_char_or_byte2 are less than 256,
and the 2-byte character index values corresponding to the
per_char array element N (counting from 0) are:
.IP
.nf
byte1 = N/D + min_byte1
.br
byte2 = N\\D + min_char_or_byte2
.IP
.fi
where:
.IP
.nf
D = max_char_or_byte2 \- min_char_or_byte2 + 1
/ = integer division
\\ = integer modulus
.fi
.IP \(bu 5
If the per_char pointer is NULL,
all glyphs between the first and last character indexes
inclusive have the same information,
as given by both min_bounds and max_bounds.
.IP \(bu 5
If all_chars_exist is
.ZN True ,
all characters in the per_char array have nonzero bounding boxes.
.IP \(bu 5
The default_char member specifies the character that will be used when an
undefined or nonexistent character is printed.
The default_char is a 16-bit character (not a 2-byte character).
For a font using 2-byte matrix format,
the default_char has byte1 in the most-significant byte
and byte2 in the least significant byte.
If the default_char itself specifies an undefined or nonexistent character,
no printing is performed for an undefined or nonexistent character.
.IP \(bu 5
The min_bounds and max_bounds members contain the most extreme values of
each individual
.ZN XCharStruct
component over all elements of this array
(and ignore nonexistent characters).
The bounding box of the font (the smallest
rectangle enclosing the shape obtained by superimposing all of the
characters at the same origin [x,y]) has its upper-left coordinate at:
.Ds
[x + min_bounds.lbearing, y \- max_bounds.ascent]
.De
.IP
Its width is:
.Ds
max_bounds.rbearing \- min_bounds.lbearing
.De
.IP
Its height is:
.Ds
max_bounds.ascent + max_bounds.descent
.De
.IP \(bu 5
The ascent member is the logical extent of the font above the baseline that is
used for determining line spacing.
Specific characters may extend beyond
this.
.IP \(bu 5
The descent member is the logical extent of the font at or below the
baseline that is used for determining line spacing.
Specific characters may extend beyond this.
.IP \(bu 5
If the baseline is at Y-coordinate y,
the logical extent of the font is inclusive between the Y-coordinate
values (y \- font.ascent) and (y + font.descent \- 1).
Typically,
the minimum interline spacing between rows of text is given
by ascent + descent.
.LP
For a character origin at [x,y],
the bounding box of a character (that is,
the smallest rectangle that encloses the character's shape)
described in terms of
.ZN XCharStruct
components is a rectangle with its upper-left corner at:
.LP
.Ds
[x + lbearing, y \- ascent]
.De
.LP
Its width is:
.LP
.Ds
rbearing \- lbearing
.De
.LP
Its height is:
.LP
.Ds
ascent + descent
.De
.LP
The origin for the next character is defined to be:
.LP
.Ds
[x + width, y]
.De
.LP
The lbearing member defines the extent of the left edge of the character ink
from the origin.
The rbearing member defines the extent of the right edge of the character ink
from the origin.
The ascent member defines the extent of the top edge of the character ink
from the origin.
The descent member defines the extent of the bottom edge of the character ink
from the origin.
The width member defines the logical width of the character.
.SH DIAGNOSTICS
.TP 1i
.ZN BadAlloc
The server failed to allocate the requested resource or server memory.
.TP 1i
.ZN BadFont
A value for a Font or GContext argument does not name a defined Font.
.TP 1i
.ZN BadName
A font or color of the specified name does not exist.
.SH "SEE ALSO"
XCreateGC(3X11),
XListFonts(3X11),
XSetFontPath(3X11)
.br
\fI\*(xL\fP

294
man/XLookupKeysym.man Normal file
View file

@ -0,0 +1,294 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XLookupKeysym 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XLookupKeysym, XRefreshKeyboardMapping, XLookupString, XRebindKeySym \- handle keyboard input events in Latin-1
.SH SYNTAX
KeySym XLookupKeysym(\^\fIkey_event\fP, \fIindex\fP\^)
.br
XKeyEvent *\fIkey_event\fP\^;
.br
int \fIindex\fP\^;
.LP
XRefreshKeyboardMapping(\^\fIevent_map\fP\^)
.br
XMappingEvent *\fIevent_map\fP\^;
.LP
int XLookupString(\^\fIevent_struct\fP, \fIbuffer_return\fP,\
\fIbytes_buffer\fP, \fIkeysym_return\fP, \fIstatus_in_out\fP\^)
.br
XKeyEvent *\fIevent_struct\fP\^;
.br
char *\fIbuffer_return\fP\^;
.br
int \fIbytes_buffer\fP\^;
.br
KeySym *\fIkeysym_return\fP\^;
.br
XComposeStatus *\fIstatus_in_out\fP\^;
.LP
XRebindKeysym(\^\fIdisplay\fP, \fIkeysym\fP, \fIlist\fP, \fImod_count\fP, \fIstring\fP, \fInum_bytes\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
KeySym \fIkeysym\fP\^;
.br
KeySym \fIlist\fP\^[\^]\^;
.br
int \fImod_count\fP\^;
.br
unsigned char *\fIstring\fP\^;
.br
int \fInum_bytes\fP\^;
.SH ARGUMENTS
.IP \fIbuffer_return\fP 1i
Returns the translated characters.
.IP \fIbytes_buffer\fP 1i
Specifies the length of the buffer.
No more than bytes_buffer of translation are returned.
.IP \fInum_bytes\fP 1i
Specifies the number of bytes in the string argument.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIevent_map\fP 1i
Specifies the mapping event that is to be used.
.IP \fIevent_struct\fP 1i
Specifies the key event structure to be used.
You can pass
.ZN XKeyPressedEvent
or
.ZN XKeyReleasedEvent .
.IP \fIindex\fP 1i
Specifies the index into the KeySyms list for the event's KeyCode.
.IP \fIkey_event\fP 1i
Specifies the
.ZN KeyPress
or
.ZN KeyRelease
event.
.IP \fIkeysym\fP 1i
Specifies the KeySym that is to be \*(Fn.
.IP \fIkeysym_return\fP 1i
Returns the KeySym computed from the event if this argument is not NULL.
.IP \fIlist\fP 1i
Specifies the KeySyms to be used as modifiers.
.IP \fImod_count\fP 1i
Specifies the number of modifiers in the modifier list.
.IP \fIstatus_in_out\fP 1i
Specifies or returns the
.ZN XComposeStatus
structure or NULL.
.IP \fIstring\fP 1i
Specifies the string that is copied and will be returned by
.ZN XLookupString .
.SH DESCRIPTION
The
.ZN XLookupKeysym
function uses a given keyboard event and the index you specified to return
the KeySym from the list that corresponds to the KeyCode member in the
.ZN XKeyPressedEvent
or
.ZN XKeyReleasedEvent
structure.
If no KeySym is defined for the KeyCode of the event,
.ZN XLookupKeysym
returns
.ZN NoSymbol .
.LP
The
.ZN XRefreshKeyboardMapping
function refreshes the stored modifier and keymap information.
You usually call this function when a
.ZN MappingNotify
event with a request member of
.ZN MappingKeyboard
or
.ZN MappingModifier
occurs.
The result is to update Xlib's knowledge of the keyboard.
.LP
The
.ZN XLookupString
function translates a key event to a KeySym and a string.
The KeySym is obtained by using the standard interpretation of the
.ZN Shift ,
.ZN Lock ,
group, and numlock modifiers as defined in the X Protocol specification.
If the KeySym has been rebound (see
.ZN XRebindKeysym ),
the bound string will be stored in the buffer.
Otherwise, the KeySym is mapped, if possible, to an ISO Latin-1 character
or (if the Control modifier is on) to an ASCII control character,
and that character is stored in the buffer.
.ZN XLookupString
returns the number of characters that are stored in the buffer.
.LP
If present (non-NULL),
the
.ZN XComposeStatus
structure records the state,
which is private to Xlib,
that needs preservation across calls to
.ZN XLookupString
to implement compose processing.
The creation of
.ZN XComposeStatus
structures is implementation-dependent;
a portable program must pass NULL for this argument.
.LP
The
.ZN XRebindKeysym
function can be used to rebind the meaning of a KeySym for the client.
It does not redefine any key in the X server but merely
provides an easy way for long strings to be attached to keys.
.ZN XLookupString
returns this string when the appropriate set of
modifier keys are pressed and when the KeySym would have been used for
the translation.
No text conversions are performed;
the client is responsible for supplying appropriately encoded strings.
Note that you can rebind a KeySym that may not exist.
.SH "SEE ALSO"
XButtonEvent(3X11),
XMapEvent(3X11),
XStringToKeysym(3X11)
.br
\fI\*(xL\fP

289
man/XMapEvent.man Normal file
View file

@ -0,0 +1,289 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XMapEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XMapEvent, XMappingEvent \- MapNotify and MappingNotify event structures
.SH STRUCTURES
The structure for
.ZN MapNotify
events contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* MapNotify */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window event;
Window window;
Bool override_redirect; /* boolean, is override set... */
} XMapEvent;
.De
.LP
When you receive this event,
the structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
The event member is set either to the window that was mapped or to its parent,
depending on whether
.ZN StructureNotify
or
.ZN SubstructureNotify
was selected.
The window member is set to the window that was mapped.
The override_redirect member is set to the override-redirect attribute
of the window.
Window manager clients normally should ignore this window
if the override-redirect attribute is
.ZN True ,
because these events usually are generated from pop-ups,
which override structure control.
.LP
The structure for
.ZN MappingNotify
events is:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* MappingNotify */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window window; /* unused */
int request; /* one of MappingModifier, MappingKeyboard,
MappingPointer */
int first_keycode; /* first keycode */
int count; /* defines range of change w. first_keycode*/
} XMappingEvent;
.De
.LP
When you receive this event,
the structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
The request member is set to indicate the kind of mapping change that occurred
and can be
.ZN MappingModifier ,
.ZN MappingKeyboard ,
.ZN MappingPointer .
If it is
.ZN MappingModifier ,
the modifier mapping was changed.
If it is
.ZN MappingKeyboard ,
the keyboard mapping was changed.
If it is
.ZN MappingPointer ,
the pointer button mapping was changed.
The first_keycode and count members are set only
if the request member was set to
.ZN MappingKeyboard .
The number in first_keycode represents the first number in the range
of the altered mapping,
and count represents the number of keycodes altered.
.SH "SEE ALSO"
XAnyEvent(3X11),
XButtonEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateEvent(3X11),
XCirculateRequestEvent(3X11),
XColormapEvent(3X11),
XConfigureEvent(3X11),
XConfigureRequestEvent(3X11),
XCrossingEvent(3X11),
XDestroyWindowEvent(3X11),
XErrorEvent(3X11),
XExposeEvent(3X11),
XFocusChangeEvent(3X11),
XGraphicsExposeEvent(3X11),
XGravityEvent(3X11),
XKeymapEvent(3X11),
XMapRequestEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

213
man/XMapRequestEvent.man Normal file
View file

@ -0,0 +1,213 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XMapRequestEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XMapRequestEvent \- MapRequest event structure
.SH STRUCTURES
The structure for
.ZN MapRequest
events contains:
.LP
.Ds 0
.TA .5i 3i
.ta .5i 3i
typedef struct {
int type; /* MapRequest */
unsigned long serial; /* # of last request processed by server */
Bool send_event; /* true if this came from a SendEvent request */
Display *display; /* Display the event was read from */
Window parent;
Window window;
} XMapRequestEvent;
.De
.LP
When you receive this event,
the structure members are set as follows.
.LP
The type member is set to the event type constant name that uniquely identifies
it.
For example, when the X server reports a
.ZN GraphicsExpose
event to a client application, it sends an
.ZN XGraphicsExposeEvent
structure with the type member set to
.ZN GraphicsExpose .
The display member is set to a pointer to the display the event was read on.
The send_event member is set to
.ZN True
if the event came from a
.ZN SendEvent
protocol request.
The serial member is set from the serial number reported in the protocol
but expanded from the 16-bit least-significant bits to a full 32-bit value.
The window member is set to the window that is most useful to toolkit
dispatchers.
.LP
The parent member is set to the parent window.
The window member is set to the window to be mapped.
.SH "SEE ALSO"
XAnyEvent(3X11),
XButtonEvent(3X11),
XCreateWindowEvent(3X11),
XCirculateEvent(3X11),
XCirculateRequestEvent(3X11),
XColormapEvent(3X11),
XConfigureEvent(3X11),
XConfigureRequestEvent(3X11),
XCrossingEvent(3X11),
XDestroyWindowEvent(3X11),
XErrorEvent(3X11),
XExposeEvent(3X11),
XFocusChangeEvent(3X11),
XGraphicsExposeEvent(3X11),
XGravityEvent(3X11),
XKeymapEvent(3X11),
XMapEvent(3X11),
XPropertyEvent(3X11),
XReparentEvent(3X11),
XResizeRequestEvent(3X11),
XSelectionClearEvent(3X11),
XSelectionEvent(3X11),
XSelectionRequestEvent(3X11),
XUnmapEvent(3X11),
XVisibilityEvent(3X11)
.br
\fI\*(xL\fP

287
man/XMapWindow.man Normal file
View file

@ -0,0 +1,287 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XMapWindow 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XMapWindow, XMapRaised, XMapSubwindows \- map windows
.SH SYNTAX
XMapWindow\^(\^\fIdisplay\fP, \fIw\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.LP
XMapRaised\^(\^\fIdisplay\fP, \fIw\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.LP
XMapSubwindows\^(\^\fIdisplay\fP, \fIw\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIw\fP 1i
Specifies the window.
.SH DESCRIPTION
The
.ZN XMapWindow
function
maps the window and all of its
subwindows that have had map requests.
Mapping a window that has an unmapped ancestor does not display the
window but marks it as eligible for display when the ancestor becomes
mapped.
Such a window is called unviewable.
When all its ancestors are mapped,
the window becomes viewable
and will be visible on the screen if it is not obscured by another window.
This function has no effect if the window is already mapped.
.LP
If the override-redirect of the window is
.ZN False
and if some other client has selected
.ZN SubstructureRedirectMask
on the parent window, then the X server generates a
.ZN MapRequest
event, and the
.ZN XMapWindow
function does not map the window.
Otherwise, the window is mapped, and the X server generates a
.ZN MapNotify
event.
.LP
If the window becomes viewable and no earlier contents for it are remembered,
the X server tiles the window with its background.
If the window's background is undefined,
the existing screen contents are not
altered, and the X server generates zero or more
.ZN Expose
events.
If backing-store was maintained while the window was unmapped, no
.ZN Expose
events
are generated.
If backing-store will now be maintained,
a full-window exposure is always generated.
Otherwise, only visible regions may be reported.
Similar tiling and exposure take place for any newly viewable inferiors.
.LP
.IN "XMapWindow"
If the window is an
.ZN InputOutput
window,
.ZN XMapWindow
generates
.ZN Expose
events on each
.ZN InputOutput
window that it causes to be displayed.
If the client maps and paints the window
and if the client begins processing events,
the window is painted twice.
To avoid this,
first ask for
.ZN Expose
events and then map the window,
so the client processes input events as usual.
The event list will include
.ZN Expose
for each
window that has appeared on the screen.
The client's normal response to
an
.ZN Expose
event should be to repaint the window.
This method usually leads to simpler programs and to proper interaction
with window managers.
.LP
.ZN XMapWindow
can generate a
.ZN BadWindow
error.
.LP
The
.ZN XMapRaised
function
essentially is similar to
.ZN XMapWindow
in that it maps the window and all of its
subwindows that have had map requests.
However, it also raises the specified window to the top of the stack.
.LP
.ZN XMapRaised
can generate a
.ZN BadWindow
error.
.LP
The
.ZN XMapSubwindows
.IN "XMapSubwindows"
function maps all subwindows for a specified window in top-to-bottom stacking
order.
The X server generates
.ZN Expose
events on each newly displayed window.
This may be much more efficient than mapping many windows
one at a time because the server needs to perform much of the work
only once, for all of the windows, rather than for each window.
.LP
.ZN XMapSubwindows
can generate a
.ZN BadWindow
error.
.SH DIAGNOSTICS
.TP 1i
.ZN BadWindow
A value for a Window argument does not name a defined Window.
.SH "SEE ALSO"
XChangeWindowAttributes(3X11),
XConfigureWindow(3X11),
XCreateWindow(3X11),
XDestroyWindow(3X11),
XRaiseWindow(3X11),
XUnmapWindow(3X11)
.br
\fI\*(xL\fP

351
man/XNextEvent.man Normal file
View file

@ -0,0 +1,351 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XNextEvent 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XNextEvent, XPeekEvent, XWindowEvent, XCheckWindowEvent, XMaskEvent, XCheckMaskEvent, XCheckTypedEvent, XCheckTypedWindowEvent \- select events by type
.SH SYNTAX
XNextEvent\^(\^\fIdisplay\fP, \fIevent_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XEvent *\fIevent_return\fP\^;
.LP
XPeekEvent\^(\^\fIdisplay\fP, \fIevent_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XEvent *\fIevent_return\fP\^;
.LP
XWindowEvent\^(\^\fIdisplay\fP, \fIw\fP\^, \fIevent_mask\fP\^, \fIevent_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
long \fIevent_mask\fP\^;
.br
XEvent *\fIevent_return\fP\^;
.LP
Bool XCheckWindowEvent\^(\^\fIdisplay\fP, \fIw\fP\^, \fIevent_mask\fP\^, \fIevent_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
long \fIevent_mask\fP\^;
.br
XEvent *\fIevent_return\fP\^;
.LP
XMaskEvent\^(\^\fIdisplay\fP, \fIevent_mask\fP\^, \fIevent_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
long \fIevent_mask\fP\^;
.br
XEvent *\fIevent_return\fP\^;
.LP
Bool XCheckMaskEvent\^(\^\fIdisplay\fP, \fIevent_mask\fP\^, \fIevent_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
long \fIevent_mask\fP\^;
.br
XEvent *\fIevent_return\fP\^;
.LP
Bool XCheckTypedEvent\^(\^\fIdisplay\fP, \fIevent_type\fP\^, \fIevent_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
int \fIevent_type\fP\^;
.br
XEvent *\fIevent_return\fP\^;
.LP
Bool XCheckTypedWindowEvent\^(\^\fIdisplay\fP, \fIw\fP\^, \fIevent_type\fP\^, \fIevent_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
Window \fIw\fP\^;
.br
int \fIevent_type\fP\^;
.br
XEvent *\fIevent_return\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIevent_mask\fP 1i
Specifies the event mask.
.IP \fIevent_return\fP 1i
Returns the matched event's associated structure.
.IP \fIevent_return\fP 1i
Returns the next event in the queue.
.IP \fIevent_return\fP 1i
Returns a copy of the matched event's associated structure.
.IP \fIevent_type\fP 1i
Specifies the event type to be compared.
.ds Wi \ whose event uou are interested in
.IP \fIw\fP 1i
Specifies the window \*(Wi.
.SH DESCRIPTION
The
.ZN XNextEvent
function copies the first event from the event queue into the specified
.ZN XEvent
structure and then removes it from the queue.
If the event queue is empty,
.ZN XNextEvent
flushes the output buffer and blocks until an event is received.
.LP
The
.ZN XPeekEvent
function returns the first event from the event queue,
but it does not remove the event from the queue.
If the queue is empty,
.ZN XPeekEvent
flushes the output buffer and blocks until an event is received.
It then copies the event into the client-supplied
.ZN XEvent
structure without removing it from the event queue.
.LP
The
.ZN XWindowEvent
function searches the event queue for an event that matches both the specified
window and event mask.
When it finds a match,
.ZN XWindowEvent
removes that event from the queue and copies it into the specified
.ZN XEvent
structure.
The other events stored in the queue are not discarded.
If a matching event is not in the queue,
.ZN XWindowEvent
flushes the output buffer and blocks until one is received.
.LP
The
.ZN XCheckWindowEvent
function searches the event queue and then the events available
on the server connection for the first event that matches the specified window
and event mask.
If it finds a match,
.ZN XCheckWindowEvent
removes that event, copies it into the specified
.ZN XEvent
structure, and returns
.ZN True .
The other events stored in the queue are not discarded.
If the event you requested is not available,
.ZN XCheckWindowEvent
returns
.ZN False ,
and the output buffer will have been flushed.
.LP
The
.ZN XMaskEvent
function searches the event queue for the events associated with the
specified mask.
When it finds a match,
.ZN XMaskEvent
removes that event and copies it into the specified
.ZN XEvent
structure.
The other events stored in the queue are not discarded.
If the event you requested is not in the queue,
.ZN XMaskEvent
flushes the output buffer and blocks until one is received.
.LP
The
.ZN XCheckMaskEvent
function searches the event queue and then any events available on the
server connection for the first event that matches the specified mask.
If it finds a match,
.ZN XCheckMaskEvent
removes that event, copies it into the specified
.ZN XEvent
structure, and returns
.ZN True .
The other events stored in the queue are not discarded.
If the event you requested is not available,
.ZN XCheckMaskEvent
returns
.ZN False ,
and the output buffer will have been flushed.
.LP
The
.ZN XCheckTypedEvent
function searches the event queue and then any events available
on the server connection for the first event that matches the specified type.
If it finds a match,
.ZN XCheckTypedEvent
removes that event, copies it into the specified
.ZN XEvent
structure, and returns
.ZN True .
The other events in the queue are not discarded.
If the event is not available,
.ZN XCheckTypedEvent
returns
.ZN False ,
and the output buffer will have been flushed.
.LP
The
.ZN XCheckTypedWindowEvent
function searches the event queue and then any events available
on the server connection for the first event that matches the specified
type and window.
If it finds a match,
.ZN XCheckTypedWindowEvent
removes the event from the queue, copies it into the specified
.ZN XEvent
structure, and returns
.ZN True .
The other events in the queue are not discarded.
If the event is not available,
.ZN XCheckTypedWindowEvent
returns
.ZN False ,
and the output buffer will have been flushed.
.SH "SEE ALSO"
XAnyEvent(3X11),
XIfEvent(3X11),
XPutBackEvent(3X11),
XSendEvent(3X11)
.br
\fI\*(xL\fP

159
man/XNoOp.man Normal file
View file

@ -0,0 +1,159 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XNoOp 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XNoOp \- No Operation
.SH SYNTAX
XNoOp\^(\^\fIdisplay\fP\^)
.br
Display *\fIdisplay\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.SH DESCRIPTION
The
.ZN XNoOp
function sends a
.ZN NoOperation
protocol request to the X server,
thereby exercising the connection.
.SH "SEE ALSO"
\fI\*(xL\fP

258
man/XOpenDisplay.man Normal file
View file

@ -0,0 +1,258 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XOpenDisplay 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XOpenDisplay, XCloseDisplay \- connect or disconnect to X server
.SH SYNTAX
Display *XOpenDisplay\^(\^\fIdisplay_name\fP\^)
.br
char *\fIdisplay_name\fP\^;
.LP
XCloseDisplay\^(\fIdisplay\fP\^)
.br
Display *\fIdisplay\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIdisplay_name\fP 1i
Specifies the hardware display name, which determines the display
and communications domain to be used.
On a POSIX-conformant system, if the display_name is NULL,
it defaults to the value of the DISPLAY environment variable.
.IN "Environment" "DISPLAY"
.SH DESCRIPTION
The
.ZN XOpenDisplay
function returns a
.ZN Display
structure that serves as the
connection to the X server and that contains all the information
about that X server.
.ZN XOpenDisplay
connects your application to the X server through TCP
or DECnet communications protocols,
or through some local inter-process communication protocol.
.IN "Protocol" "TCP"
.IN "Protocol" "DECnet"
If the hostname is a host machine name and a single colon (:)
separates the hostname and display number,
.ZN XOpenDisplay
connects using TCP streams.
If the hostname is not specified,
Xlib uses whatever it believes is the fastest transport.
If the hostname is a host machine name and a double colon (::)
separates the hostname and display number,
.ZN XOpenDisplay
connects using DECnet.
A single X server can support any or all of these transport mechanisms
simultaneously.
A particular Xlib implementation can support many more of these transport
mechanisms.
.LP
.IN "Display"
If successful,
.ZN XOpenDisplay
returns a pointer to a
.ZN Display
structure,
which is defined in
.hN X11/Xlib.h .
If
.ZN XOpenDisplay
does not succeed, it returns NULL.
After a successful call to
.ZN XOpenDisplay ,
all of the screens in the display can be used by the client.
The screen number specified in the display_name argument is returned
by the
.ZN DefaultScreen
macro (or the
.ZN XDefaultScreen
function).
You can access elements of the
.ZN Display
and
.ZN Screen
structures only by using the information macros or functions.
For information about using macros and functions to obtain information from
the
.ZN Display
structure,
see section 2.2.1.
.LP
The
.ZN XCloseDisplay
function closes the connection to the X server for the display specified in the
.ZN Display
structure and destroys all windows, resource IDs
.Pn ( Window ,
.ZN Font ,
.ZN Pixmap ,
.ZN Colormap ,
.ZN Cursor ,
and
.ZN GContext ),
or other resources that the client has created
on this display, unless the close-down mode of the resource has been changed
(see
.ZN XSetCloseDownMode ).
Therefore, these windows, resource IDs, and other resources should never be
referenced again or an error will be generated.
Before exiting, you should call
.ZN XCloseDisplay
explicitly so that any pending errors are reported as
.ZN XCloseDisplay
performs a final
.ZN XSync
operation.
.IN "Resource IDs"
.IN "XCloseDisplay"
.LP
.ZN XCloseDisplay
can generate a
.ZN BadGC
error.
.SH "SEE ALSO"
AllPlanes(3X11),
XFlush(3X11),
XSetCloseDownMode(3X11)
.br
\fI\*(xL\fP

339
man/XOpenIM.man Normal file
View file

@ -0,0 +1,339 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XOpenIM 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XOpenIM, XCloseIM, XSetIMValues, XGetIMValues, XDisplayOfIM, XLocaleOfIM, XRegisterIMInstantiateCallback, XUnregisterIMInstantiateCallback \- open, close, and otain input method information
.SH SYNTAX
XIM XOpenIM\^(\^\fIdisplay\fP\^, \fIdb\fP\^, \fIres_name\fP\^, \fIres_class\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XrmDatabase \fIdb\fP\^;
.br
char *\fIres_name\fP\^;
.br
char *\fIres_class\fP\^;
.LP
Status XCloseIM\^(\^\fIim\fP\^)
.br
XIM \fIim\fP\^;
.LP
char * XSetIMValues\^(\^\fIim\fP\^, ...)
.br
XIM \fIim\fP\^;
.LP
char * XGetIMValues\^(\^\fIim\fP\^, ...)
.br
XIM \fIim\fP\^;
.LP
Display * XDisplayOfIM\^(\^\fIim\fP\^)
.br
XIM \fIim\fP\^;
.LP
char * XLocaleOfIM\^(\^\fIim\fP\^)
.br
XIM \fIim\fP\^;
.LP
Bool XRegisterIMInstantiateCallback\^(\^\fIdisplay\fP\^, \fIdb\fP\^, \fIres_name\fP\^, \fIres_class\fP\^, \fIcallback\fP\^, \fIclient_data\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XrmDatabase \fIdb\fP\^;
.br
char *\fIres_name\fP\^;
.br
char *\fIres_class\fP\^;
.br
XIMProc \fIcallback\fP\^;
.br
XPointer *\fIclient_data\fP\^;
.LP
Bool XUnregisterIMInstantiateCallback\^(\^\fIdisplay\fP\^, \fIdb\fP\^, \fIres_name\fP\^, \fIres_class\fP\^, \fIcallback\fP\^, \fIclient_data\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XrmDatabase \fIdb\fP\^;
.br
char *\fIres_name\fP\^;
.br
char *\fIres_class\fP\^;
.br
XIMProc \fIcallback\fP\^;
.br
XPointer *\fIclient_data\fP\^;
.LP
.SH ARGUMENTS
.IP \fIcallback\fP 1i
Specifies a pointer to the input method instantiate callback.
.IP \fIclient_data\fP 1i
Specifies the additional client data.
.IP \fIdb\fP 1i
Specifies a pointer to the resource database.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIim\fP 1i
Specifies the input method.
.IP \fIres_class\fP 1i
Specifies the full class name of the application.
.IP \fIres_name\fP 1i
Specifies the full resource name of the application.
.ds Al \ to set or get XIM values
.IP ... 1i
Specifies the variable length argument list\*(Al.
.SH DESCRIPTION
The
.ZN XOpenIM
function opens an input method,
matching the current locale and modifiers specification.
Current locale and modifiers are bound to the input method at opening time.
The locale associated with an input method cannot be changed dynamically.
This implies that the strings returned by
.ZN XmbLookupString
or
.ZN XwcLookupString ,
for any input context affiliated with a given input method
will be encoded in the locale current at the time the input method is opened.
.LP
The specific input method to which this call will be routed
is identified on the basis of the current locale.
.ZN XOpenIM
will identify a default input method corresponding to the
current locale.
That default can be modified using
.ZN XSetLocaleModifiers
for the input method modifier.
.LP
The db argument is the resource database to be used by the input method
for looking up resources that are private to the input method.
It is not intended that this database be used to look
up values that can be set as IC values in an input context.
If db is NULL,
no database is passed to the input method.
.LP
The res_name and res_class arguments specify the resource name
and class of the application.
They are intended to be used as prefixes by the input method
when looking up resources that are common to all input contexts
that may be created for this input method.
The characters used for resource names and classes must be in the
X Portable Character Set.
The resources looked up are not fully specified
if res_name or res_class is NULL.
.LP
The res_name and res_class arguments are not assumed to exist beyond
the call to
.ZN XOpenIM .
The specified resource database is assumed to exist for the lifetime
of the input method.
.LP
.ZN XOpenIM
returns NULL if no input method could be opened.
.LP
The
.ZN XCloseIM
function closes the specified input method.
.LP
The
.ZN XSetIMValues
function presents a variable argument list programming interface
for setting attributes of the specified input method.
It returns NULL if it succeeds;
otherwise,
it returns the name of the first argument that could not be set.
Xlib does not attempt to set arguments from the supplied list that
follow the failed argument;
all arguments in the list preceding the failed argument have been set
correctly.
.LP
The
.ZN XGetIMValues
function presents a variable argument list programming interface
for querying properties or features of the specified input method.
This function returns NULL if it succeeds;
otherwise,
it returns the name of the first argument that could not be obtained.
.LP
Each XIM value argument (following a name) must point to
a location where the XIM value is to be stored.
That is, if the XIM value is of type T,
the argument must be of type T*.
If T itself is a pointer type,
then
.ZN XGetIMValues
allocates memory to store the actual data,
and the client is responsible for freeing this data by calling
.ZN XFree
with the returned pointer.
.LP
The
.ZN XDisplayOfIM
function returns the display associated with the specified input method.
.LP
The
.ZN XLocaleOfIM
function returns the locale associated with the specified input method.
.LP
The
.ZN XRegisterIMInstantiateCallback
function registers a callback to be invoked whenever a new input method
becomes available for the specified display that matches the current
locale and modifiers.
.LP
The function returns
.ZN True
if it succeeds; otherwise, it returns
.ZN False .
.LP
The
.ZN XUnregisterIMInstantiateCallback
function removes an input method instantiation callback previously
registered.
The function returns
.ZN True
if it succeeds; otherwise, it returns
.ZN False .
.SH "SEE ALSO"
XCreateIC(3X11),
XSetICFocus(3X11),
XSetICValues(3X11),
XmbResetIC(3X11)
.br
\fI\*(xL\fP

267
man/XOpenOM.man Normal file
View file

@ -0,0 +1,267 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XOpenOM 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XOpenOM, XCloseOM, XSetOMValues, XGetOMValues, XDisplayOfOM, XLocaleOfOM \- open output methods
.SH SYNTAX
XOM XOpenOM\^(\^\fIdisplay\fP\^, \fIdb\fP\^, \fIres_name\fP\^, \fIres_class\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
XrmDatabase \fIdb\fP\^;
.br
char *\fIres_name\fP\^;
.br
char *\fIres_class\fP\^;
.LP
Status XCloseOM\^(\^\fIom\fP\^)
.br
XOM \fIom\fP\^;
.LP
char * XSetOMValues\^(\^\fIom\fP\^, ...)
.br
XOM \fIom\fP\^;
.LP
char * XGetOMValues\^(\^\fIom\fP\^, ...)
.br
XOM \fIom\fP\^;
.LP
Display * XDisplayOfOM\^(\^\fIom\fP\^)
.br
XOM \fIom\fP\^;
.LP
char * XLocaleOfOM\^(\^\fIom\fP\^)
.br
XOM \fIom\fP\^;
.SH ARGUMENTS
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIdb\fP 1i
Specifies a pointer to the resource database.
.IP \fIres_name\fP 1i
Specifies the full resource name of the application.
.IP \fIres_class\fP 1i
Specifies the full class name of the application.
.IP \fIom\fP 1i
Specifies the output method.
.ds Al \ to set or get XOM values
.IP ... 1i
Specifies the variable length argument list\*(Al.
.SH DESCRIPTION
The
.ZN XOpenOM
function opens an output method
matching the current locale and modifiers specification.
The current locale and modifiers are bound to the output method
when
.ZN XOpenOM
is called.
The locale associated with an output method cannot be changed.
.LP
The specific output method to which this call will be routed
is identified on the basis of the current locale and modifiers.
.ZN XOpenOM
will identify a default output method corresponding to the
current locale.
That default can be modified using
.ZN XSetLocaleModifiers
to set the output method modifier.
.LP
The db argument is the resource database to be used by the output method
for looking up resources that are private to the output method.
It is not intended that this database be used to look
up values that can be set as OC values in an output context.
If db is NULL,
no database is passed to the output method.
.LP
The res_name and res_class arguments specify the resource name
and class of the application.
They are intended to be used as prefixes by the output method
when looking up resources that are common to all output contexts
that may be created for this output method.
The characters used for resource names and classes must be in the
X Portable Character Set.
The resources looked up are not fully specified
if res_name or res_class is NULL.
.LP
The res_name and res_class arguments are not assumed to exist beyond
the call to
.ZN XOpenOM .
The specified resource database is assumed to exist for the lifetime
of the output method.
.LP
.ZN XOpenOM
returns NULL if no output method could be opened.
.LP
The
.ZN XCloseOM
function closes the specified output method.
.LP
The
.ZN XSetOMValues
function presents a variable argument list programming interface
for setting properties or features of the specified output method.
This function returns NULL if it succeeds;
otherwise,
it returns the name of the first argument that could not be obtained.
.LP
No standard arguments are currently defined by Xlib.
.LP
The
.ZN XGetOMValues
function presents a variable argument list programming interface
for querying properties or features of the specified output method.
This function returns NULL if it succeeds;
otherwise,
it returns the name of the first argument that could not be obtained.
.LP
The
.ZN XDisplayOfOM
function returns the display associated with the specified output method.
.LP
The
.ZN XLocaleOfOM
returns the locale associated with the specified output method.
.SH "SEE ALSO"
XCreateOC(3X11),
XCreateFontSet(3X11)
.br
\fI\*(xL\fP

304
man/XParseGeometry.man Normal file
View file

@ -0,0 +1,304 @@
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
.\"
.\" 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 X CONSORTIUM 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 X Consortium 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 X Consortium.
.\"
.\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
.\" Digital Equipment Corporation
.\"
.\" Portions Copyright \(co 1990, 1991 by
.\" Tektronix, Inc.
.\"
.\" Permission to use, copy, modify and distribute this documentation for
.\" any purpose and without fee is hereby granted, provided that the above
.\" copyright notice appears in all copies and that both that copyright notice
.\" and this permission notice appear in all copies, and that the names of
.\" Digital and Tektronix not be used in in advertising or publicity pertaining
.\" to this documentation without specific, written prior permission.
.\" Digital and Tektronix makes no representations about the suitability
.\" of this documentation for any purpose.
.\" It is provided ``as is'' without express or implied warranty.
.\"
.ds xT X Toolkit Intrinsics \- C Language Interface
.ds xW Athena X Widgets \- C Language X Toolkit Interface
.ds xL Xlib \- C Language X Interface
.ds xC Inter-Client Communication Conventions Manual
.na
.de Ds
.nf
.\\$1D \\$2 \\$1
.ft 1
.\".ps \\n(PS
.\".if \\n(VS>=40 .vs \\n(VSu
.\".if \\n(VS<=39 .vs \\n(VSp
..
.de De
.ce 0
.if \\n(BD .DF
.nr BD 0
.in \\n(OIu
.if \\n(TM .ls 2
.sp \\n(DDu
.fi
..
.de FD
.LP
.KS
.TA .5i 3i
.ta .5i 3i
.nf
..
.de FN
.fi
.KE
.LP
..
.de IN \" send an index entry to the stderr
..
.de C{
.KS
.nf
.D
.\"
.\" choose appropriate monospace font
.\" the imagen conditional, 480,
.\" may be changed to L if LB is too
.\" heavy for your eyes...
.\"
.ie "\\*(.T"480" .ft L
.el .ie "\\*(.T"300" .ft L
.el .ie "\\*(.T"202" .ft PO
.el .ie "\\*(.T"aps" .ft CW
.el .ft R
.ps \\n(PS
.ie \\n(VS>40 .vs \\n(VSu
.el .vs \\n(VSp
..
.de C}
.DE
.R
..
.de Pn
.ie t \\$1\fB\^\\$2\^\fR\\$3
.el \\$1\fI\^\\$2\^\fP\\$3
..
.de ZN
.ie t \fB\^\\$1\^\fR\\$2
.el \fI\^\\$1\^\fP\\$2
..
.de hN
.ie t <\fB\\$1\fR>\\$2
.el <\fI\\$1\fP>\\$2
..
.de NT
.ne 7
.ds NO Note
.if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
.if \\n(.$ .if !'\\$1'C' .ds NO \\$1
.ie n .sp
.el .sp 10p
.TB
.ce
\\*(NO
.ie n .sp
.el .sp 5p
.if '\\$1'C' .ce 99
.if '\\$2'C' .ce 99
.in +5n
.ll -5n
.R
..
. \" Note End -- doug kraft 3/85
.de NE
.ce 0
.in -5n
.ll +5n
.ie n .sp
.el .sp 10p
..
.ny0
.TH XParseGeometry 3X11 "Release 6.6" "X Version 11" "XLIB FUNCTIONS"
.SH NAME
XParseGeometry, XWMGeometry \- parse window geometry
.SH SYNTAX
int XParseGeometry\^(\^\fIparsestring\fP\^, \fIx_return\fP\^, \fIy_return\fP\^, \fIwidth_return\fP\^, \fIheight_return\fP\^)
.br
char *\fIparsestring\fP\^;
.br
int *\fIx_return\fP\^, *\fIy_return\fP\^;
.br
unsigned int *\fIwidth_return\fP\^, *\fIheight_return\fP\^;
.LP
int XWMGeometry\^(\^\fIdisplay\fP, \fIscreen\fP, \fIuser_geom\fP, \
\fIdef_geom\fP, \fIbwidth\fP, \fIhints\fP, \fIx_return\fP, \fIy_return\fP,
.br
\fIwidth_return\fP, \fIheight_return\fP, \fIgravity_return\fP\^)
.br
Display *\fIdisplay\fP\^;
.br
int \fIscreen\fP\^;
.br
char *\fIuser_geom\fP\^;
.br
char *\fIdef_geom\fP\^;
.br
unsigned int \fIbwidth\fP\^;
.br
XSizeHints *\fIhints\fP\^;
.br
int *\fIx_return\fP, *\fIy_return\fP\^;
.br
int *\fIwidth_return\fP\^;
.br
int *\fIheight_return\fP\^;
.br
int *\fIgravity_return\fP\^;
.SH ARGUMENTS
.IP \fIposition\fP 1i
.br
.ns
.IP \fIdefault_position\fP 1i
Specify the geometry specifications.
.IP \fIdisplay\fP 1i
Specifies the connection to the X server.
.IP \fIfheight\fP 1i
.br
.ns
.IP \fIfwidth\fP 1i
Specify the font height and width in pixels (increment size).
.IP \fIparsestring\fP 1i
Specifies the string you want to parse.
.IP \fIscreen\fP 1i
Specifies the screen.
.IP \fIwidth_return\fP 1i
.br
.ns
.IP \fIheight_return\fP 1i
Return the width and height determined.
.IP \fIxadder\fP 1i
.br
.ns
.IP \fIyadder\fP 1i
Specify additional interior padding needed in the window.
.IP \fIx_return\fP 1i
.br
.ns
.IP \fIy_return\fP 1i
Return the x and y offsets.
.IP \fIbwidth\fP 1i
Specifies the border width.
.IP \fIhints\fP 1i
Specifies the size hints for the window in its normal state.
.IP \fIdef_geom\fP 1i
Specifies the application's default geometry or NULL.
.IP \fIgravity_return\fP 1i
Returns the window gravity.
.IP \fIuser_geom\fP 1i
Specifies the user-specified geometry or NULL.
.SH DESCRIPTION
By convention,
X applications use a standard string to indicate window size and placement.
.ZN XParseGeometry
makes it easier to conform to this standard because it allows you
to parse the standard window geometry.
Specifically, this function lets you parse strings of the form:
.LP
.\" Start marker code here
.Ds
[=][<\fIwidth\fP>{xX}<\fIheight\fP>][{+-}<\fIxoffset\fP>{+-}<\fIyoffset\fP>]
.De
.\" End marker code here
.LP
The fields map into the arguments associated with this function.
(Items enclosed in <\^> are integers, items in [\^] are optional, and
items enclosed in {\^} indicate ``choose one of.''
Note that the brackets should not appear in the actual string.)
If the string is not in the Host Portable Character Encoding,
the result is implementation-dependent.
.LP
The
.ZN XParseGeometry
function returns a bitmask that indicates which of the four values (width,
height, xoffset, and yoffset) were actually found in the string
and whether the x and y values are negative.
By convention, \-0 is not equal to +0, because the user needs to
be able to say ``position the window relative to the right or bottom edge.''
For each value found, the corresponding argument is updated.
For each value not found, the argument is left unchanged.
The bits are represented by
.ZN XValue ,
.ZN YValue ,
.ZN WidthValue ,
.ZN HeightValue ,
.ZN XNegative ,
or
.ZN YNegative
and are defined in
.hN X11/Xutil.h .
They will be set whenever one of the values is defined
or one of the signs is set.
.LP
If the function returns either the
.ZN XValue
or
.ZN YValue
flag,
you should place the window at the requested position.
.LP
The
.ZN XWMGeometry
function combines any geometry information (given in the format used by
.ZN XParseGeometry )
specified by the user and by the calling program with size hints
(usually the ones to be stored in WM_NORMAL_HINTS) and returns the position,
size, and gravity
.Pn ( NorthWestGravity ,
.ZN NorthEastGravity ,
.ZN SouthEastGravity ,
or
.ZN SouthWestGravity )
that describe the window.
If the base size is not set in the
.ZN XSizeHints
structure,
the minimum size is used if set.
Otherwise, a base size of zero is assumed.
If no minimum size is set in the hints structure,
the base size is used.
A mask (in the form returned by
.ZN XParseGeometry )
that describes which values came from the user specification
and whether or not the position coordinates are relative
to the right and bottom edges is returned.
Note that these coordinates will have already been accounted for
in the x_return and y_return values.
.LP
Note that invalid geometry specifications can cause a width or height
of zero to be returned.
The caller may pass the address of the hints win_gravity field
as gravity_return to update the hints directly.
.SH "SEE ALSO"
XSetWMProperties(3X11)
.br
\fI\*(xL\fP

Some files were not shown because too many files have changed in this diff Show more