VirtualBox

source: vbox/trunk/src/VBox/Additions/x11/x11include/7.0/xorg/mi.h@ 41244

Last change on this file since 41244 was 17236, checked in by vboxsync, 16 years ago

Additions/x11/x11include: blast! Reverted r43555 and r43556

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