The version shown in the man pages is incorrect. The version was hard-coded rather than having __vendorversion__ substituted.
The filename in git should be .man. The process to substitute the variables is the same used by all other modules. Signed-off-by: Gaetan Nadon <[email protected]> --- configure.ac | 1 + man/.gitignore | 3 - man/Makefile.am | 32 ++++++- man/WindowsWM.3 | 290 ----------------------------------------------------- man/WindowsWM.man | 290 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 320 insertions(+), 296 deletions(-) delete mode 100644 man/.gitignore delete mode 100644 man/WindowsWM.3 create mode 100644 man/WindowsWM.man diff --git a/configure.ac b/configure.ac index fd1a6d7..e48fb48 100644 --- a/configure.ac +++ b/configure.ac @@ -36,6 +36,7 @@ AM_CONFIG_HEADER(config.h) # Check for progs AC_PROG_CC AC_PROG_LIBTOOL +AC_PROG_SED XORG_DEFAULT_OPTIONS diff --git a/man/.gitignore b/man/.gitignore deleted file mode 100644 index 56de22d..0000000 --- a/man/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# Add & Override for this directory and it's subdirectories -# Override default pattern *.[0-9] from toplevel .gitignore -!WindowsWM.3 diff --git a/man/Makefile.am b/man/Makefile.am index 4217bfe..46672f0 100644 --- a/man/Makefile.am +++ b/man/Makefile.am @@ -19,6 +19,32 @@ # PERFORMANCE OF THIS SOFTWARE. # -man3_MANS = \ - WindowsWM.3 -EXTRA_DIST = $(man3_MANS) +libman_PRE = WindowsWM.man +libmandir = $(LIB_MAN_DIR) +libman_DATA = $(libman_PRE:man=$(LIB_MAN_SUFFIX)) + +EXTRA_DIST = $(libman_PRE) +CLEANFILES = $(libman_DATA) + +# Strings to replace in man pages +XORGRELSTRING = @PACKAGE_STRING@ + XORGMANNAME = X Version 11 + +MAN_SUBSTS = \ + -e 's|__vendorversion__|"$(XORGRELSTRING)" "$(XORGMANNAME)"|' \ + -e 's|__xorgversion__|"$(XORGRELSTRING)" "$(XORGMANNAME)"|' \ + -e 's|__xservername__|Xorg|g' \ + -e 's|__xconfigfile__|xorg.conf|g' \ + -e 's|__projectroot__|$(prefix)|g' \ + -e 's|__apploaddir__|$(appdefaultdir)|' \ + -e 's|__appmansuffix__|$(APP_MAN_SUFFIX)|g' \ + -e 's|__libmansuffix__|$(LIB_MAN_SUFFIX)|g' \ + -e 's|__adminmansuffix__|$(ADMIN_MAN_SUFFIX)|g' \ + -e 's|__miscmansuffix__|$(MISC_MAN_SUFFIX)|g' \ + -e 's|__filemansuffix__|$(FILE_MAN_SUFFIX)|g' + +SUFFIXES = .$(LIB_MAN_SUFFIX) .man + +.man.$(LIB_MAN_SUFFIX): + $(AM_V_GEN)$(SED) $(MAN_SUBSTS) < $< > $@ + diff --git a/man/WindowsWM.3 b/man/WindowsWM.3 deleted file mode 100644 index 2eda612..0000000 --- a/man/WindowsWM.3 +++ /dev/null @@ -1,290 +0,0 @@ -.\" -.\" $XFree86: xc/lib/apple/WindowsWM.man,v 1.2 2003/09/16 00:36:08 torrey Exp $ -.\" -.\" Copyright (c) 2002 Apple Computer, Inc. All Rights Reserved. -.\" Copyright (c) 2003 Torrey T. Lyons. All Rights Reserved. -.\" Copyright (c) 2008 Yaakov Selkowitz, All Rights Reserved. -.\" -.\" 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, sub license, 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 (including the -.\" next paragraph) 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 NON-INFRINGEMENT. -.\" IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS 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. -.\" -.\" .de TQ -.\" .br -.\" .ns -.\" .TP \\$1 -.\" .. -.\" -.TH "WINDOWSWM" "3" "Version 1.0" "XFree86" "" -.SH "NAME" -WindowsWM \- Cygwin/X rootless window management extension. -.SH "SYNTAX" -\&#include <X11/extensions/windowswm.h> -.nf -.sp -Bool XWindowsWMQueryExtension \^(\^Display *\fIdpy\fP, - int *\fIevent_base\fP, int *\fIerror_base\fP\^); -.sp -Status XWindowsWMQueryVersion \^(\^Display *\fIdpy\fP, int *\fImajorVersion\fP, - int *\fIminorVersion\fP, int *\fIpatchVersion\fP\^); -.sp -Bool XWindowsWMDisableUpdate \^(\^Display *\fIdpy\fP, int \fIscreen\fP\^); -.sp -Bool XWindowsWMReenableUpdate \^(\^Display *\fIdpy\fP, int \fIscreen\fP\^); -.sp -Bool XWindowsWMSelectInput \^(\^Display *\fIdpy\fP, unsigned long \fImask\fP\^); -.sp -Bool XWindowsWMSetFrontProcess \^(\^Display *\fIdpy\fP\^); -.sp -Bool XWindowsWMFrameGetRect \^(\^Display *\fIdpy\fP, - unsigned int \fIframe_style\fP, - unsigned int \fIframe_style_ex\fP, - unsigned int \fIframe_rect\fP, - short \fIinner_x\fP, short \fIinner_y\fP, - short \fIinner_w\fP, short \fIinner_h\fP, - short *\fIret_x\fP, short *\fIret_y\fP, - short *\fIret_w\fP, short *\fIret_h\fP\^); -.sp -Bool XWindowsWMFrameDraw \^(\^Display *\fIdpy\fP, int \fIscreen\fP, - Window \fIwindow\fP, - unsigned int \fIframe_style\fP, - unsigned int \fIframe_style_ex\fP, - short \fIinner_x\fP, short \fIinner_y\fP, - short \fIinner_w\fP, short \fIinner_h\fP\^); -.sp -Bool XWindowsWMFrameSetTitle \^(\^Display *\fIdpy\fP, int \fIscreen\fP, - Window \fIwindow\fP, - unsigned int \fItitle_length\fP, - const char *\fItitle_bytes\fP\^); -.fi -.SH "ARGUMENTS" -.IP \fIdpy\fP 1i -Specifies the connection to the X server. -.IP \fIscreen\fP 1i -Specifies which screen. -.IP \fImask\fP 1i -Mask of event types the client is interested in. -.IP \fIwindow\fP 1i -Specifies which window. -.IP \fIframe_style\fP 1i -Specifies the style of window frame decoration. -.IP \fIframe_style_ex\fP 1i -Specifies the extended style of window frame decoration. -.IP \fIframe_rect\fP 1i -Specifies which rectangle to return from the window frame decoration. -.IP \fIinner_x\fP,\fIinner_y\fP,\fIinner_w\fP,\fIinner_h\fP 1i -Rectangle of the window content inside the window frame decoration. - -.SH "DATATYPES" -.PP -.B Events -.nf -typedef struct { - int type; \/* of event *\/ - unsigned long serial; \/* # of last request processed by server *\/ - Bool send_event; \/* true if came from a SendEvent request *\/ - Display *display; \/* Display the event was read from *\/ - Window window; \/* window of event *\/ - Time time; \/* server timestamp when event happened *\/ - int kind; \/* subtype of event *\/ - int arg; - int x; - int y; - int w; - int h; -} XWindowsWMNotifyEvent; -.fi -.B XWindowsWMNotifyEvent -is sent to a client who has requested notification of WindowsWM events with -\fBXWindowsWMSelectInput\fP. - -.PP -Event types: -.nf -\&#define WindowsWMControllerNotify 0 -\&#define WindowsWMActivationNotify 1 -\&#define WindowsWMNumberEvents 2 -.fi -.PP -Event masks: -.nf -\&#define WindowsWMControllerNotifyMask (1L << 0) -\&#define WindowsWMActivationNotifyMask (1L << 1) -.fi -.PP -Kinds of ControllerNotify events: -.nf -\&#define WindowsWMMinimizeWindow 0 -\&#define WindowsWMMaximizeWindow 1 -\&#define WindowsWMRestoreWindow 2 -\&#define WindowsWMCloseWindow 3 -\&#define WindowsWMBringAllToFront 4 -\&#define WindowsWMHideWindow 5 -\&#define WindowsWMMoveWindow 6 -\&#define WindowsWMResizeWindow 7 -\&#define WindowsWMActivateWindow 8 -.fi -.PP -Kinds of ActivationNotify events: -.nf -\&#define WindowsWMIsActive 0 -\&#define WindowsWMIsInactive 1 -.fi -.PP -Errors: -.nf -\&#define WindowsWMClientNotLocal 0 -\&#define WindowsWMOperationNotSupported 1 -\&#define WindowsWMNumberErrors 2 -.fi -.PP -.B Window Parameters -.PP -Values for \fIframe_rect\fP argument to \fBXWindowsWMFrameGetRect\fP: -.nf -\&#define WindowsWMFrameRectTitleBar 1 -\&#define WindowsWMFrameRectTracking 2 -\&#define WindowsWMFrameRectGrowBox 3 -.fi -.PP -Window frame styles: -.nf -\&#define WindowsWMFrameStyleBorder 0x800000 -\&#define WindowsWMFrameStyleCaption 0xc00000 -\&#define WindowsWMFrameStyleChild 0x40000000 -\&#define WindowsWMFrameStyleChildWindow 0x40000000 -\&#define WindowsWMFrameStyleClipChildren 0x2000000 -\&#define WindowsWMFrameStyleClipSiblings 0x4000000 -\&#define WindowsWMFrameStyleDisabled 0x8000000 -\&#define WindowsWMFrameStyleDlgFrame 0x400000 -\&#define WindowsWMFrameStyleGroup 0x20000 -\&#define WindowsWMFrameStyleHScroll 0x100000 -\&#define WindowsWMFrameStyleIconic 0x20000000 -\&#define WindowsWMFrameStyleMaximize 0x1000000 -\&#define WindowsWMFrameStyleMaximizeBox 0x10000 -\&#define WindowsWMFrameStyleMinimize 0x20000000 -\&#define WindowsWMFrameStyleMinimizeBox 0x20000 -\&#define WindowsWMFrameStyleOverlapped 0 -\&#define WindowsWMFrameStyleOverlappedWindow 0xcf0000 -\&#define WindowsWMFrameStylePopup 0x80000000 -\&#define WindowsWMFrameStylePopupWindow 0x80880000 -\&#define WindowsWMFrameStyleSizeBox 0x40000 -\&#define WindowsWMFrameStyleSysMenu 0x80000 -\&#define WindowsWMFrameStyleTabStop 0x10000 -\&#define WindowsWMFrameStyleThickFrame 0x40000 -\&#define WindowsWMFrameStyleTiled 0 -\&#define WindowsWMFrameStyleTiledWindow 0xcf0000 -\&#define WindowsWMFrameStyleVisible 0x10000000 -\&#define WindowsWMFrameStyleVScroll 0x200000 -.fi -.PP -Window frame extended styles: -.nf -\&#define WindowsWMFrameStyleExAcceptFiles 16 -\&#define WindowsWMFrameStyleExAppWindow 0x40000 -\&#define WindowsWMFrameStyleExClientEdge 512 -\&#define WindowsWMFrameStyleExComposited 0x2000000 -\&#define WindowsWMFrameStyleExContextHelp 0x400 -\&#define WindowsWMFrameStyleExControlParent 0x10000 -\&#define WindowsWMFrameStyleExDlgModalFrame 1 -\&#define WindowsWMFrameStyleExLayered 0x80000 -\&#define WindowsWMFrameStyleExLayoutRtl 0x400000 -\&#define WindowsWMFrameStyleExLeft 0 -\&#define WindowsWMFrameStyleExLeftScrollBar 0x4000 -\&#define WindowsWMFrameStyleExLtrReading 0 -\&#define WindowsWMFrameStyleExMDIChild 64 -\&#define WindowsWMFrameStyleExNoActivate 0x8000000 -\&#define WindowsWMFrameStyleExNoInheritLayout 0x100000 -\&#define WindowsWMFrameStyleExNoParentNotify 4 -\&#define WindowsWMFrameStyleExOverlappedWindow 0x300 -\&#define WindowsWMFrameStyleExPaletteWindow 0x188 -\&#define WindowsWMFrameStyleExRight 0x1000 -\&#define WindowsWMFrameStyleExRightScrollBar 0 -\&#define WindowsWMFrameStyleExRtlReading 0x2000 -\&#define WindowsWMFrameStyleExStaticEdge 0x20000 -\&#define WindowsWMFrameStyleExToolWindow 128 -\&#define WindowsWMFrameStyleExTopMost 8 -\&#define WindowsWMFrameStyleExTransparent 32 -\&#define WindowsWMFrameStyleExWindowEdge 256 -.fi - -.SH "DESCRIPTION" -.B WindowsWM -is a simple library designed to interface with the Windows\-WM extension. -This extension allows X window managers to better interact with -the Cygwin XWin server when running X11 in a rootless mode. -.PP -A more complete description will be forthcoming eventually. - -.SH "FUNCTIONS" -.B XWindowsWMDisableUpdate -causes any updates to the windows on the screen to be queued until updates -are reenabled with \fBXWindowsWMReenableUpdate\fP. This is useful to avoid -intermediate redraws to the screen if a number of changes are going to be -made at once. Updates should only be disabled temporarily while drawing -to a window. These calls may be nested and each call to -\fBXWindowsWMDisableUpdate\fP must be paired with a subsequent call to -\fBXWindowsWMReenableUpdate\fP. Updating is not reenabled until the last -unnested call to \fBXWindowsWMReenableUpdate\fP. Disabling updates applies -to window content; however, it is implementation dependent whether window -size and position changes are disabled as well. -.PP -.B XWindowsWMSelectInput -is used to request that a client receive notification of the -.B WindowsWM -events listed above. The event mask specifies the event types the client is -interested in receiving. Passing an event mask of 0 stops notification of -events. -.PP -.B XWindowsWMSetFrontProcess -directs the X server to make itself the front most application among all -the other Windows applications. This causes X11 windows to move above -other applications' windows and for the X server to start receiving -keyboard and mouse events. -.PP -.B XWindowsWMFrameDraw -can be used to decorate a top\-level window with the standard Windows window -frame and widgets. The \fIframe_style\fP controls the overall look of the -window frame and \fIframe_style_ex\fP specifies the extended window style attributes. The dimensions of the X11 window content are passed as the \fIinner_*\fP rectangle. -.B XWindowsWMFrameGetRect -is used to calculate the size of the rectangle from the size of the -window content, which is being reparented. -.PP -.B XWindowsWMFrameSetTitle -can be used to set the title of the Windows window decoration. -.PP -.B XWindowsWMFrameGetRect -returns a rectangle that encloses an element of the window frame decoration. -The \fIframe_rect\fP argument specifies the element of interest. The -\fIinner_*\fP rectangle (as described above) specifies the window geometry. If WindowsWMFrameRectTitleBar is passed for \fIframe_rect\fP, -the \fIinner_*\fP parameters are ignored. The WindowsWMFrameRectTracking and -WindowsWMFrameRectGrowBox rectangles are primarily intended to be used by the -window manager to determine the correct placement for child windows to -receive events. The tracking rectangle is the area of the window containing -the close, collapse and zoom boxes. Typically when the cursor is over this -area, the window manager will highlight the close, collapse, and zoom -buttons to conform to the standard Aqua interface. -.PP -Other functions include: \fBXWindowsWMQueryExtension\fP, which returns the event -and error base codes and \fBXWindowsWMQueryVersion\fP, which returns the current -version of the extension. (This information is cached by the library.) - -.SH "RESTRICTIONS" -.B WindowsWM -is only intended to be used on Cygwin when running a rootless XWin server. diff --git a/man/WindowsWM.man b/man/WindowsWM.man new file mode 100644 index 0000000..bac8154 --- /dev/null +++ b/man/WindowsWM.man @@ -0,0 +1,290 @@ +.\" +.\" $XFree86: xc/lib/apple/WindowsWM.man,v 1.2 2003/09/16 00:36:08 torrey Exp $ +.\" +.\" Copyright (c) 2002 Apple Computer, Inc. All Rights Reserved. +.\" Copyright (c) 2003 Torrey T. Lyons. All Rights Reserved. +.\" Copyright (c) 2008 Yaakov Selkowitz, All Rights Reserved. +.\" +.\" 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, sub license, 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 (including the +.\" next paragraph) 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 NON-INFRINGEMENT. +.\" IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS 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. +.\" +.\" .de TQ +.\" .br +.\" .ns +.\" .TP \\$1 +.\" .. +.\" +.TH "WINDOWSWM" __libmansuffix__ __vendorversion__ +.SH "NAME" +WindowsWM \- Cygwin/X rootless window management extension. +.SH "SYNTAX" +\&#include <X11/extensions/windowswm.h> +.nf +.sp +Bool XWindowsWMQueryExtension \^(\^Display *\fIdpy\fP, + int *\fIevent_base\fP, int *\fIerror_base\fP\^); +.sp +Status XWindowsWMQueryVersion \^(\^Display *\fIdpy\fP, int *\fImajorVersion\fP, + int *\fIminorVersion\fP, int *\fIpatchVersion\fP\^); +.sp +Bool XWindowsWMDisableUpdate \^(\^Display *\fIdpy\fP, int \fIscreen\fP\^); +.sp +Bool XWindowsWMReenableUpdate \^(\^Display *\fIdpy\fP, int \fIscreen\fP\^); +.sp +Bool XWindowsWMSelectInput \^(\^Display *\fIdpy\fP, unsigned long \fImask\fP\^); +.sp +Bool XWindowsWMSetFrontProcess \^(\^Display *\fIdpy\fP\^); +.sp +Bool XWindowsWMFrameGetRect \^(\^Display *\fIdpy\fP, + unsigned int \fIframe_style\fP, + unsigned int \fIframe_style_ex\fP, + unsigned int \fIframe_rect\fP, + short \fIinner_x\fP, short \fIinner_y\fP, + short \fIinner_w\fP, short \fIinner_h\fP, + short *\fIret_x\fP, short *\fIret_y\fP, + short *\fIret_w\fP, short *\fIret_h\fP\^); +.sp +Bool XWindowsWMFrameDraw \^(\^Display *\fIdpy\fP, int \fIscreen\fP, + Window \fIwindow\fP, + unsigned int \fIframe_style\fP, + unsigned int \fIframe_style_ex\fP, + short \fIinner_x\fP, short \fIinner_y\fP, + short \fIinner_w\fP, short \fIinner_h\fP\^); +.sp +Bool XWindowsWMFrameSetTitle \^(\^Display *\fIdpy\fP, int \fIscreen\fP, + Window \fIwindow\fP, + unsigned int \fItitle_length\fP, + const char *\fItitle_bytes\fP\^); +.fi +.SH "ARGUMENTS" +.IP \fIdpy\fP 1i +Specifies the connection to the X server. +.IP \fIscreen\fP 1i +Specifies which screen. +.IP \fImask\fP 1i +Mask of event types the client is interested in. +.IP \fIwindow\fP 1i +Specifies which window. +.IP \fIframe_style\fP 1i +Specifies the style of window frame decoration. +.IP \fIframe_style_ex\fP 1i +Specifies the extended style of window frame decoration. +.IP \fIframe_rect\fP 1i +Specifies which rectangle to return from the window frame decoration. +.IP \fIinner_x\fP,\fIinner_y\fP,\fIinner_w\fP,\fIinner_h\fP 1i +Rectangle of the window content inside the window frame decoration. + +.SH "DATATYPES" +.PP +.B Events +.nf +typedef struct { + int type; \/* of event *\/ + unsigned long serial; \/* # of last request processed by server *\/ + Bool send_event; \/* true if came from a SendEvent request *\/ + Display *display; \/* Display the event was read from *\/ + Window window; \/* window of event *\/ + Time time; \/* server timestamp when event happened *\/ + int kind; \/* subtype of event *\/ + int arg; + int x; + int y; + int w; + int h; +} XWindowsWMNotifyEvent; +.fi +.B XWindowsWMNotifyEvent +is sent to a client who has requested notification of WindowsWM events with +\fBXWindowsWMSelectInput\fP. + +.PP +Event types: +.nf +\&#define WindowsWMControllerNotify 0 +\&#define WindowsWMActivationNotify 1 +\&#define WindowsWMNumberEvents 2 +.fi +.PP +Event masks: +.nf +\&#define WindowsWMControllerNotifyMask (1L << 0) +\&#define WindowsWMActivationNotifyMask (1L << 1) +.fi +.PP +Kinds of ControllerNotify events: +.nf +\&#define WindowsWMMinimizeWindow 0 +\&#define WindowsWMMaximizeWindow 1 +\&#define WindowsWMRestoreWindow 2 +\&#define WindowsWMCloseWindow 3 +\&#define WindowsWMBringAllToFront 4 +\&#define WindowsWMHideWindow 5 +\&#define WindowsWMMoveWindow 6 +\&#define WindowsWMResizeWindow 7 +\&#define WindowsWMActivateWindow 8 +.fi +.PP +Kinds of ActivationNotify events: +.nf +\&#define WindowsWMIsActive 0 +\&#define WindowsWMIsInactive 1 +.fi +.PP +Errors: +.nf +\&#define WindowsWMClientNotLocal 0 +\&#define WindowsWMOperationNotSupported 1 +\&#define WindowsWMNumberErrors 2 +.fi +.PP +.B Window Parameters +.PP +Values for \fIframe_rect\fP argument to \fBXWindowsWMFrameGetRect\fP: +.nf +\&#define WindowsWMFrameRectTitleBar 1 +\&#define WindowsWMFrameRectTracking 2 +\&#define WindowsWMFrameRectGrowBox 3 +.fi +.PP +Window frame styles: +.nf +\&#define WindowsWMFrameStyleBorder 0x800000 +\&#define WindowsWMFrameStyleCaption 0xc00000 +\&#define WindowsWMFrameStyleChild 0x40000000 +\&#define WindowsWMFrameStyleChildWindow 0x40000000 +\&#define WindowsWMFrameStyleClipChildren 0x2000000 +\&#define WindowsWMFrameStyleClipSiblings 0x4000000 +\&#define WindowsWMFrameStyleDisabled 0x8000000 +\&#define WindowsWMFrameStyleDlgFrame 0x400000 +\&#define WindowsWMFrameStyleGroup 0x20000 +\&#define WindowsWMFrameStyleHScroll 0x100000 +\&#define WindowsWMFrameStyleIconic 0x20000000 +\&#define WindowsWMFrameStyleMaximize 0x1000000 +\&#define WindowsWMFrameStyleMaximizeBox 0x10000 +\&#define WindowsWMFrameStyleMinimize 0x20000000 +\&#define WindowsWMFrameStyleMinimizeBox 0x20000 +\&#define WindowsWMFrameStyleOverlapped 0 +\&#define WindowsWMFrameStyleOverlappedWindow 0xcf0000 +\&#define WindowsWMFrameStylePopup 0x80000000 +\&#define WindowsWMFrameStylePopupWindow 0x80880000 +\&#define WindowsWMFrameStyleSizeBox 0x40000 +\&#define WindowsWMFrameStyleSysMenu 0x80000 +\&#define WindowsWMFrameStyleTabStop 0x10000 +\&#define WindowsWMFrameStyleThickFrame 0x40000 +\&#define WindowsWMFrameStyleTiled 0 +\&#define WindowsWMFrameStyleTiledWindow 0xcf0000 +\&#define WindowsWMFrameStyleVisible 0x10000000 +\&#define WindowsWMFrameStyleVScroll 0x200000 +.fi +.PP +Window frame extended styles: +.nf +\&#define WindowsWMFrameStyleExAcceptFiles 16 +\&#define WindowsWMFrameStyleExAppWindow 0x40000 +\&#define WindowsWMFrameStyleExClientEdge 512 +\&#define WindowsWMFrameStyleExComposited 0x2000000 +\&#define WindowsWMFrameStyleExContextHelp 0x400 +\&#define WindowsWMFrameStyleExControlParent 0x10000 +\&#define WindowsWMFrameStyleExDlgModalFrame 1 +\&#define WindowsWMFrameStyleExLayered 0x80000 +\&#define WindowsWMFrameStyleExLayoutRtl 0x400000 +\&#define WindowsWMFrameStyleExLeft 0 +\&#define WindowsWMFrameStyleExLeftScrollBar 0x4000 +\&#define WindowsWMFrameStyleExLtrReading 0 +\&#define WindowsWMFrameStyleExMDIChild 64 +\&#define WindowsWMFrameStyleExNoActivate 0x8000000 +\&#define WindowsWMFrameStyleExNoInheritLayout 0x100000 +\&#define WindowsWMFrameStyleExNoParentNotify 4 +\&#define WindowsWMFrameStyleExOverlappedWindow 0x300 +\&#define WindowsWMFrameStyleExPaletteWindow 0x188 +\&#define WindowsWMFrameStyleExRight 0x1000 +\&#define WindowsWMFrameStyleExRightScrollBar 0 +\&#define WindowsWMFrameStyleExRtlReading 0x2000 +\&#define WindowsWMFrameStyleExStaticEdge 0x20000 +\&#define WindowsWMFrameStyleExToolWindow 128 +\&#define WindowsWMFrameStyleExTopMost 8 +\&#define WindowsWMFrameStyleExTransparent 32 +\&#define WindowsWMFrameStyleExWindowEdge 256 +.fi + +.SH "DESCRIPTION" +.B WindowsWM +is a simple library designed to interface with the Windows\-WM extension. +This extension allows X window managers to better interact with +the Cygwin XWin server when running X11 in a rootless mode. +.PP +A more complete description will be forthcoming eventually. + +.SH "FUNCTIONS" +.B XWindowsWMDisableUpdate +causes any updates to the windows on the screen to be queued until updates +are reenabled with \fBXWindowsWMReenableUpdate\fP. This is useful to avoid +intermediate redraws to the screen if a number of changes are going to be +made at once. Updates should only be disabled temporarily while drawing +to a window. These calls may be nested and each call to +\fBXWindowsWMDisableUpdate\fP must be paired with a subsequent call to +\fBXWindowsWMReenableUpdate\fP. Updating is not reenabled until the last +unnested call to \fBXWindowsWMReenableUpdate\fP. Disabling updates applies +to window content; however, it is implementation dependent whether window +size and position changes are disabled as well. +.PP +.B XWindowsWMSelectInput +is used to request that a client receive notification of the +.B WindowsWM +events listed above. The event mask specifies the event types the client is +interested in receiving. Passing an event mask of 0 stops notification of +events. +.PP +.B XWindowsWMSetFrontProcess +directs the X server to make itself the front most application among all +the other Windows applications. This causes X11 windows to move above +other applications' windows and for the X server to start receiving +keyboard and mouse events. +.PP +.B XWindowsWMFrameDraw +can be used to decorate a top\-level window with the standard Windows window +frame and widgets. The \fIframe_style\fP controls the overall look of the +window frame and \fIframe_style_ex\fP specifies the extended window style attributes. The dimensions of the X11 window content are passed as the \fIinner_*\fP rectangle. +.B XWindowsWMFrameGetRect +is used to calculate the size of the rectangle from the size of the +window content, which is being reparented. +.PP +.B XWindowsWMFrameSetTitle +can be used to set the title of the Windows window decoration. +.PP +.B XWindowsWMFrameGetRect +returns a rectangle that encloses an element of the window frame decoration. +The \fIframe_rect\fP argument specifies the element of interest. The +\fIinner_*\fP rectangle (as described above) specifies the window geometry. If WindowsWMFrameRectTitleBar is passed for \fIframe_rect\fP, +the \fIinner_*\fP parameters are ignored. The WindowsWMFrameRectTracking and +WindowsWMFrameRectGrowBox rectangles are primarily intended to be used by the +window manager to determine the correct placement for child windows to +receive events. The tracking rectangle is the area of the window containing +the close, collapse and zoom boxes. Typically when the cursor is over this +area, the window manager will highlight the close, collapse, and zoom +buttons to conform to the standard Aqua interface. +.PP +Other functions include: \fBXWindowsWMQueryExtension\fP, which returns the event +and error base codes and \fBXWindowsWMQueryVersion\fP, which returns the current +version of the extension. (This information is cached by the library.) + +.SH "RESTRICTIONS" +.B WindowsWM +is only intended to be used on Cygwin when running a rootless XWin server. -- 1.6.0.4 _______________________________________________ xorg-devel mailing list [email protected] http://lists.x.org/mailman/listinfo/xorg-devel
