1 2Name 3 4 SUN_get_transparent_index 5 6Name Strings 7 8 GLX_SUN_get_transparent_index 9 10Contact 11 12 Ron Bielaski, Sun (Ron.Bielaski 'at' eng.sun.com) 13 Jack Middleton, Sun (Jack.Middleton 'at' eng.sun.com) 14 15Status 16 17 Shipping 18 19Version 20 21 $Date: 1999/12/28 01:40:37 $ $Revision: 1.5 $ 22 SUN Date: 99/06/25 15:07:02 Revision: 1.2 23 24Number 25 26 183 27 28Dependencies 29 30 None 31 32Overview 33 34 Gets the transparent pixel index for an overlay/underlay window pair. 35 36New Procedures and Functions 37 38 Status glXGetTransparentIndexSUN(Display *dpy, 39 Window overlay, 40 Window underlay, 41 unsigned long *pTransparentIndex) 42 43New Tokens 44 45 None 46 47Additions to the GL 1.2.1 Specification 48 49 None 50 51Additions to the WGL / AGL Specifications 52 53 None 54 55Additions to Chapter ??? of the GLX 1.3 Specification 56 57 (the following needs to be restructured as changes to the spec, 58 rather than a man page) 59 60 dpy Specifies the connection to the X server 61 62 overlay Specifies the overlay Window of an 63 overlay/underlay pair 64 65 underlay Specifies the underlay Window. 66 67 pTransparentIndex Specifies a pointer to the index to be returned 68 69 Return 70 ------ 71 72 If underlay is a Window that has previously been made 73 the current GLXDrawable by the client and a transparent index 74 is available for the Window overlay, returns 1 and sets 75 *pTransparentIndex to the value of the index. Otherwise returns 0. 76 77 If underlay is equal to None, and if a transparent 78 index is available for overlay that is independent of the 79 underlying Windows returns 1 and sets *pTransparentIndex to 80 the index. Otherwise 0 is returned. 81 82 83 84 Description 85 ----------- 86 For some overlay Windows (windows created with a visual with GLX_LEVEL > 0), 87 there is a particular color index that when drawn to the framebuffer 88 causes pixels in the Window to be transparent. That is, pixels in the overlay 89 drawn with the transparent index are invisible and the pixels of window(s) 90 beneath the overlay are displayed. 91 92 On some systems, the transparent pixel index is a constant. 93 94 On other hardware, the transparent index is a function of the underlying 95 Window (GLX_LEVEL <= 0). 96 97 Applications may use glXGetTransparentIndexSUN to determine whether 98 a transparent index is available for a particular pair of windows 99 and the value of the transparent index. 100 101 If glXGetTransparentIndexSun returns 1 after being called with 102 underlay equal to a valid window, then the transparent index is 103 valid only for underlay. underlay must have been previously made 104 the current GLXDrawable of the thread. 105 106 If a Window other than underlay is directly beneath overlay the 107 results of drawing with the transparentIndex are undefined. 108 109 If glXGetTransparentIndexSUN returns 1 when the underlay argument is 110 set to None, the transparentIndex is valid for all underlay windows. 111 112 113 Caveats 114 ------- 115 When the transparent index is valid only for a particular underlay window, 116 applications should follow the following guidelines to insure proper 117 operation. 118 119 It is the application's responsibility to ensure that the only window 120 ever underneath overlay is underlay. 121 122 Ideally, overlay should be created as a child of underlay with the same 123 size and shape. And the application should reshape the overlay window 124 whenever the underlay window is reshaped. This insures that the 125 transparent index makes the overlay transparent. 126 127GLX Protocol 128 129 No new protocol is need 130 131Errors 132 133 BadDrawable if overlay is not a valid Window or if underlay is 134 not a valid Window (except None). 135 136New State 137 138 None 139 140New Implementation Dependent State 141 142 None 143 144Revision History 145 146 6/24/99 (Jon Leech, SGI) - Added fields from the new extension template. 147 148