Blame man/DMXChangeDesktopAttributes.man

Packit ec660a
.\" Copyright 2004 Red Hat Inc., Durham, North Carolina.
Packit ec660a
.\" All Rights Reserved.
Packit ec660a
.\"
Packit ec660a
.\" Permission is hereby granted, free of charge, to any person obtaining
Packit ec660a
.\" a copy of this software and associated documentation files (the
Packit ec660a
.\" "Software"), to deal in the Software without restriction, including
Packit ec660a
.\" without limitation on the rights to use, copy, modify, merge,
Packit ec660a
.\" publish, distribute, sublicense, and/or sell copies of the Software,
Packit ec660a
.\" and to permit persons to whom the Software is furnished to do so,
Packit ec660a
.\" subject to the following conditions:
Packit ec660a
.\"
Packit ec660a
.\" he above copyright notice and this permission notice (including the
Packit ec660a
.\" next paragraph) shall be included in all copies or substantial
Packit ec660a
.\" portions of the Software.
Packit ec660a
.\"
Packit ec660a
.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
Packit ec660a
.\" EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
Packit ec660a
.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
Packit ec660a
.\" NON-INFRINGEMENT.  IN NO EVENT SHALL RED HAT AND/OR THEIR SUPPLIERS
Packit ec660a
.\" BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
Packit ec660a
.\" ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
Packit ec660a
.\" CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
Packit ec660a
.\" SOFTWARE.
Packit ec660a
.TH DMXChangeDesktopAttributes __libmansuffix__ __vendorversion__
Packit ec660a
.SH NAME
Packit ec660a
DMXChangeDesktopAttributes \- change global bounding box
Packit ec660a
.SH SYNOPSIS
Packit ec660a
.B #include <X11/extensions/dmxext.h>
Packit ec660a
.sp
Packit ec660a
.nf
Packit ec660a
.BI "int DMXChangeDesktopAttributes(Display " *dpy ,
Packit ec660a
.BI "                               unsigned int " mask ,
Packit ec660a
.BI "                               DMXDesktopAttributes " *attr );
Packit ec660a
.fi
Packit ec660a
.SH DESCRIPTION
Packit ec660a
.B DMXChangeDesktopAttributes()
Packit ec660a
resizes the bounding box of the whole screen when using the Xinerama
Packit ec660a
extension.  Otherwise, it has no effect on the screen layout.
Packit ec660a
An attribute mask is placed in
Packit ec660a
.I mask
Packit ec660a
and the attributes to change are placed in
Packit ec660a
.IR attr .
Packit ec660a
.PP
Packit ec660a
The values that are used to compute
Packit ec660a
.I mask
Packit ec660a
are as follows:
Packit ec660a
.sp
Packit ec660a
.nf
Packit ec660a
DMXDesktopWidth
Packit ec660a
DMXDesktopHeight
Packit ec660a
DMXDesktopShiftX
Packit ec660a
DMXDesktopShiftY
Packit ec660a
.fi
Packit ec660a
.PP
Packit ec660a
The
Packit ec660a
.B DMXDesktopAttributes
Packit ec660a
structure is:
Packit ec660a
.sp
Packit ec660a
.nf
Packit ec660a
typedef struct {
Packit ec660a
    unsigned int width;
Packit ec660a
    unsigned int height;
Packit ec660a
    int          shiftX;
Packit ec660a
    int          shiftY;
Packit ec660a
} DMXDesktopAttributes;
Packit ec660a
.fi
Packit ec660a
.PP
Packit ec660a
.I width " and " height
Packit ec660a
specify the new width and height for the bounding box.
Packit ec660a
.I shiftX " and " shiftY
Packit ec660a
specify where the Xinerama origin will be placed with respect to the
Packit ec660a
origin of the new bounding box.  This allows the left and upper edges of
Packit ec660a
the bounding box to be changed without changing the visual position of
Packit ec660a
the windows on the desktop.  If
Packit ec660a
.I width " or " height
Packit ec660a
is not specified, the current values will be used.  If
Packit ec660a
.I shiftX " or " shiftY
Packit ec660a
is not specified, 0 will be used.
Packit ec660a
.PP
Packit ec660a
All coordinates are in the global DMX coordinate system.  If Xinerama is
Packit ec660a
not active, an error will be generated.
Packit ec660a
.SH "RETURN VALUE"
Packit ec660a
.B DMXChangeDesktopAttributes()
Packit ec660a
will return 0 on success,
Packit ec660a
.B DmxBadXinerama
Packit ec660a
if Xinerama is not active,
Packit ec660a
.B DmxBadValue
Packit ec660a
if the size of the bounding box is too large, and
Packit ec660a
.B DmxBadReply
Packit ec660a
if there was a protocol error.
Packit ec660a
.PP
Packit ec660a
.B DMXChangeDesktopAttributes()
Packit ec660a
can generate
Packit ec660a
.B BadLength
Packit ec660a
(if the request is malformed, which should never happen when using this
Packit ec660a
library interface), and
Packit ec660a
.B BadValue
Packit ec660a
(if any values are out of range).
Packit ec660a
.SH "SEE ALSO"
Packit ec660a
.BR DMXGetDesktopAttributes "(__libmansuffix__), " DMX "(__libmansuffix__), " Xdmx (1)