upload tizen2.0 source
[framework/uifw/xorg/lib/libx11.git] / man / XSetClipOrigin.man
1 .\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1994, 1996 X Consortium
2 .\"
3 .\" Permission is hereby granted, free of charge, to any person obtaining
4 .\" a copy of this software and associated documentation files (the
5 .\" "Software"), to deal in the Software without restriction, including
6 .\" without limitation the rights to use, copy, modify, merge, publish,
7 .\" distribute, sublicense, and/or sell copies of the Software, and to
8 .\" permit persons to whom the Software is furnished to do so, subject to
9 .\" the following conditions:
10 .\"
11 .\" The above copyright notice and this permission notice shall be included
12 .\" in all copies or substantial portions of the Software.
13 .\"
14 .\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15 .\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16 .\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
17 .\" IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR
18 .\" OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
19 .\" ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
20 .\" OTHER DEALINGS IN THE SOFTWARE.
21 .\"
22 .\" Except as contained in this notice, the name of the X Consortium shall
23 .\" not be used in advertising or otherwise to promote the sale, use or
24 .\" other dealings in this Software without prior written authorization
25 .\" from the X Consortium.
26 .\"
27 .\" Copyright \(co 1985, 1986, 1987, 1988, 1989, 1990, 1991 by
28 .\" Digital Equipment Corporation
29 .\"
30 .\" Portions Copyright \(co 1990, 1991 by
31 .\" Tektronix, Inc.
32 .\"
33 .\" Permission to use, copy, modify and distribute this documentation for
34 .\" any purpose and without fee is hereby granted, provided that the above
35 .\" copyright notice appears in all copies and that both that copyright notice
36 .\" and this permission notice appear in all copies, and that the names of
37 .\" Digital and Tektronix not be used in in advertising or publicity pertaining
38 .\" to this documentation without specific, written prior permission.
39 .\" Digital and Tektronix makes no representations about the suitability
40 .\" of this documentation for any purpose.
41 .\" It is provided ``as is'' without express or implied warranty.
42 .\" 
43 .\"
44 .ds xT X Toolkit Intrinsics \- C Language Interface
45 .ds xW Athena X Widgets \- C Language X Toolkit Interface
46 .ds xL Xlib \- C Language X Interface
47 .ds xC Inter-Client Communication Conventions Manual
48 .na
49 .de Ds
50 .nf
51 .\\$1D \\$2 \\$1
52 .ft 1
53 .\".ps \\n(PS
54 .\".if \\n(VS>=40 .vs \\n(VSu
55 .\".if \\n(VS<=39 .vs \\n(VSp
56 ..
57 .de De
58 .ce 0
59 .if \\n(BD .DF
60 .nr BD 0
61 .in \\n(OIu
62 .if \\n(TM .ls 2
63 .sp \\n(DDu
64 .fi
65 ..
66 .de FD
67 .LP
68 .KS
69 .TA .5i 3i
70 .ta .5i 3i
71 .nf
72 ..
73 .de FN
74 .fi
75 .KE
76 .LP
77 ..
78 .de IN          \" send an index entry to the stderr
79 ..
80 .de C{
81 .KS
82 .nf
83 .D
84 .\"
85 .\"     choose appropriate monospace font
86 .\"     the imagen conditional, 480,
87 .\"     may be changed to L if LB is too
88 .\"     heavy for your eyes...
89 .\"
90 .ie "\\*(.T"480" .ft L
91 .el .ie "\\*(.T"300" .ft L
92 .el .ie "\\*(.T"202" .ft PO
93 .el .ie "\\*(.T"aps" .ft CW
94 .el .ft R
95 .ps \\n(PS
96 .ie \\n(VS>40 .vs \\n(VSu
97 .el .vs \\n(VSp
98 ..
99 .de C}
100 .DE
101 .R
102 ..
103 .de Pn
104 .ie t \\$1\fB\^\\$2\^\fR\\$3
105 .el \\$1\fI\^\\$2\^\fP\\$3
106 ..
107 .de ZN
108 .ie t \fB\^\\$1\^\fR\\$2
109 .el \fI\^\\$1\^\fP\\$2
110 ..
111 .de hN
112 .ie t <\fB\\$1\fR>\\$2
113 .el <\fI\\$1\fP>\\$2
114 ..
115 .de NT
116 .ne 7
117 .ds NO Note
118 .if \\n(.$>$1 .if !'\\$2'C' .ds NO \\$2
119 .if \\n(.$ .if !'\\$1'C' .ds NO \\$1
120 .ie n .sp
121 .el .sp 10p
122 .TB
123 .ce
124 \\*(NO
125 .ie n .sp
126 .el .sp 5p
127 .if '\\$1'C' .ce 99
128 .if '\\$2'C' .ce 99
129 .in +5n
130 .ll -5n
131 .R
132 ..
133 .               \" Note End -- doug kraft 3/85
134 .de NE
135 .ce 0
136 .in -5n
137 .ll +5n
138 .ie n .sp
139 .el .sp 10p
140 ..
141 .ny0
142 .TH XSetClipOrigin __libmansuffix__ __xorgversion__ "XLIB FUNCTIONS"
143 .SH NAME
144 XSetClipOrigin, XSetClipMask, XSetClipRectangles \- GC convenience routines
145 .SH SYNTAX
146 .HP
147 int XSetClipOrigin\^(\^Display *\fIdisplay\fP\^, GC \fIgc\fP\^, int
148 \fIclip_x_origin\fP\^, int \fIclip_y_origin\fP\^); 
149 .HP
150 int XSetClipMask\^(\^Display *\fIdisplay\fP\^, GC \fIgc\fP\^, Pixmap
151 \fIpixmap\fP\^); 
152 .HP
153 int XSetClipRectangles\^(\^Display *\fIdisplay\fP\^, GC \fIgc\fP\^, int
154 \fIclip_x_origin\fP\^, int \fIclip_y_origin\fP\^, XRectangle
155 \fIrectangles\fP[]\^, int \fIn\fP\^, int \fIordering\fP\^); 
156 .SH ARGUMENTS
157 .IP \fIdisplay\fP 1i
158 Specifies the connection to the X server.
159 .IP \fIclip_x_origin\fP 1i
160 .br
161 .ns
162 .IP \fIclip_y_origin\fP 1i
163 Specify the x and y coordinates of the clip-mask origin.
164 .IP \fIgc\fP 1i
165 Specifies the GC.
166 .IP \fIn\fP 1i
167 Specifies the number of rectangles. 
168 .IP \fIordering\fP 1i
169 Specifies the ordering relations on the rectangles.
170 You can pass
171 .ZN Unsorted ,
172 .ZN YSorted ,
173 .ZN YXSorted ,
174 or
175 .ZN YXBanded .
176 .IP \fIpixmap\fP 1i
177 Specifies the pixmap or
178 .ZN None .
179 .IP \fIrectangles\fP 1i
180 Specifies an array of rectangles that define the clip-mask.
181 .SH DESCRIPTION
182 The
183 .ZN XSetClipOrigin
184 function sets the clip origin in the specified GC.
185 The clip-mask origin is interpreted relative to the origin of whatever
186 destination drawable is specified in the graphics request.
187 .LP
188 .ZN XSetClipOrigin
189 can generate
190 .ZN BadAlloc
191 and
192 .ZN BadGC 
193 errors.
194 .LP
195 The
196 .ZN XSetClipMask
197 function sets the clip-mask in the specified GC to the specified pixmap.
198 If the clip-mask is set to
199 .ZN None ,
200 the pixels are are always drawn (regardless of the clip-origin).
201 .LP
202 .ZN XSetClipMask
203 can generate
204 .ZN BadAlloc ,
205 .ZN BadGC ,
206 .ZN BadMatch ,
207 and
208 .ZN BadValue 
209 errors.
210 .LP
211 The
212 .ZN XSetClipRectangles
213 function changes the clip-mask in the specified GC 
214 to the specified list of rectangles and sets the clip origin.
215 The output is clipped to remain contained within the
216 rectangles.
217 The clip-origin is interpreted relative to the origin of
218 whatever destination drawable is specified in a graphics request.  
219 The rectangle coordinates are interpreted relative to the clip-origin.  
220 The rectangles should be nonintersecting, or the graphics results will be
221 undefined.
222 Note that the list of rectangles can be empty, 
223 which effectively disables output.
224 This is the opposite of passing
225 .ZN None
226 as the clip-mask in
227 .ZN XCreateGC ,
228 .ZN XChangeGC ,
229 and
230 .ZN XSetClipMask .
231 .LP
232 If known by the client, ordering relations on the rectangles can be
233 specified with the ordering argument. 
234 This may provide faster operation
235 by the server. 
236 If an incorrect ordering is specified, the X server may generate a
237 .ZN BadMatch
238 error, but it is not required to do so.
239 If no error is generated, the graphics
240 results are undefined.
241 .ZN Unsorted 
242 means the rectangles are in arbitrary order.
243 .ZN YSorted 
244 means that the rectangles are nondecreasing in their Y origin.
245 .ZN YXSorted 
246 additionally constrains 
247 .ZN YSorted 
248 order in that all
249 rectangles with an equal Y origin are nondecreasing in their X
250 origin.  
251 .ZN YXBanded 
252 additionally constrains 
253 .ZN YXSorted 
254 by requiring that,
255 for every possible Y scanline, all rectangles that include that
256 scanline have an identical Y origins and Y extents.
257 .LP
258 .ZN XSetClipRectangles
259 can generate
260 .ZN BadAlloc ,
261 .ZN BadGC ,
262 .ZN BadMatch ,
263 and
264 .ZN BadValue 
265 errors.
266 .SH DIAGNOSTICS
267 .TP 1i
268 .ZN BadAlloc
269 The server failed to allocate the requested resource or server memory.
270 .TP 1i
271 .ZN BadGC
272 A value for a GContext argument does not name a defined GContext.
273 .TP 1i
274 .ZN BadMatch
275 Some argument or pair of arguments has the correct type and range but fails
276 to match in some other way required by the request.
277 .TP 1i
278 .ZN BadValue
279 Some numeric value falls outside the range of values accepted by the request.
280 Unless a specific range is specified for an argument, the full range defined
281 by the argument's type is accepted.  Any argument defined as a set of
282 alternatives can generate this error.
283 .SH "SEE ALSO"
284 XCreateGC(__libmansuffix__),
285 XDrawRectangle(__libmansuffix__),
286 XQueryBestSize(__libmansuffix__),
287 XSetArcMode(__libmansuffix__),
288 XSetFillStyle(__libmansuffix__),
289 XSetFont(__libmansuffix__),
290 XSetLineAttributes(__libmansuffix__),
291 XSetState(__libmansuffix__),
292 XSetTile(__libmansuffix__)
293 .br
294 \fI\*(xL\fP