open-src/app/xcolor/sun-src/xcolor.c
author Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
Wed, 28 Apr 2010 18:08:17 -0700
changeset 943 294f64612d23
parent 919 425233ae7236
child 1131 7dc974a70bc8
permissions -rw-r--r--
6948254 Mass update of X gate sources to Oracle copyright format
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
509
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
     1
/*-
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
     2
 * xcolor.c - X11 client to display all colors in current colormap.
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
     3
 *
943
294f64612d23 6948254 Mass update of X gate sources to Oracle copyright format
Alan Coopersmith <Alan.Coopersmith@Oracle.COM>
parents: 919
diff changeset
     4
 * Copyright (c) 1989, 1995, Oracle and/or its affiliates. All rights reserved.
509
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
     5
 *
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
     6
 * Permission is hereby granted, free of charge, to any person obtaining a
919
425233ae7236 6931307 Standardize Sun copyright & license notices in X gate on current format
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents: 907
diff changeset
     7
 * copy of this software and associated documentation files (the "Software"),
425233ae7236 6931307 Standardize Sun copyright & license notices in X gate on current format
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents: 907
diff changeset
     8
 * to deal in the Software without restriction, including without limitation
425233ae7236 6931307 Standardize Sun copyright & license notices in X gate on current format
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents: 907
diff changeset
     9
 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
425233ae7236 6931307 Standardize Sun copyright & license notices in X gate on current format
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents: 907
diff changeset
    10
 * and/or sell copies of the Software, and to permit persons to whom the
425233ae7236 6931307 Standardize Sun copyright & license notices in X gate on current format
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents: 907
diff changeset
    11
 * Software is furnished to do so, subject to the following conditions:
509
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    12
 *
919
425233ae7236 6931307 Standardize Sun copyright & license notices in X gate on current format
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents: 907
diff changeset
    13
 * The above copyright notice and this permission notice (including the next
425233ae7236 6931307 Standardize Sun copyright & license notices in X gate on current format
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents: 907
diff changeset
    14
 * paragraph) shall be included in all copies or substantial portions of the
425233ae7236 6931307 Standardize Sun copyright & license notices in X gate on current format
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents: 907
diff changeset
    15
 * Software.
509
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    16
 *
919
425233ae7236 6931307 Standardize Sun copyright & license notices in X gate on current format
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents: 907
diff changeset
    17
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
425233ae7236 6931307 Standardize Sun copyright & license notices in X gate on current format
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents: 907
diff changeset
    18
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
425233ae7236 6931307 Standardize Sun copyright & license notices in X gate on current format
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents: 907
diff changeset
    19
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
425233ae7236 6931307 Standardize Sun copyright & license notices in X gate on current format
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents: 907
diff changeset
    20
 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
425233ae7236 6931307 Standardize Sun copyright & license notices in X gate on current format
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents: 907
diff changeset
    21
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
425233ae7236 6931307 Standardize Sun copyright & license notices in X gate on current format
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents: 907
diff changeset
    22
 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
425233ae7236 6931307 Standardize Sun copyright & license notices in X gate on current format
Alan Coopersmith <Alan.Coopersmith@Sun.COM>
parents: 907
diff changeset
    23
 * DEALINGS IN THE SOFTWARE.
509
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    24
 *
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    25
 * Author: Patrick J. Naughton
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    26
 * [email protected]
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    27
 */
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    28
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    29
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    30
#include <stdio.h>
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    31
#include <math.h>
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    32
#include <X11/X.h>
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    33
#include <X11/Xos.h>
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    34
#include <X11/Xlib.h>
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    35
#include <X11/Xutil.h>
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    36
#include <X11/keysym.h>
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    37
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    38
#define DEFX 256
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    39
#define DEFY 256
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    40
#define DEFW 128
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    41
#define DEFH 128
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    42
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    43
#define ICON_WIDTH 48
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    44
#define ICON_HEIGHT 48
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    45
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    46
Display    *dsp = NULL;		/* current display (must be inited) */
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    47
int         screen;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    48
Visual	    *visual;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    49
Window      win;		/* window used to cover screen */
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    50
Window	    icon;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    51
GC	    gc;			/* graphics context */
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    52
int         height = 0,
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    53
            width = 0;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    54
