VirtualBox

source: vbox/trunk/src/VBox/Additions/x11/x11include/xorg-server-1.3.0.0/mi.h@ 56743

Last change on this file since 56743 was 25078, checked in by vboxsync, 15 years ago

Additions/x11/x11include: exported and set eol-style on new headers

  • Property svn:eol-style set to native
File size: 11.9 KB
Line 
1/***********************************************************
2
3Copyright 1987, 1998 The Open Group
4
5Permission to use, copy, modify, distribute, and sell this software and its
6documentation for any purpose is hereby granted without fee, provided that
7the above copyright notice appear in all copies and that both that
8copyright notice and this permission notice appear in supporting
9documentation.
10
11The above copyright notice and this permission notice shall be included in
12all copies or substantial portions of the Software.
13
14THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
18AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
19CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
20
21Except as contained in this notice, the name of The Open Group shall not be
22used in advertising or otherwise to promote the sale, use or other dealings
23in this Software without prior written authorization from The Open Group.
24
25
26Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts.
27
28 All Rights Reserved
29
30Permission to use, copy, modify, and distribute this software and its
31documentation for any purpose and without fee is hereby granted,
32provided that the above copyright notice appear in all copies and that
33both that copyright notice and this permission notice appear in
34supporting documentation, and that the name of Digital not be
35used in advertising or publicity pertaining to distribution of the
36software without specific, written prior permission.
37
38DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
39ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
40DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
41ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
42WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
43ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
44SOFTWARE.
45
46******************************************************************/
47
48#ifndef MI_H
49#define MI_H
50#include <X11/X.h>
51#include "region.h"
52#include "validate.h"
53#include "window.h"
54#include "gc.h"
55#include <X11/fonts/font.h>
56#include "input.h"
57#include "cursor.h"
58
59#define MiBits CARD32
60
61typedef struct _miDash *miDashPtr;
62#define EVEN_DASH 0
63#define ODD_DASH ~0
64
65/* miarc.c */
66
67extern void miPolyArc(
68 DrawablePtr /*pDraw*/,
69 GCPtr /*pGC*/,
70 int /*narcs*/,
71 xArc * /*parcs*/
72);
73
74/* mibitblt.c */
75
76extern RegionPtr miCopyArea(
77 DrawablePtr /*pSrcDrawable*/,
78 DrawablePtr /*pDstDrawable*/,
79 GCPtr /*pGC*/,
80 int /*xIn*/,
81 int /*yIn*/,
82 int /*widthSrc*/,
83 int /*heightSrc*/,
84 int /*xOut*/,
85 int /*yOut*/
86);
87
88extern void miOpqStipDrawable(
89 DrawablePtr /*pDraw*/,
90 GCPtr /*pGC*/,
91 RegionPtr /*prgnSrc*/,
92 MiBits * /*pbits*/,
93 int /*srcx*/,
94 int /*w*/,
95 int /*h*/,
96 int /*dstx*/,
97 int /*dsty*/
98);
99
100extern RegionPtr miCopyPlane(
101 DrawablePtr /*pSrcDrawable*/,
102 DrawablePtr /*pDstDrawable*/,
103 GCPtr /*pGC*/,
104 int /*srcx*/,
105 int /*srcy*/,
106 int /*width*/,
107 int /*height*/,
108 int /*dstx*/,
109 int /*dsty*/,
110 unsigned long /*bitPlane*/
111);
112
113extern void miGetImage(
114 DrawablePtr /*pDraw*/,
115 int /*sx*/,
116 int /*sy*/,
117 int /*w*/,
118 int /*h*/,
119 unsigned int /*format*/,
120 unsigned long /*planeMask*/,
121 char * /*pdstLine*/
122);
123
124extern void miPutImage(
125 DrawablePtr /*pDraw*/,
126 GCPtr /*pGC*/,
127 int /*depth*/,
128 int /*x*/,
129 int /*y*/,
130 int /*w*/,
131 int /*h*/,
132 int /*leftPad*/,
133 int /*format*/,
134 char * /*pImage*/
135);
136
137/* micursor.c */
138
139extern void miRecolorCursor(
140 ScreenPtr /*pScr*/,
141 CursorPtr /*pCurs*/,
142 Bool /*displayed*/
143);
144
145/* midash.c */
146
147extern miDashPtr miDashLine(
148 int /*npt*/,
149 DDXPointPtr /*ppt*/,
150 unsigned int /*nDash*/,
151 unsigned char * /*pDash*/,
152 unsigned int /*offset*/,
153 int * /*pnseg*/
154);
155
156extern void miStepDash(
157 int /*dist*/,
158 int * /*pDashIndex*/,
159 unsigned char * /*pDash*/,
160 int /*numInDashList*/,
161 int * /*pDashOffset*/
162);
163
164/* mieq.c */
165
166
167#ifndef INPUT_H
168typedef struct _DeviceRec *DevicePtr;
169#endif
170
171extern Bool mieqInit(
172 DevicePtr /*pKbd*/,
173 DevicePtr /*pPtr*/
174);
175
176extern void mieqEnqueue(
177 xEventPtr /*e*/
178);
179
180extern void mieqSwitchScreen(
181 ScreenPtr /*pScreen*/,
182 Bool /*fromDIX*/
183);
184
185extern void mieqProcessInputEvents(
186 void
187);
188
189/* miexpose.c */
190
191extern RegionPtr miHandleExposures(
192 DrawablePtr /*pSrcDrawable*/,
193 DrawablePtr /*pDstDrawable*/,
194 GCPtr /*pGC*/,
195 int /*srcx*/,
196 int /*srcy*/,
197 int /*width*/,
198 int /*height*/,
199 int /*dstx*/,
200 int /*dsty*/,
201 unsigned long /*plane*/
202);
203
204extern void miSendGraphicsExpose(
205 ClientPtr /*client*/,
206 RegionPtr /*pRgn*/,
207 XID /*drawable*/,
208 int /*major*/,
209 int /*minor*/
210);
211
212extern void miSendExposures(
213 WindowPtr /*pWin*/,
214 RegionPtr /*pRgn*/,
215 int /*dx*/,
216 int /*dy*/
217);
218
219extern void miWindowExposures(
220 WindowPtr /*pWin*/,
221 RegionPtr /*prgn*/,
222 RegionPtr /*other_exposed*/
223);
224
225extern void miPaintWindow(
226 WindowPtr /*pWin*/,
227 RegionPtr /*prgn*/,
228 int /*what*/
229);
230
231extern void miClearDrawable(
232 DrawablePtr /*pDraw*/,
233 GCPtr /*pGC*/
234);
235
236/* mifillrct.c */
237
238extern void miPolyFillRect(
239 DrawablePtr /*pDrawable*/,
240 GCPtr /*pGC*/,
241 int /*nrectFill*/,
242 xRectangle * /*prectInit*/
243);
244
245/* miglblt.c */
246
247extern void miPolyGlyphBlt(
248 DrawablePtr /*pDrawable*/,
249 GCPtr /*pGC*/,
250 int /*x*/,
251 int /*y*/,
252 unsigned int /*nglyph*/,
253 CharInfoPtr * /*ppci*/,
254 pointer /*pglyphBase*/
255);
256
257extern void miImageGlyphBlt(
258 DrawablePtr /*pDrawable*/,
259 GCPtr /*pGC*/,
260 int /*x*/,
261 int /*y*/,
262 unsigned int /*nglyph*/,
263 CharInfoPtr * /*ppci*/,
264 pointer /*pglyphBase*/
265);
266
267/* mipoly.c */
268
269extern void miFillPolygon(
270 DrawablePtr /*dst*/,
271 GCPtr /*pgc*/,
272 int /*shape*/,
273 int /*mode*/,
274 int /*count*/,
275 DDXPointPtr /*pPts*/
276);
277
278/* mipolycon.c */
279
280extern Bool miFillConvexPoly(
281 DrawablePtr /*dst*/,
282 GCPtr /*pgc*/,
283 int /*count*/,
284 DDXPointPtr /*ptsIn*/
285);
286
287/* mipolygen.c */
288
289extern Bool miFillGeneralPoly(
290 DrawablePtr /*dst*/,
291 GCPtr /*pgc*/,
292 int /*count*/,
293 DDXPointPtr /*ptsIn*/
294);
295
296/* mipolypnt.c */
297
298extern void miPolyPoint(
299 DrawablePtr /*pDrawable*/,
300 GCPtr /*pGC*/,
301 int /*mode*/,
302 int /*npt*/,
303 xPoint * /*pptInit*/
304);
305
306/* mipolyrect.c */
307
308extern void miPolyRectangle(
309 DrawablePtr /*pDraw*/,
310 GCPtr /*pGC*/,
311 int /*nrects*/,
312 xRectangle * /*pRects*/
313);
314
315/* mipolyseg.c */
316
317extern void miPolySegment(
318 DrawablePtr /*pDraw*/,
319 GCPtr /*pGC*/,
320 int /*nseg*/,
321 xSegment * /*pSegs*/
322);
323
324/* mipolytext.c */
325
326extern int miPolyText(
327 DrawablePtr /*pDraw*/,
328 GCPtr /*pGC*/,
329 int /*x*/,
330 int /*y*/,
331 int /*count*/,
332 char * /*chars*/,
333 FontEncoding /*fontEncoding*/
334);
335
336extern int miPolyText8(
337 DrawablePtr /*pDraw*/,
338 GCPtr /*pGC*/,
339 int /*x*/,
340 int /*y*/,
341 int /*count*/,
342 char * /*chars*/
343);
344
345extern int miPolyText16(
346 DrawablePtr /*pDraw*/,
347 GCPtr /*pGC*/,
348 int /*x*/,
349 int /*y*/,
350 int /*count*/,
351 unsigned short * /*chars*/
352);
353
354extern int miImageText(
355 DrawablePtr /*pDraw*/,
356 GCPtr /*pGC*/,
357 int /*x*/,
358 int /*y*/,
359 int /*count*/,
360 char * /*chars*/,
361 FontEncoding /*fontEncoding*/
362);
363
364extern void miImageText8(
365 DrawablePtr /*pDraw*/,
366 GCPtr /*pGC*/,
367 int /*x*/,
368 int /*y*/,
369 int /*count*/,
370 char * /*chars*/
371);
372
373extern void miImageText16(
374 DrawablePtr /*pDraw*/,
375 GCPtr /*pGC*/,
376 int /*x*/,
377 int /*y*/,
378 int /*count*/,
379 unsigned short * /*chars*/
380);
381
382/* mipushpxl.c */
383
384extern void miPushPixels(
385 GCPtr /*pGC*/,
386 PixmapPtr /*pBitMap*/,
387 DrawablePtr /*pDrawable*/,
388 int /*dx*/,
389 int /*dy*/,
390 int /*xOrg*/,
391 int /*yOrg*/
392);
393
394/* miregion.c */
395
396/* see also region.h */
397
398extern Bool miRectAlloc(
399 RegionPtr /*pRgn*/,
400 int /*n*/
401);
402
403extern void miSetExtents(
404 RegionPtr /*pReg*/
405);
406
407extern int miFindMaxBand(
408 RegionPtr /*prgn*/
409);
410
411#ifdef DEBUG
412extern Bool miValidRegion(
413 RegionPtr /*prgn*/
414);
415#endif
416
417extern Bool miRegionDataCopy(RegionPtr dst, RegionPtr src);
418extern Bool miRegionBroken(RegionPtr pReg);
419
420/* miscrinit.c */
421
422extern Bool miModifyPixmapHeader(
423 PixmapPtr /*pPixmap*/,
424 int /*width*/,
425 int /*height*/,
426 int /*depth*/,
427 int /*bitsPerPixel*/,
428 int /*devKind*/,
429 pointer /*pPixData*/
430);
431
432extern Bool miCloseScreen(
433 int /*index*/,
434 ScreenPtr /*pScreen*/
435);
436
437extern Bool miCreateScreenResources(
438 ScreenPtr /*pScreen*/
439);
440
441extern Bool miScreenDevPrivateInit(
442 ScreenPtr /*pScreen*/,
443 int /*width*/,
444 pointer /*pbits*/
445);
446
447extern Bool miScreenInit(
448 ScreenPtr /*pScreen*/,
449 pointer /*pbits*/,
450 int /*xsize*/,
451 int /*ysize*/,
452 int /*dpix*/,
453 int /*dpiy*/,
454 int /*width*/,
455 int /*rootDepth*/,
456 int /*numDepths*/,
457 DepthPtr /*depths*/,
458 VisualID /*rootVisual*/,
459 int /*numVisuals*/,
460 VisualPtr /*visuals*/
461);
462
463extern int miAllocateGCPrivateIndex(
464 void
465);
466
467extern PixmapPtr miGetScreenPixmap(
468 ScreenPtr pScreen
469);
470
471extern void miSetScreenPixmap(
472 PixmapPtr pPix
473);
474
475/* mivaltree.c */
476
477extern int miShapedWindowIn(
478 ScreenPtr /*pScreen*/,
479 RegionPtr /*universe*/,
480 RegionPtr /*bounding*/,
481 BoxPtr /*rect*/,
482 int /*x*/,
483 int /*y*/
484);
485
486typedef void
487(*SetRedirectBorderClipProcPtr) (WindowPtr pWindow, RegionPtr pRegion);
488
489typedef RegionPtr
490(*GetRedirectBorderClipProcPtr) (WindowPtr pWindow);
491
492void
493miRegisterRedirectBorderClipProc (SetRedirectBorderClipProcPtr setBorderClip,
494 GetRedirectBorderClipProcPtr getBorderClip);
495
496extern int miValidateTree(
497 WindowPtr /*pParent*/,
498 WindowPtr /*pChild*/,
499 VTKind /*kind*/
500);
501
502extern void miWideLine(
503 DrawablePtr /*pDrawable*/,
504 GCPtr /*pGC*/,
505 int /*mode*/,
506 int /*npt*/,
507 DDXPointPtr /*pPts*/
508);
509
510extern void miWideDash(
511 DrawablePtr /*pDrawable*/,
512 GCPtr /*pGC*/,
513 int /*mode*/,
514 int /*npt*/,
515 DDXPointPtr /*pPts*/
516);
517
518/* miwindow.c */
519
520extern void miClearToBackground(
521 WindowPtr /*pWin*/,
522 int /*x*/,
523 int /*y*/,
524 int /*w*/,
525 int /*h*/,
526 Bool /*generateExposures*/
527);
528
529extern Bool miChangeSaveUnder(
530 WindowPtr /*pWin*/,
531 WindowPtr /*first*/
532);
533
534extern void miPostChangeSaveUnder(
535 WindowPtr /*pWin*/,
536 WindowPtr /*pFirst*/
537);
538
539extern void miMarkWindow(
540 WindowPtr /*pWin*/
541);
542
543extern Bool miMarkOverlappedWindows(
544 WindowPtr /*pWin*/,
545 WindowPtr /*pFirst*/,
546 WindowPtr * /*ppLayerWin*/
547);
548
549extern void miHandleValidateExposures(
550 WindowPtr /*pWin*/
551);
552
553extern void miMoveWindow(
554 WindowPtr /*pWin*/,
555 int /*x*/,
556 int /*y*/,
557 WindowPtr /*pNextSib*/,
558 VTKind /*kind*/
559);
560
561extern void miSlideAndSizeWindow(
562 WindowPtr /*pWin*/,
563 int /*x*/,
564 int /*y*/,
565 unsigned int /*w*/,
566 unsigned int /*h*/,
567 WindowPtr /*pSib*/
568);
569
570extern WindowPtr miGetLayerWindow(
571 WindowPtr /*pWin*/
572);
573
574extern void miSetShape(
575 WindowPtr /*pWin*/
576);
577
578extern void miChangeBorderWidth(
579 WindowPtr /*pWin*/,
580 unsigned int /*width*/
581);
582
583extern void miMarkUnrealizedWindow(
584 WindowPtr /*pChild*/,
585 WindowPtr /*pWin*/,
586 Bool /*fromConfigure*/
587);
588
589extern void miSegregateChildren(WindowPtr pWin, RegionPtr pReg, int depth);
590
591/* mizerarc.c */
592
593extern void miZeroPolyArc(
594 DrawablePtr /*pDraw*/,
595 GCPtr /*pGC*/,
596 int /*narcs*/,
597 xArc * /*parcs*/
598);
599
600/* mizerline.c */
601
602extern void miZeroLine(
603 DrawablePtr /*dst*/,
604 GCPtr /*pgc*/,
605 int /*mode*/,
606 int /*nptInit*/,
607 DDXPointRec * /*pptInit*/
608);
609
610extern void miZeroDashLine(
611 DrawablePtr /*dst*/,
612 GCPtr /*pgc*/,
613 int /*mode*/,
614 int /*nptInit*/,
615 DDXPointRec * /*pptInit*/
616);
617
618extern void miPolyFillArc(
619 DrawablePtr /*pDraw*/,
620 GCPtr /*pGC*/,
621 int /*narcs*/,
622 xArc * /*parcs*/
623);
624
625#endif /* MI_H */
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette