open-src/lib/libdga/sun-src/draw_inquiry.c
author Alan Coopersmith <Alan.Coopersmith@Sun.COM>
Thu, 18 Feb 2010 16:03:08 -0800
changeset 907 3c35d611cdaa
parent 830 186f3c438b46
child 919 425233ae7236
permissions -rw-r--r--
6927784 Remove SCCS ident tags from X gate
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
830
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
     1
/* Copyright 1997 Sun Microsystems, Inc.  All rights reserved.
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
     2
 * Use is subject to license terms.
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
     3
 *
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
     4
 * Permission is hereby granted, free of charge, to any person obtaining a
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
     5
 * copy of this software and associated documentation files (the
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
     6
 * "Software"), to deal in the Software without restriction, including
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
     7
 * without limitation the rights to use, copy, modify, merge, publish,
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
     8
 * distribute, and/or sell copies of the Software, and to permit persons
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
     9
 * to whom the Software is furnished to do so, provided that the above
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    10
 * copyright notice(s) and this permission notice appear in all copies of
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    11
 * the Software and that both the above copyright notice(s) and this
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    12
 * permission notice appear in supporting documentation.
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    13
 *
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    14
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    15
 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    16
 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    17
 * OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    18
 * HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    19
 * INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    20
 * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    21
 * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    22
 * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    23
 *
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    24
 * Except as contained in this notice, the name of a copyright holder
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    25
 * shall not be used in advertising or otherwise to promote the sale, use
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    26
 * or other dealings in this Software without prior written authorization
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    27
 * of the copyright holder.
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    28
 */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    29
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    30
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    31
/* 
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    32
** draw_inquiry.c - state inquiry routines for drawable veneer.
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    33
*/
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    34
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    35
#ifdef SERVER_DGA
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    36
#include <X11/Xlib.h>
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    37
#endif /* SERVER_DGA */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    38
#include "dga_incls.h"
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    39
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    40
extern int dgai_mbsmemb_devinfochg (_Dga_window dgawin);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    41
extern int dgai_pix_devinfochg(_Dga_pixmap dgapix);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    42
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    43
Display *
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    44
dga_draw_display (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    45
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    46
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    47
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    48
	return (dgai_mbsmemb_display((_Dga_window)dgadraw));
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    49
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    50
	return (dgai_pix_display((_Dga_pixmap)dgadraw));
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    51
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    52
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    53
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    54
Drawable
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    55
dga_draw_id (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    56
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    57
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    58
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    59
	return ((Drawable)((_Dga_window)dgadraw)->w_id);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    60
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    61
	return ((Drawable)((_Dga_pixmap)dgadraw)->p_id);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    62
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    63
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    64
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    65
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    66
dga_draw_type (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    67
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    68
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    69
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    70
	return ((((_Dga_window)dgadraw)->isOverlay)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    71
		? (DGA_DRAW_OVERLAY)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    72
		: (DGA_DRAW_WINDOW));
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    73
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    74
	return (DGA_DRAW_PIXMAP);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    75
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    76
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    77
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    78
char *
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    79
dga_draw_devname (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    80
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    81
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    82
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    83
	return (dgai_mbsmemb_devname((_Dga_window)dgadraw));
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    84
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    85
	return (dgai_pix_devname((_Dga_pixmap)dgadraw));
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    86
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    87
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    88
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    89
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    90
dga_draw_devfd (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    91
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    92
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    93
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    94
	return (dgai_mbsmemb_devfd((_Dga_window)dgadraw));
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    95
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    96
	return (dgai_pix_devfd((_Dga_pixmap)dgadraw));
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    97
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    98
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
    99
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   100
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   101
dga_draw_depth (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   102
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   103
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   104
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   105
	return (dgai_mbsmemb_depth((_Dga_window)dgadraw));
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   106
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   107
	return (dgai_pix_depth((_Dga_pixmap)dgadraw));
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   108
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   109
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   110
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   111
void
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   112
dga_draw_set_client_infop (Dga_drawable dgadraw, void *client_info_ptr)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   113
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   114
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   115
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   116
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   117
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   118
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   119
	dgai_mbsmemb_set_client_infop((_Dga_window)dgadraw, client_info_ptr);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   120
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   121
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   122
	dgai_pix_set_client_infop((_Dga_pixmap)dgadraw, client_info_ptr);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   123
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   124
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   125
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   126
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   127
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   128
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   129
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   130
void *
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   131
dga_draw_get_client_infop (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   132
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   133
    void *rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   134
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   135
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   136
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   137
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   138
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   139
	rval = dgai_mbsmemb_get_client_infop((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   140
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   141
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   142
	rval = dgai_pix_get_client_infop((_Dga_pixmap)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   143
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   144
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   145
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   146
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   147
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   148
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   149
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   150
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   151
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   152
dga_draw_devinfochg (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   153
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   154
    int rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   155
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   156
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   157
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   158
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   159
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   160
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   161
	rval = dgai_mbsmemb_devinfochg((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   162
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   163
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   164
	rval = dgai_pix_devinfochg((_Dga_pixmap)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   165
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   166
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   167
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   168
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   169
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   170
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   171
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   172
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   173
void *
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   174
dga_draw_devinfo (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   175
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   176
    void *rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   177
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   178
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   179
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   180
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   181
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   182
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   183
	rval = dgai_mbsmemb_devinfo((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   184
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   185
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   186
	rval = dgai_pix_devinfo((_Dga_pixmap)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   187
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   188
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   189
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   190
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   191
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   192
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   193
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   194
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   195
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   196
dga_draw_sitechg (Dga_drawable dgadraw, int *reason)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   197
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   198
    int rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   199
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   200
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   201
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   202
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   203
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   204
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   205
	rval = dgai_mbsmemb_sitechg((_Dga_window)dgadraw, reason);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   206
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   207
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   208
	rval = dgai_pix_sitechg((_Dga_pixmap)dgadraw, reason);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   209
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   210
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   211
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   212
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   213
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   214
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   215
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   216
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   217
void
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   218
dga_draw_sitesetnotify (Dga_drawable dgadraw, DgaSiteNotifyFunc site_notify_func,
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   219
			   void *client_data)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   220
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   221
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   222
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   223
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   224
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   225
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   226
	dgai_mbsmemb_sitesetnotify((_Dga_window)dgadraw, site_notify_func, client_data);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   227
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   228
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   229
	dgai_pix_sitesetnotify((_Dga_pixmap)dgadraw, site_notify_func, client_data);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   230
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   231
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   232
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   233
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   234
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   235
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   236
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   237
void
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   238
dga_draw_sitegetnotify (Dga_drawable dgadraw, DgaSiteNotifyFunc *site_notify_func,
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   239
			   void **client_data)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   240
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   241
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   242
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   243
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   244
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   245
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   246
	dgai_mbsmemb_sitegetnotify((_Dga_window)dgadraw, site_notify_func, client_data);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   247
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   248
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   249
	dgai_pix_sitegetnotify((_Dga_pixmap)dgadraw, site_notify_func, client_data);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   250
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   251
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   252
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   253
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   254
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   255
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   256
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   257
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   258
dga_draw_site (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   259
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   260
    int rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   261
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   262
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   263
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   264
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   265
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   266
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   267
	rval = dgai_mbsmemb_site((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   268
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   269
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   270
	rval = dgai_pix_site((_Dga_pixmap)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   271
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   272
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   273
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   274
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   275
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   276
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   277
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   278
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   279
void *
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   280
dga_draw_address (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   281
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   282
    void *rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   283
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   284
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   285
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   286
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   287
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   288
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   289
	rval = dgai_mbsmemb_address((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   290
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   291
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   292
	rval = dgai_pix_address((_Dga_pixmap)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   293
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   294
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   295
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   296
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   297
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   298
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   299
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   300
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   301
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   302
dga_draw_linebytes (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   303
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   304
    int rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   305
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   306
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   307
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   308
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   309
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   310
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   311
	rval = dgai_mbsmemb_linebytes((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   312
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   313
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   314
	rval = dgai_pix_linebytes((_Dga_pixmap)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   315
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   316
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   317
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   318
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   319
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   320
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   321
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   322
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   323
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   324
dga_draw_bitsperpixel (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   325
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   326
    int rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   327
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   328
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   329
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   330
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   331
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   332
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   333
	rval = dgai_mbsmemb_bitsperpixel((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   334
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   335
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   336
	rval = dgai_pix_bitsperpixel((_Dga_pixmap)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   337
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   338
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   339
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   340
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   341
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   342
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   343
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   344
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   345
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   346
dga_draw_clipchg (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   347
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   348
    int rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   349
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   350
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   351
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   352
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   353
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   354
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   355
	rval = dgai_mbsmemb_clipchg((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   356
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   357
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   358
	rval = dgai_pix_clipchg((_Dga_pixmap)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   359
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   360
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   361
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   362
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   363
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   364
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   365
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   366
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   367
void
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   368
dga_draw_bbox(Dga_drawable dgadraw, int *xp, int *yp, int *widthp, int *heightp)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   369
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   370
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   371
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   372
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   373
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   374
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   375
	dgai_mbsmemb_bbox((_Dga_window)dgadraw, xp, yp, widthp, heightp);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   376
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   377
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   378
	dgai_pix_bbox((_Dga_pixmap)dgadraw, xp, yp, widthp, heightp);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   379
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   380
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   381
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   382
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   383
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   384
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   385
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   386
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   387
dga_draw_visibility (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   388
{ 
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   389
    int rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   390
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   391
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   392
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   393
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   394
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   395
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   396
	rval = dgai_mbsmemb_visibility((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   397
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   398
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   399
	/* always unobscured */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   400
	rval = DGA_VIS_UNOBSCURED;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   401
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   402
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   403
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   404
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   405
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   406
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   407
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   408
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   409
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   410
dga_draw_empty (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   411
{ 
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   412
    int rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   413
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   414
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   415
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   416
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   417
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   418
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   419
	rval = dgai_mbsmemb_empty((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   420
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   421
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   422
	rval = dgai_pix_empty((_Dga_pixmap)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   423
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   424
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   425
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   426
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   427
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   428
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   429
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   430
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   431
short *
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   432
dga_draw_clipinfo (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   433
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   434
    short *rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   435
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   436
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   437
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   438
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   439
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   440
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   441
	rval = dgai_mbsmemb_clipinfo((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   442
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   443
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   444
	rval = dgai_pix_clipinfo((_Dga_pixmap)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   445
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   446
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   447
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   448
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   449
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   450
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   451
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   452
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   453
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   454
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   455
dga_draw_singlerect (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   456
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   457
    int rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   458
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   459
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   460
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   461
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   462
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   463
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   464
	rval = dgai_mbsmemb_singlerect((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   465
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   466
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   467
	/* always a single rect */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   468
	rval = 1;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   469
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   470
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   471
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   472
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   473
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   474
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   475
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   476
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   477
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   478
dga_draw_obscured (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   479
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   480
    int rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   481
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   482
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   483
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   484
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   485
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   486
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   487
	rval = dgai_mbsmemb_obscured((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   488
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   489
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   490
	/* never obscured */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   491
	rval = 0;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   492
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   493
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   494
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   495
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   496
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   497
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   498
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   499
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   500
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   501
/* CONSOLIDATION PRIVATE */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   502
u_short
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   503
dga_draw_borderwidth (Dga_drawable dgadraw) 
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   504
{ 
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   505
    u_short rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   506
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   507
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   508
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   509
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   510
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   511
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   512
	rval = dgai_mbsmemb_borderwidth((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   513
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   514
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   515
	/* always 0 */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   516
	rval = 0;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   517
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   518
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   519
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   520
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   521
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   522
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   523
} 
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   524
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   525
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   526
void
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   527
dga_draw_curshandle (Dga_drawable dgadraw, DgaCursTakeDownFunc take_down_func,
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   528
		        void *client_data)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   529
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   530
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   531
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   532
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   533
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   534
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   535
	dgai_mbsmemb_curshandle((_Dga_window)dgadraw, take_down_func, client_data);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   536
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   537
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   538
	/* pixmaps never have cursors */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   539
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   540
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   541
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   542
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   543
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   544
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   545
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   546
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   547
int		
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   548
dga_draw_rtngrab (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   549
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   550
    int rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   551
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   552
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   553
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   554
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   555
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   556
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   557
	rval = dgai_mbsmemb_rtngrab((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   558
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   559
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   560
	/* not applicable to pixmaps */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   561
	rval = 0;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   562
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   563
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   564
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   565
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   566
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   567
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   568
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   569
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   570
int		
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   571
dga_draw_rtnungrab (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   572
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   573
    int rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   574
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   575
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   576
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   577
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   578
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   579
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   580
	rval = dgai_mbsmemb_rtnungrab((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   581
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   582
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   583
	/* not applicable to pixmaps */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   584
	rval = 0;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   585
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   586
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   587
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   588
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   589
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   590
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   591
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   592
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   593
int		
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   594
dga_draw_rtnchg (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   595
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   596
    int rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   597
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   598
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   599
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   600
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   601
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   602
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   603
	rval = dgai_mbsmemb_rtnchg((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   604
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   605
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   606
	/* not applicable to pixmaps -- force a query for active */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   607
	rval = 1;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   608
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   609
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   610
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   611
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   612
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   613
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   614
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   615
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   616
int		
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   617
dga_draw_rtnactive (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   618
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   619
    int rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   620
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   621
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   622
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   623
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   624
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   625
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   626
	rval = dgai_mbsmemb_rtnactive((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   627
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   628
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   629
	/* not applicable to pixmaps -- never active */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   630
	rval = 0;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   631
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   632
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   633
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   634
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   635
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   636
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   637
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   638
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   639
int		
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   640
dga_draw_rtncached (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   641
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   642
    int rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   643
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   644
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   645
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   646
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   647
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   648
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   649
	rval = dgai_mbsmemb_rtncached((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   650
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   651
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   652
	/* not applicable to pixmaps -- consider never cached */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   653
	rval = 0;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   654
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   655
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   656
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   657
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   658
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   659
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   660
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   661
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   662
void *		
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   663
dga_draw_rtndevinfop (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   664
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   665
    void *rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   666
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   667
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   668
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   669
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   670
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   671
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   672
	rval = dgai_mbsmemb_rtndevinfop((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   673
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   674
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   675
	/* not applicable to pixmaps -- doesn't have devinfo */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   676
	rval = NULL;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   677
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   678
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   679
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   680
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   681
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   682
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   683
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   684
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   685
/* This routine is for compatibility only. In the old interface both
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   686
 * the "p" and the "non-p" version were in but the "p" version was the
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   687
 * one that was documented. */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   688
void *		
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   689
dga_draw_rtndevinfo (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   690
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   691
    return(dga_draw_rtndevinfop (dgadraw));
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   692
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   693
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   694
void
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   695
dga_draw_rtndevtype (Dga_drawable dgadraw, u_char *type, 
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   696
		     char **name)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   697
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   698
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   699
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   700
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   701
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   702
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   703
	dgai_mbsmemb_rtndevtype((_Dga_window)dgadraw, type, name);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   704
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   705
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   706
	/* not applicable to pixmaps -- no dev type and name */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   707
	*type = (u_char) 0;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   708
	*name = NULL;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   709
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   710
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   711
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   712
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   713
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   714
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   715
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   716
void
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   717
dga_draw_rtndimensions (Dga_drawable dgadraw, short *width, 
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   718
			short *height, u_int *linebytes)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   719
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   720
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   721
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   722
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   723
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   724
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   725
	dgai_mbsmemb_rtndimensions((_Dga_window)dgadraw, width, height, linebytes);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   726
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   727
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   728
	/* not applicable to pixmaps -- no dimensions */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   729
	*width = 0;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   730
	*height = 0;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   731
	*linebytes = 0;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   732
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   733
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   734
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   735
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   736
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   737
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   738
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   739
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   740
dga_draw_rtnbitsperpixel (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   741
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   742
    int rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   743
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   744
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   745
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   746
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   747
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   748
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   749
	rval = dgai_mbsmemb_rtnbitsperpixel((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   750
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   751
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   752
	/* not applicable to pixmaps */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   753
	rval = 0;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   754
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   755
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   756
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   757
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   758
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   759
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   760
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   761
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   762
void *
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   763
dga_draw_rtnpixels (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   764
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   765
    void *rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   766
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   767
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   768
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   769
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   770
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   771
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   772
	rval = dgai_mbsmemb_rtnpixels((_Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   773
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   774
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   775
	/* not applicable to pixmaps -- doesn't have retained pixels */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   776
	rval = NULL;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   777
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   778
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   779
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   780
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   781
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   782
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   783
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   784
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   785
Dga_widinfo *
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   786
dga_draw_widinfop (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   787
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   788
    Dga_widinfo *rval;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   789
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   790
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   791
    mutex_lock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   792
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   793
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   794
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   795
	rval = dga_win_widinfop((Dga_window)dgadraw);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   796
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   797
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   798
	/* not applicable to pixmaps -- doesn't have retained pixels */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   799
	rval = NULL;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   800
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   801
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   802
#ifdef MT
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   803
    mutex_unlock(&dgaGlobalMutex);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   804
#endif
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   805
    return (rval);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   806
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   807
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   808
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   809
/* Note: the following routines are consolidation private.  They are not
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   810
   a part of the public interface. */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   811
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   812
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   813
dga_draw_mbchg (Dga_drawable dgadraw, int *reason)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   814
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   815
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   816
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   817
	return (dgai_mbsmemb_mbchg((_Dga_window)dgadraw, reason));
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   818
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   819
	/* pixmaps never are multibuffered */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   820
	return (0);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   821
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   822
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   823
 
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   824
void
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   825
dga_draw_mbsetnotify (Dga_drawable dgadraw, DgaMbNotifyFunc mb_notify_func,
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   826
			   void *client_data)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   827
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   828
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   829
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   830
	dgai_mbsmemb_mbsetnotify((_Dga_window)dgadraw, mb_notify_func, client_data);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   831
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   832
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   833
	/* pixmaps never are multibuffered */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   834
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   835
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   836
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   837
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   838
void
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   839
dga_draw_mbgetnotify (Dga_drawable dgadraw, DgaMbNotifyFunc *mb_notify_func,
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   840
			   void **client_data)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   841
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   842
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   843
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   844
	dgai_mbsmemb_mbgetnotify((_Dga_window)dgadraw, mb_notify_func, client_data);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   845
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   846
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   847
	/* pixmaps never are multibuffered */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   848
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   849
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   850
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   851
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   852
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   853
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   854
dga_draw_mbaccessmode (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   855
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   856
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   857
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   858
	return (dgai_mbsmemb_mbaccessmode((_Dga_window)dgadraw));
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   859
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   860
	return (DGA_MBACCESS_NONE);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   861
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   862
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   863
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   864
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   865
dga_draw_mbsitetypeconst (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   866
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   867
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   868
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   869
	return (dgai_mbsmemb_mbsitetypeconst((_Dga_window)dgadraw));
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   870
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   871
	/* can't tell for pixmaps - be conservative */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   872
	return (0);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   873
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   874
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   875
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   876
void
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   877
dga_draw_mbsetrendbufnotify (Dga_drawable dgadraw, DgaRendBufNotifyFunc rb_notify_func,
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   878
				void *client_data)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   879
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   880
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   881
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   882
	dgai_mbsmemb_mbsetrendbufnotify((_Dga_window)dgadraw, rb_notify_func, client_data);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   883
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   884
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   885
	/* pixmaps never are multibuffered */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   886
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   887
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   888
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   889
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   890
void
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   891
dga_draw_mbgetrendbufnotify (Dga_drawable dgadraw, DgaRendBufNotifyFunc *rb_notify_func,
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   892
				void **client_data)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   893
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   894
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   895
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   896
	dgai_mbsmemb_mbgetrendbufnotify((_Dga_window)dgadraw, rb_notify_func, client_data);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   897
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   898
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   899
	/* pixmaps never are multibuffered */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   900
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   901
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   902
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   903
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   904
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   905
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   906
dga_draw_ovlstatechg (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   907
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   908
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   909
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   910
	return (dgai_mbsmemb_ovlstatechg((_Dga_window)dgadraw));
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   911
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   912
	/* Pixmaps never have an ovlstate */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   913
	return (0);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   914
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   915
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   916
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   917
int
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   918
dga_draw_ovlstate (Dga_drawable dgadraw)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   919
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   920
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   921
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   922
	return (dgai_mbsmemb_ovlstate((_Dga_window)dgadraw));
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   923
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   924
	/* Pixmaps never have an ovlstate */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   925
	return (DGA_OVLSTATE_CONFLICT);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   926
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   927
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   928
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   929
void
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   930
dga_draw_ovlstatesetnotify (Dga_drawable dgadraw, 
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   931
			    DgaOvlStateNotifyFunc ovlstate_notify_func,
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   932
			    void *client_data)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   933
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   934
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   935
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   936
	dgai_mbsmemb_setovlstatenotify((_Dga_window)dgadraw,
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   937
				       ovlstate_notify_func,
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   938
				       client_data);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   939
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   940
	/* Pixmaps never have an ovlstate */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   941
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   942
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   943
}
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   944
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   945
void
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   946
dga_draw_ovlstategetnotify (Dga_drawable dgadraw, 
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   947
			    DgaOvlStateNotifyFunc *ovlstate_notify_func,
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   948
			    void **client_data)
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   949
{
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   950
    switch ( ((_Dga_drawable)dgadraw)->drawable_type) {
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   951
    case DGA_DRAW_WINDOW:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   952
	dgai_mbsmemb_getovlstatenotify((_Dga_window)dgadraw,
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   953
				       ovlstate_notify_func,
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   954
				       client_data);
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   955
    case DGA_DRAW_PIXMAP:
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   956
	/* Pixmaps never have an ovlstate */
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   957
	break;
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   958
    }
186f3c438b46 6899630 move libdga to open-src & /usr/X11
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents:
diff changeset
   959
}