Colormap    cmap;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    55
char       *pname;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    56
Atom	    ATOM_WM_PROTOCOLS;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    57
Atom	    ATOM_WM_DELETE_WINDOW;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    58
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    59
int    	    cmap_size;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    60
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    61
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    62
void
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    63
error(s1, s2)
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    64
    char       *s1,
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    65
               *s2;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    66
{
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    67
    fprintf(stderr, s1, pname, s2);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    68
    exit(1);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    69
}
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    70
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    71
dumpCmap()
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    72
{
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    73
    register int i;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    74
    XColor      color[256];
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    75
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    76
    for (i = 0; i < 256; i++)
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    77
	color[i].pixel = i;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    78
    XQueryColors(dsp, DefaultColormap(dsp, screen), color, 256);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    79
    for (i = 0; i < 256; i++) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    80
	printf("/name%02x	%3d %3d %3d RGBcolor def\n",
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    81
	      i, color[i].red >> 8, color[i].green >> 8, color[i].blue >> 8);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    82
    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    83
}
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    84
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    85
redisplay_indexed(window)
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    86
    Window window;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    87
{
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    88
    int		 max;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    89
    register int i,
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    90
                 j;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    91
    register float fw;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    92
    register float fh;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    93
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    94
    switch (cmap_size) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    95
        case   2:   max = 2;   break;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    96
        case  16:   max = 4;   break; 
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    97
        case 256:   max = 16;  break;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    98
        default:    max = (int)sqrt((double)cmap_size);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
    99
    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   100
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   101
    if (window == win) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   102
	fw = (float) width / (float)max;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   103
	fh = (float) height / (float)max;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   104
    } else {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   105
	fw = (float) ICON_WIDTH / (float)max;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   106
	fh = (float) ICON_HEIGHT / (float)max;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   107
    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   108
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   109
    for (i = 0; i < max; i++) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   110
	register int y = (int) (i * fh);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   111
	register int h = (i + 1) * fh - y;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   112
	for (j = 0; j < max; j++) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   113
	    register int x = (int) (j * fw);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   114
	    register int w = (j + 1) * fw - x;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   115
	    XSetForeground(dsp, gc, i * max + j);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   116
	    XFillRectangle(dsp, window, gc, x, y, w, h);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   117
	}
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   118
    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   119
}
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   120
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   121
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   122
redisplay_direct(window)
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   123
    Window window;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   124
{
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   125
    register int i,
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   126
                j, k;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   127
    register float fw;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   128
    register float fh;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   129
    static int roffset, goffset, boffset;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   130
    static int got_offsets = 0;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   131
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   132
    if (window == win) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   133
	fw = (float) width / 16.0;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   134
	fh = (float) height / (3 * 16.0);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   135
    } else {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   136
	fw = (float) ICON_WIDTH / 16.0;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   137
	fh = (float) ICON_HEIGHT / (3 * 16.0);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   138
    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   139
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   140
    if (!got_offsets) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   141
	got_offsets = 1;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   142
	roffset = ffs(visual->red_mask)-1;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   143
	goffset = ffs(visual->green_mask)-1;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   144
	boffset = ffs(visual->blue_mask)-1;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   145
    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   146
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   147
    /* red channel */
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   148
    k = 0;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   149
    for (i = 0; i < 16; i++, k++) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   150
	register int y = (int) (k * fh);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   151
	register int h = (k + 1) * fh - y;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   152
	for (j = 0; j < 16; j++) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   153
	    register int x = (int) (j * fw);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   154
	    register int w = (j + 1) * fw - x;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   155
	    XSetForeground(dsp, gc, (i * 16 + j)<<roffset);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   156
	    XFillRectangle(dsp, window, gc, x, y, w, h);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   157
	}
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   158
    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   159
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   160
    /* green channel */
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   161
    for (i = 0; i < 16; i++, k++) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   162
	register int y = (int) (k * fh);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   163
	register int h = (k + 1) * fh - y;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   164
	for (j = 0; j < 16; j++) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   165
	    register int x = (int) (j * fw);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   166
	    register int w = (j + 1) * fw - x;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   167
	    XSetForeground(dsp, gc, (i * 16 + j)<<goffset);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   168
	    XFillRectangle(dsp, window, gc, x, y, w, h);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   169
	}
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   170
    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   171
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   172
    /* blue channel */
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   173
    for (i = 0; i < 16; i++, k++) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   174
	register int y = (int) (k * fh);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   175
	register int h = (k + 1) * fh - y;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   176
	for (j = 0; j < 16; j++) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   177
	    register int x = (int) (j * fw);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   178
	    register int w = (j + 1) * fw - x;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   179
	    XSetForeground(dsp, gc, (i * 16 + j)<<boffset);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   180
	    XFillRectangle(dsp, window, gc, x, y, w, h);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   181
	}
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   182
    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   183
}
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   184
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   185
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   186
redisplay (w)
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   187
    Window w;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   188
{
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   189
    if (visual->class == TrueColor || visual->class == DirectColor)
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   190
	    redisplay_direct(w);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   191
    else
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   192
	    redisplay_indexed(w);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   193
}
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   194
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   195
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   196
HandleEvents()
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   197
{
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   198
    XEvent      event;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   199
    XConfigureEvent *xce = (XConfigureEvent *) & event;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   200
    XKeyEvent  *xke = (XKeyEvent *) & event;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   201
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   202
    while (1) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   203
	XNextEvent(dsp, &event);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   204
	switch (event.type) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   205
	case Expose:
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   206
	    redisplay(event.xexpose.window);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   207
	    continue;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   208
	case GraphicsExpose:
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   209
	case NoExpose:
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   210
	case MapNotify:
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   211
	case UnmapNotify:
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   212
	    continue;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   213
	case ConfigureNotify:
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   214
	    if ((height == xce->height) && (width == xce->width))
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   215
		continue;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   216
	    height = xce->height;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   217
	    width = xce->width;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   218
	    redisplay(event.xconfigure.window);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   219
	    continue;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   220
	case KeyPress:
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   221
	    switch (XLookupKeysym(xke, 0)) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   222
	    case XK_Escape:
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   223
		return;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   224
	    default:
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   225
		continue;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   226
	    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   227
	case ClientMessage:
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   228
	    if (event.xclient.message_type == ATOM_WM_PROTOCOLS &&
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   229
		event.xclient.format == 32 &&
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   230
		event.xclient.data.l[0] == ATOM_WM_DELETE_WINDOW)
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   231
	    {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   232
		return;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   233
	    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   234
	    continue;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   235
	}
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   236
    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   237
}
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   238
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   239
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   240
main(argc, argv)
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   241
    int         argc;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   242
    char       *argv[];
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   243
{
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   244
    XSetWindowAttributes xswa;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   245
    XGCValues   xgcv;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   246
    XSizeHints  size_hints;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   247
    XWMHints	wmhints;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   248
    int         i;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   249
    int         geomStat;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   250
    char       *geom = NULL;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   251
    char       *displayName = NULL;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   252
    Status      stat;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   253
    int         dump = 0;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   254
    int		nobw = 0;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   255
    int		half = 0;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   256
    int		install = 1;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   257
    int		mask;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   258
    int		useiconwin = 0;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   259
    
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   260
    if (getenv("_SYNC")) { 
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   261
	extern int _Xdebug;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   262
	_Xdebug = 1;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   263
    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   264
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   265
    pname = argv[0];
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   266
    for (i = 1; i < argc; i++) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   267
	if (!strcmp(argv[i], "-geometry"))
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   268
	    geom = argv[++i];
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   269
	else if (!strcmp(argv[i], "-display"))
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   270
	    displayName = argv[++i];
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   271
	else if (!strcmp(argv[i], "-dump"))
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   272
	    dump = 1;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   273
	else if (!strcmp(argv[i], "-nobw"))
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   274
	    nobw = 1;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   275
	else if (!strcmp(argv[i], "-half"))
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   276
	    half = 1;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   277
	else if (!strcmp(argv[i], "-noinst"))
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   278
	    install = 0;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   279
	else if (!strcmp(argv[i], "-iconwin"))
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   280
	    useiconwin = 1;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   281
	else
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   282
	    error("usage:  %s [-display dpystr] [-geometry geomstr]\n\
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   283
\t[-dump] [-nobw] [-half] [-noinst] [-iconwin]\n", NULL);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   284
    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   285
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   286
    /* SUNSOFT_BUYBACK
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   287
    if (!(dsp = XOpenDisplay(displayName)))
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   288
	error("%s: unable to open display, %s.\n", displayName);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   289
    **********/
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   290
    if (!(dsp = XOpenDisplay(displayName))) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   291
	if (displayName)
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   292
	    error("%s: unable to open display, %s.\n", displayName);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   293
        else
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   294
	    error("unable to open display\n");
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   295
    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   296
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   297
    screen = DefaultScreen(dsp);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   298
    visual = DefaultVisualOfScreen(DefaultScreenOfDisplay(dsp));
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   299
    cmap_size = visual->map_entries;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   300
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   301
    ATOM_WM_PROTOCOLS = XInternAtom(dsp, "WM_PROTOCOLS", False);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   302
    ATOM_WM_DELETE_WINDOW = XInternAtom(dsp, "WM_DELETE_WINDOW", False);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   303
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   304
    if (dump)
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   305
	dumpCmap();
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   306
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   307
    if (install)  {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   308
	    stat = XCreateHSBColormap(dsp, screen, &cmap, half 
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   309
					? (cmap_size>>1) : cmap_size,
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   310
				      0.0, 1.0, 1.0,
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   311
				      1.0, 1.0, 1.0, !nobw, &visual);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   312
	    if (stat != Success)
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   313
		error("%s: unable create colormap (%d).\n", stat);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   314
    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   315
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   316
    size_hints.x = DEFX;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   317
    size_hints.y = DEFY;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   318
    size_hints.width = DEFW;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   319
    size_hints.height = DEFH;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   320
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   321
    size_hints.flags = 0;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   322
    if (geom) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   323
	geomStat = XParseGeometry(geom, &(size_hints.x),
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   324
				  &(size_hints.y),
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   325
				  (unsigned int *) &(size_hints.width),
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   326
				  (unsigned int *) &(size_hints.height));
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   327
	if (geomStat & (XValue | YValue)) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   328
	    size_hints.flags |= USPosition;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   329
	}
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   330
	if (geomStat & (WidthValue | HeightValue)) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   331
	    size_hints.flags |= USSize;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   332
	}
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   333
    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   334
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   335
    width = size_hints.width;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   336
    height = size_hints.height;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   337
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   338
    xswa.event_mask = ExposureMask | KeyPressMask | StructureNotifyMask;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   339
    mask = CWEventMask;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   340
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   341
    if (install) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   342
	    xswa.colormap = cmap;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   343
	    mask |= CWColormap;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   344
    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   345
   
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   346
    win = XCreateWindow(
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   347
			dsp,
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   348
			DefaultRootWindow(dsp),
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   349
			size_hints.x,
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   350
			size_hints.y,
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   351
			size_hints.width,
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   352
			size_hints.height,
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   353
			1,	/* borderwidth */
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   354
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   355
			DefaultDepth(dsp, screen),	/* depth */
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   356
			InputOutput,	/* class */
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   357
			visual,	/* visual */
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   358
			mask,	/* window attribute mask */
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   359
			&xswa	/* the attributes */
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   360
	);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   361
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   362
    XSetStandardProperties(dsp, win, " XColor ", " XCOLOR ",
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   363
			   NULL, argv, argc, &size_hints);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   364
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   365
    wmhints.flags = InputHint;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   366
    wmhints.input = True;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   367
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   368
    if (useiconwin) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   369
	xswa.event_mask = ExposureMask;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   370
	mask = CWEventMask;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   371
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   372
	if (install) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   373
	    xswa.colormap = cmap;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   374
	    mask |= CWColormap;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   375
	}
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   376
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   377
	icon = XCreateWindow(dsp, DefaultRootWindow(dsp),
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   378
	    0, 0, ICON_WIDTH, ICON_HEIGHT, 0, DefaultDepth(dsp, screen),
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   379
	    InputOutput, visual, mask, &xswa);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   380
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   381
	wmhints.flags |= IconWindowHint;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   382
	wmhints.icon_window = icon;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   383
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   384
	if (install) {
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   385
	    Window cmapwins[2];
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   386
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   387
	    cmapwins[0] = icon;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   388
	    cmapwins[1] = win;
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   389
	    XSetWMColormapWindows(dsp, win, cmapwins, 2);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   390
	}
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   391
    }
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   392
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   393
    XSetWMHints(dsp, win, &wmhints);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   394
    XSetWMProtocols(dsp, win, &ATOM_WM_DELETE_WINDOW, 1);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   395
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   396
    xgcv.foreground = BlackPixel(dsp, screen);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   397
    xgcv.background = WhitePixel(dsp, screen);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   398
    gc = XCreateGC(dsp, win, GCForeground | GCBackground, &xgcv);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   399
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   400
    XMapWindow(dsp, win);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   401
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   402
    HandleEvents();
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   403
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   404
    XUnmapWindow(dsp, win);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   405
    XDestroyWindow(dsp, win);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   406
    XFlush(dsp);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   407
    XCloseDisplay(dsp);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   408
    exit(0);
9469d4c6010a 6736024 Replace xcolor with open src version
Mahmood Ali <Mahmood.Ali@Sun.COM>
parents:
diff changeset
   409
}