XWorkstation.st
changeset 2305 7746d6252645
parent 2289 248c04e89613
child 2330 2de54ce1d8c6
--- a/XWorkstation.st	Tue Sep 08 12:02:57 1998 +0200
+++ b/XWorkstation.st	Tue Sep 08 12:03:46 1998 +0200
@@ -215,21 +215,21 @@
 #endif
 
 #ifdef LINUX
-# define DEFAULT_XLIB_TIMEOUT	600	/* in 50ms ticks (30 seconds) */
+# define DEFAULT_XLIB_TIMEOUT   600     /* in 50ms ticks (30 seconds) */
   static __xlibTimeout__ = DEFAULT_XLIB_TIMEOUT;
-# define ENTER_XLIB()	\
+# define ENTER_XLIB()   \
     { \
 	__blockingPrimitiveTimoutHandler__ = (VOIDFUNC)__XTimeoutErrorHandler; \
 	__blockingPrimitiveTimeoutArg__ = (INT)self; \
 	__blockingPrimitiveTimeout__ = __xlibTimeout__; \
     }
-# define LEAVE_XLIB()	\
+# define LEAVE_XLIB()   \
     { \
 	__blockingPrimitiveTimeout__ = 0; \
     }
 #else
-# define ENTER_XLIB()	/* as nothing */
-# define LEAVE_XLIB()	/* as nothing */
+# define ENTER_XLIB()   /* as nothing */
+# define LEAVE_XLIB()   /* as nothing */
 #endif
 
 %}
@@ -1169,6 +1169,13 @@
     "
 !
 
+supportsViewBackgroundPixmaps
+    "return true, if the device allows pixmaps as
+     viewBackground."
+
+    ^ true
+!
+
 supportsIconViews
     "return true, if this device supports views as icons.
      Only Xservers (currently) support this."
@@ -1546,12 +1553,12 @@
 	    windowName = "";
 
 	if (iconBitmap || windowName) {
-            ENTER_XLIB();
+	    ENTER_XLIB();
 	    XSetStandardProperties(dpy, newWindow,
 					windowName, windowName,
 					iconBitmap,
 					0, 0, &sizehints);
-            LEAVE_XLIB();
+	    LEAVE_XLIB();
 	}
 
 	wmhints.flags = 0;
@@ -1571,9 +1578,9 @@
 	wmhints.flags |= InputHint;
 	wmhints.input = True;
 */
-        ENTER_XLIB();
+	ENTER_XLIB();
 	XSetWMHints(dpy, newWindow, &wmhints);
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 
 	/*
 	 * tell window manager to not kill us but send an event instead
@@ -1582,7 +1589,7 @@
 	 * get atoms first (if not already known)
 	 */
 	if (__INST(protocolsAtom) == nil) {
-            ENTER_XLIB();
+	    ENTER_XLIB();
 	    WmProtocolsAtom = XInternAtom(dpy, "WM_PROTOCOLS", False);
 	    __INST(protocolsAtom) = __MKATOMOBJ(WmProtocolsAtom);
 #ifdef USE_SAVEYOURSELF_ATOM
@@ -1595,7 +1602,7 @@
 #endif
 	    WmDeleteWindowAtom = XInternAtom(dpy, "WM_DELETE_WINDOW", False);
 	    __INST(deleteWindowAtom) = __MKATOMOBJ(WmDeleteWindowAtom);
-            LEAVE_XLIB();
+	    LEAVE_XLIB();
 	} else {
 #ifdef USE_QUIT_APP_ATOM
 	    WmQuitAppAtom = _AtomVal(__INST(quitAppAtom));
@@ -1618,10 +1625,10 @@
 #ifdef USE_QUIT_APP_ATOM
 	atoms[atomCount] = WmQuitAppAtom; atomCount++;
 #endif
-        ENTER_XLIB();
+	ENTER_XLIB();
 	XChangeProperty(dpy, newWindow, WmProtocolsAtom, XA_ATOM,
 			32, PropModeReplace, (unsigned char *)atoms, atomCount);
-        LEAVE_XLIB();
+	LEAVE_XLIB();
     }
 
     END_INTERRUPTSBLOCKED
@@ -1645,9 +1652,9 @@
 
 	if (gc) {
 	    BEGIN_INTERRUPTSBLOCKED
-            ENTER_XLIB();
+	    ENTER_XLIB();
 	    XFreeGC(myDpy, gc);
-            LEAVE_XLIB();
+	    LEAVE_XLIB();
 #ifdef COUNT_RESOURCES
 	    __cnt_gc--;
 #endif
@@ -1672,9 +1679,9 @@
 
 	if (pix) {
 	    BEGIN_INTERRUPTSBLOCKED
-            ENTER_XLIB();
+	    ENTER_XLIB();
 	    XFreePixmap(myDpy, pix);
-            LEAVE_XLIB();
+	    LEAVE_XLIB();
 #ifdef COUNT_RESOURCES
 	    __cnt_bitmap--;
 #endif
@@ -1697,9 +1704,9 @@
 
 	if (win) {
 	    BEGIN_INTERRUPTSBLOCKED
-            ENTER_XLIB();
+	    ENTER_XLIB();
 	    XDestroyWindow(myDpy, win);
-            LEAVE_XLIB();
+	    LEAVE_XLIB();
 #ifdef COUNT_RESOURCES
 	    __cnt_view--;
 #endif
@@ -1722,14 +1729,14 @@
      && __isExternalAddress(aGCId)
      && ISCONNECTED) {
 	BEGIN_INTERRUPTSBLOCKED
-        ENTER_XLIB();
+	ENTER_XLIB();
 	dps = XDPSCreateContext(myDpy, (Drawable)_WindowVal(aDrawableId),
 				       _GCVal(aGCId),
 				       0, height, 0, colormap, NULL, 0,
 				       XDPSDefaultTextBackstop,
 				       XDPSDefaultErrorProc,
 				       NULL);
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 	END_INTERRUPTSBLOCKED
 	RETURN ( dps ? __MKEXTERNALADDRESS(dps) : nil );
     }
@@ -1747,10 +1754,10 @@
 
     if (__isExternalAddress(aDrawableId) && ISCONNECTED) {
 	BEGIN_INTERRUPTSBLOCKED
-        ENTER_XLIB();
+	ENTER_XLIB();
 	gc = XCreateGC(myDpy, (Drawable)_WindowVal(aDrawableId),
 			      0L, (XGCValues *)0);
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 
 #ifdef COUNT_RESOURCES
 	if (gc)
@@ -1774,10 +1781,10 @@
 
     if (__isExternalAddress(aDrawableId) && ISCONNECTED) {
 	BEGIN_INTERRUPTSBLOCKED
-        ENTER_XLIB();
+	ENTER_XLIB();
 	gc = XCreateGC(myDpy, (Drawable)_WindowVal(aDrawableId),
 			      0L, (XGCValues *)0);
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 
 #ifdef COUNT_RESOURCES
 	if (gc)
@@ -1870,11 +1877,11 @@
 	}
 
 	BEGIN_INTERRUPTSBLOCKED
-        ENTER_XLIB();
+	ENTER_XLIB();
 	newBitmap = XCreateBitmapFromData(dpy, RootWindow(dpy, screen),
 					       (char *)b_bits, 
 					       b_width, b_height);
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 #ifdef COUNT_RESOURCES
 	if (newBitmap)
 	    __cnt_bitmap++;
@@ -2037,10 +2044,10 @@
 	Display *dpy = myDpy;
 
 	BEGIN_INTERRUPTSBLOCKED
-        ENTER_XLIB();
+	ENTER_XLIB();
 	ok = XAllocColorCells(dpy, DefaultColormap(dpy, screen), (Bool)0,
 				   &dummy, 0, &color.pixel, 1);
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 	END_INTERRUPTSBLOCKED
 	if (ok) {
 #ifdef COUNT_RESOURCES
@@ -2072,9 +2079,9 @@
 	    colorname = (char *) __stringVal(aString);
 
 	    BEGIN_INTERRUPTSBLOCKED
-            ENTER_XLIB();
+	    ENTER_XLIB();
 	    ok = XParseColor(dpy, DefaultColormap(dpy, screen), colorname, &ecolor);
-            LEAVE_XLIB();
+	    LEAVE_XLIB();
 	    if (ok) {
 #ifdef QUICK_TRUE_COLORS
 		if (__INST(visualType) == @symbol(TrueColor)) {
@@ -2084,9 +2091,9 @@
 		    RETURN ( __MKSMALLINT(id) );
 		}
 #endif
-                ENTER_XLIB();
+		ENTER_XLIB();
 		ok = XAllocColor(dpy, DefaultColormap(dpy, screen), &ecolor);
-                LEAVE_XLIB();
+		LEAVE_XLIB();
 	    }
 	    END_INTERRUPTSBLOCKED
 	    if (! ok) {
@@ -2140,9 +2147,9 @@
 #endif
 	dpy = myDpy;
 	BEGIN_INTERRUPTSBLOCKED
-        ENTER_XLIB();
+	ENTER_XLIB();
 	ok = XAllocColor(dpy, DefaultColormap(dpy, screen), &ecolor);
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 	END_INTERRUPTSBLOCKED
 	if (! ok) {
 	    RETURN ( nil );
@@ -2181,9 +2188,9 @@
 	dpy = myDpy;
 	color = (long) __intVal(colorIndex);
 	BEGIN_INTERRUPTSBLOCKED
-        ENTER_XLIB();
+	ENTER_XLIB();
 	XFreeColors(dpy, DefaultColormap(dpy, screen), &color, 1, 0L);
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 #ifdef COUNT_RESOURCES
 	__cnt_color--;
 #endif
@@ -2245,9 +2252,9 @@
 
 	color.pixel = __intVal(index);
 	BEGIN_INTERRUPTSBLOCKED
-        ENTER_XLIB();
+	ENTER_XLIB();
 	XQueryColor(dpy, DefaultColormap(dpy, screen), &color);
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 	END_INTERRUPTSBLOCKED
 
 	/* 
@@ -2407,9 +2414,9 @@
 	color.flags = DoRed | DoGreen | DoBlue;
 
 	BEGIN_INTERRUPTSBLOCKED
-        ENTER_XLIB();
+	ENTER_XLIB();
 	XStoreColor(dpy, DefaultColormap(dpy, screen), &color);
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 	END_INTERRUPTSBLOCKED
 	RETURN ( self );
     }
@@ -2485,9 +2492,9 @@
 	bgcolor.green= __intVal(bgG);
 	bgcolor.blue = __intVal(bgB);
 	BEGIN_INTERRUPTSBLOCKED
-        ENTER_XLIB();
+	ENTER_XLIB();
 	XRecolorCursor(myDpy, _CursorVal(aCursorId), &fgcolor, &bgcolor);
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 	END_INTERRUPTSBLOCKED
 	RETURN ( self );
     }
@@ -2510,9 +2517,9 @@
     if (ISCONNECTED
      && __isSmallInteger(number)) {
 	BEGIN_INTERRUPTSBLOCKED
-        ENTER_XLIB();
+	ENTER_XLIB();
 	newCursor = XCreateFontCursor(myDpy, __intVal(number));
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 #ifdef COUNT_RESOURCES
 	if (newCursor)
 	    __cnt_cursor++;
@@ -2549,12 +2556,12 @@
 	bgColor.blue = 0xFFFF;
 
 	BEGIN_INTERRUPTSBLOCKED
-        ENTER_XLIB();
+	ENTER_XLIB();
 	newCursor = XCreatePixmapCursor(myDpy,
 				_PixmapVal(sourceId),
 				_PixmapVal(maskId),
 				&fgColor, &bgColor, __intVal(hx), __intVal(hy));
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 #ifdef COUNT_RESOURCES
 	if (newCursor)
 	    __cnt_cursor++;
@@ -2585,9 +2592,9 @@
 
 	if (curs) {
 	    BEGIN_INTERRUPTSBLOCKED
-            ENTER_XLIB();
+	    ENTER_XLIB();
 	    XFreeCursor(myDpy, curs);
-            LEAVE_XLIB();
+	    LEAVE_XLIB();
 #ifdef COUNT_RESOURCES
 	    __cnt_cursor--;
 #endif
@@ -2846,9 +2853,9 @@
 	gc = _GCVal(dstGCId);
 	source = (Drawable) _WindowVal(sourceId);
 	dest = (Drawable) _WindowVal(destId);
-        ENTER_XLIB();
+	ENTER_XLIB();
 	XCopyArea(myDpy, source, dest, gc, _sX, _sY, _w, _h, _dX, _dY);
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 	RETURN ( self );
     }
 %}.
@@ -2882,14 +2889,14 @@
 	gc = _GCVal(dstGCId);
 	source = (Drawable) _WindowVal(sourceId);
 	dest = (Drawable) _WindowVal(destId);
-        ENTER_XLIB();
+	ENTER_XLIB();
 	XSetGraphicsExposures(dpy, gc, 0);
 	XCopyArea(dpy, source, dest, gc,
 				__intVal(srcX), __intVal(srcY),
 				__intVal(w), __intVal(h),
 				__intVal(dstX), __intVal(dstY));
 	XSetGraphicsExposures(dpy, gc, 1);
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 	RETURN ( self );
     }
 %}.
@@ -2921,12 +2928,12 @@
 	gc = _GCVal(dstGCId);
 	source = (Drawable) _WindowVal(sourceId);
 	dest = (Drawable) _WindowVal(destId);
-        ENTER_XLIB();
+	ENTER_XLIB();
 	XCopyPlane(myDpy, source, dest, gc,
 				 __intVal(srcX), __intVal(srcY),
 				 __intVal(w), __intVal(h),
 				 __intVal(dstX), __intVal(dstY), 1);
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 	RETURN ( self );
     }
 %}.
@@ -2961,14 +2968,14 @@
 	gc = _GCVal(dstGCId);
 	source = (Drawable) _WindowVal(sourceId);
 	dest = (Drawable) _WindowVal(destId);
-        ENTER_XLIB();
+	ENTER_XLIB();
 	XSetGraphicsExposures(dpy, gc, 0);
 	XCopyPlane(dpy, source, dest, gc,
 				 __intVal(srcX), __intVal(srcY),
 				 __intVal(w), __intVal(h),
 				 __intVal(dstX), __intVal(dstY), 1);
 	XSetGraphicsExposures(dpy, gc, 1);
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 	RETURN ( self );
     }
 %}.
@@ -3022,10 +3029,10 @@
 	 * need this check here: some servers simply dump core with bad args
 	 */
 	if ((w >= 0) && (h >= 0) && (angle1 >= 0) && (angle2 >= 0)) {
-            ENTER_XLIB();
+	    ENTER_XLIB();
 	    XDrawArc(myDpy, win, gc, __intVal(x), __intVal(y),
 				   w, h, angle1, angle2);
-            LEAVE_XLIB();
+	    LEAVE_XLIB();
 	}
 	RETURN ( self );
     }
@@ -3076,7 +3083,7 @@
     |noY|
 
     (noY := yValues size) < 2 ifTrue:[
-        ^ self
+	^ self
     ].
 
 %{
@@ -3093,99 +3100,99 @@
     if (ISCONNECTED
      && __isExternalAddress(aGCId)
      && __isExternalAddress(aDrawableId) ) {
-        gc = _GCVal(aGCId);
-        win = _WindowVal(aDrawableId);
-
-        if( __isSmallInteger(scaleY) ) 
-            sY = (float) __intVal( scaleY );
-        else if (__isFloat(scaleY)) 
-            sY = __floatVal( scaleY );
-        else if (__isShortFloat(scaleY)) 
-            sY = __shortFloatVal( scaleY );
-        else {
-            t = __SSEND0(scaleY, @symbol(asFloat), 0);
-            if (! __isFloat(t)) goto fail;
-            sY = __floatVal( t );
-        }
-
-        if( __isSmallInteger(transY) ) 
-            tY = (float) __intVal( transY );
-        else if (__isFloat(transY)) 
-            tY = __floatVal( transY );
-        else if (__isShortFloat(transY)) 
-            tY = __shortFloatVal( transY );
-        else {
-            t = __SSEND0(transY, @symbol(asFloat), 0);
-            if (! __isFloat(t)) goto fail;
-            tY = __floatVal( t );
-        }
-
-        if( __isSmallInteger(startX) ) 
-            x = (float) __intVal( startX );
-        else if (__isFloat(startX)) 
-            x = __floatVal( startX );
-        else if (__isShortFloat(startX)) 
-            x = __shortFloatVal( startX );
-        else {
-            t = __SSEND0(startX, @symbol(asFloat), 0);
-            if (! __isFloat(t)) goto fail;
-            x = __floatVal( t );
-        }
-
-        if( __isSmallInteger(stepX) ) 
-            step = (float) __intVal( stepX );
-        else if (__isFloat(stepX)) 
-            step = __floatVal( stepX );
-        else if (__isShortFloat(stepX)) 
-            step = __shortFloatVal( stepX );
-        else {
-            t = __SSEND0(stepX, @symbol(asFloat), 0);
-            if (! __isFloat(t)) goto fail;
-            step = __floatVal( t );
-        }
-
-        num = __intVal( noY );
-
-        if( num > 200 ) {
-            if( ! (points = (XPoint *) malloc ( sizeof(XPoint) * num )) )
-                goto fail;
-            mustFree = 1;
-        } else {
-            points = qPoints;
-        }
-        for( i = 0; i < num; ++i ) {
-            yA  = __AT_(yValues, __MKSMALLINT(i+1) );
-
-            if( __isFloat(yA) )
-                y = __floatVal( yA );
-            else if( __isSmallInteger(yA) )
-                y = (float) __intVal( yA );
-            else if( __isShortFloat( yA) )
-                y = __shortFloatVal( yA );
-            else {
-                t = __SSEND0(yA, @symbol(asFloat), 0);
-                if (! __isFloat(t)) goto fail;
-                y = __floatVal( t );
-            }
-
-            points[i].x = (int) (x + 0.5);
-            points[i].y = (int) ((y * sY) + tY + 0.5);
-            x = x + step;
-        }
-
-        ENTER_XLIB();
-        XDrawLines(myDpy, win, gc, points, num, CoordModeOrigin);
-        LEAVE_XLIB();
-
-        if( mustFree ) {
-            free( points );
-        }
-        RETURN ( self );
+	gc = _GCVal(aGCId);
+	win = _WindowVal(aDrawableId);
+
+	if( __isSmallInteger(scaleY) ) 
+	    sY = (float) __intVal( scaleY );
+	else if (__isFloat(scaleY)) 
+	    sY = __floatVal( scaleY );
+	else if (__isShortFloat(scaleY)) 
+	    sY = __shortFloatVal( scaleY );
+	else {
+	    t = __SSEND0(scaleY, @symbol(asFloat), 0);
+	    if (! __isFloat(t)) goto fail;
+	    sY = __floatVal( t );
+	}
+
+	if( __isSmallInteger(transY) ) 
+	    tY = (float) __intVal( transY );
+	else if (__isFloat(transY)) 
+	    tY = __floatVal( transY );
+	else if (__isShortFloat(transY)) 
+	    tY = __shortFloatVal( transY );
+	else {
+	    t = __SSEND0(transY, @symbol(asFloat), 0);
+	    if (! __isFloat(t)) goto fail;
+	    tY = __floatVal( t );
+	}
+
+	if( __isSmallInteger(startX) ) 
+	    x = (float) __intVal( startX );
+	else if (__isFloat(startX)) 
+	    x = __floatVal( startX );
+	else if (__isShortFloat(startX)) 
+	    x = __shortFloatVal( startX );
+	else {
+	    t = __SSEND0(startX, @symbol(asFloat), 0);
+	    if (! __isFloat(t)) goto fail;
+	    x = __floatVal( t );
+	}
+
+	if( __isSmallInteger(stepX) ) 
+	    step = (float) __intVal( stepX );
+	else if (__isFloat(stepX)) 
+	    step = __floatVal( stepX );
+	else if (__isShortFloat(stepX)) 
+	    step = __shortFloatVal( stepX );
+	else {
+	    t = __SSEND0(stepX, @symbol(asFloat), 0);
+	    if (! __isFloat(t)) goto fail;
+	    step = __floatVal( t );
+	}
+
+	num = __intVal( noY );
+
+	if( num > 200 ) {
+	    if( ! (points = (XPoint *) malloc ( sizeof(XPoint) * num )) )
+		goto fail;
+	    mustFree = 1;
+	} else {
+	    points = qPoints;
+	}
+	for( i = 0; i < num; ++i ) {
+	    yA  = __AT_(yValues, __MKSMALLINT(i+1) );
+
+	    if( __isFloat(yA) )
+		y = __floatVal( yA );
+	    else if( __isSmallInteger(yA) )
+		y = (float) __intVal( yA );
+	    else if( __isShortFloat( yA) )
+		y = __shortFloatVal( yA );
+	    else {
+		t = __SSEND0(yA, @symbol(asFloat), 0);
+		if (! __isFloat(t)) goto fail;
+		y = __floatVal( t );
+	    }
+
+	    points[i].x = (int) (x + 0.5);
+	    points[i].y = (int) ((y * sY) + tY + 0.5);
+	    x = x + step;
+	}
+
+	ENTER_XLIB();
+	XDrawLines(myDpy, win, gc, points, num, CoordModeOrigin);
+	LEAVE_XLIB();
+
+	if( mustFree ) {
+	    free( points );
+	}
+	RETURN ( self );
     }
 
 fail:
     if( mustFree )
-        free( points );
+	free( points );
 %}.
     self primitiveFailed
 
@@ -3353,12 +3360,12 @@
 		if (i2 < n) {
 		    cp += i1;
 		    if (l > 1000) l = 1000;
-	            ENTER_XLIB();
+		    ENTER_XLIB();
 		    if (opaque == true)
 			XDrawImageString(myDpy, win, gc, __intVal(x), __intVal(y), cp, l);
 		    else
 			XDrawString(myDpy, win, gc, __intVal(x), __intVal(y), cp, l);
-	            LEAVE_XLIB();
+		    LEAVE_XLIB();
 		    RETURN ( self );
 		}
 	    }
@@ -3372,12 +3379,12 @@
 		if (i2 < n) {
 		    cp += i1;
 		    if (l > 1000) l = 1000;
-	            ENTER_XLIB();
+		    ENTER_XLIB();
 		    if (opaque == true)
 			XDrawImageString(myDpy, win, gc, __intVal(x), __intVal(y), cp, l);
 		    else
 			XDrawString(myDpy, win, gc, __intVal(x), __intVal(y), cp, l);
-	            LEAVE_XLIB();
+		    LEAVE_XLIB();
 		    RETURN ( self );
 		}
 	    }
@@ -3419,12 +3426,12 @@
 			cp = (char *) cp2;
 		    }
 
-	            ENTER_XLIB();
+		    ENTER_XLIB();
 		    if (opaque == true)
 			XDrawImageString16(myDpy, win, gc, __intVal(x), __intVal(y), (XChar2b *)cp, l);
 		    else
 			XDrawString16(myDpy, win, gc, __intVal(x), __intVal(y), (XChar2b *)cp, l);
-	            LEAVE_XLIB();
+		    LEAVE_XLIB();
 
 		    if (mustFree) {
 			free(cp2);
@@ -3611,8 +3618,8 @@
 	f = __floatVal(startAngle);
 	angle1 = f * 64;
     } else if (__isShortFloat(startAngle)) {
-        f = __shortFloatVal(startAngle);
-        angle1 = f * 64;
+	f = __shortFloatVal(startAngle);
+	angle1 = f * 64;
     } else goto bad;
 
     if (__isSmallInteger(angle))
@@ -3621,8 +3628,8 @@
 	f = __floatVal(angle);
 	angle2 = f * 64;
     } else if (__isShortFloat(angle)) {
-        f = __shortFloatVal(angle);
-        angle2 = f * 64;
+	f = __shortFloatVal(angle);
+	angle2 = f * 64;
     } else goto bad;
 
     if (ISCONNECTED
@@ -3746,12 +3753,12 @@
 !
 
 primDrawBits:imageBits bitsPerPixel:bitsPerPixel depth:imageDepth padding:bitPadding
-                              width:imageWidth height:imageHeight 
-                                  x:srcx y:srcy
-                               into:aDrawableId 
-                                  x:dstx y:dsty 
-                              width:w height:h 
-                               with:aGCId
+			      width:imageWidth height:imageHeight 
+				  x:srcx y:srcy
+			       into:aDrawableId 
+				  x:dstx y:dsty 
+			      width:w height:h 
+			       with:aGCId
 
     "since XPutImage may allocate huge amount of stack space 
      (some implementations use alloca), this must run with unlimited stack."
@@ -3777,61 +3784,61 @@
      && __bothSmallInteger(imageDepth, bitsPerPixel)
      && __isSmallInteger(bitPadding)
      && __isByteArray(imageBits)) {
-        Display *dpy = myDpy;
-        int pad = __intVal(bitPadding);
-
-        gc = _GCVal(aGCId);
-        win = _WindowVal(aDrawableId);
-        if (! gc || !win) 
-            goto fail;
+	Display *dpy = myDpy;
+	int pad = __intVal(bitPadding);
+
+	gc = _GCVal(aGCId);
+	win = _WindowVal(aDrawableId);
+	if (! gc || !win) 
+	    goto fail;
 #ifdef ARGDEBUG
-        printf("args ok\n");
+	printf("args ok\n");
 #endif
-        image.data = (char *)__ByteArrayInstPtr(imageBits)->ba_element;
-        image.width = imgWdth = __intVal(imageWidth);
-        image.height = __intVal(imageHeight);
-        image.xoffset = 0;
-        image.format = ZPixmap;
-        image.byte_order = MSBFirst;
-        image.bitmap_unit = 8;
-        image.bitmap_bit_order = MSBFirst;
-        image.bitmap_pad = pad;
-        image.depth = __intVal(imageDepth);
-        image.bits_per_pixel = __intVal(bitsPerPixel);
-
-        /*
+	image.data = (char *)__ByteArrayInstPtr(imageBits)->ba_element;
+	image.width = imgWdth = __intVal(imageWidth);
+	image.height = __intVal(imageHeight);
+	image.xoffset = 0;
+	image.format = ZPixmap;
+	image.byte_order = MSBFirst;
+	image.bitmap_unit = 8;
+	image.bitmap_bit_order = MSBFirst;
+	image.bitmap_pad = pad;
+	image.depth = __intVal(imageDepth);
+	image.bits_per_pixel = __intVal(bitsPerPixel);
+
+	/*
 	image.bytes_per_line = ((((imgWdth * image.depth) + (pad-1)) / pad) * pad) / 8;
 	*/
-        image.bytes_per_line = ((((imgWdth * image.bits_per_pixel) + (pad-1)) / pad) * pad) / 8;
-
-        switch (image.bits_per_pixel) {
-            case 1:
-            case 2:
-            case 4:
-            case 8:
-            case 16:
-            case 24:
-            case 32:
-                break;
-
-            default:
+	image.bytes_per_line = ((((imgWdth * image.bits_per_pixel) + (pad-1)) / pad) * pad) / 8;
+
+	switch (image.bits_per_pixel) {
+	    case 1:
+	    case 2:
+	    case 4:
+	    case 8:
+	    case 16:
+	    case 24:
+	    case 32:
+		break;
+
+	    default:
 #ifdef ARGDEBUG
-                printf("bits_per_pixel=%d\n",image.bits_per_pixel);
+		printf("bits_per_pixel=%d\n",image.bits_per_pixel);
 #endif
-                goto fail;
-        }
-
-        image.red_mask = 0xFFFF;
-        image.green_mask = 0xFFFF;
-        image.blue_mask = 0xFFFF;
-
-        /* ENTER_XLIB(); */
-        XPutImage(dpy, win, gc, &image, __intVal(srcx), __intVal(srcy),
-                                        __intVal(dstx), __intVal(dsty),
-                                        __intVal(w), __intVal(h));
-        /* LEAVE_XLIB(); */
-
-        RETURN ( true );
+		goto fail;
+	}
+
+	image.red_mask = 0xFFFF;
+	image.green_mask = 0xFFFF;
+	image.blue_mask = 0xFFFF;
+
+	/* ENTER_XLIB(); */
+	XPutImage(dpy, win, gc, &image, __intVal(srcx), __intVal(srcy),
+					__intVal(dstx), __intVal(dsty),
+					__intVal(w), __intVal(h));
+	/* LEAVE_XLIB(); */
+
+	RETURN ( true );
     }
 #ifdef ARGDEBUG
     if (!! __isExternalAddress(aGCId)) printf("GC\n");
@@ -4124,39 +4131,39 @@
     |o s stream|
 
     targetID == (self atomIDOfLENGTH) ifTrue:[
-        "/
-        "/ the other one wants to know the size of our selection ...
-        "/
-        s := self selectionAsString.
-        self
-            setLengthProperty:propertyID 
-            value:s size 
-            for:windowID.
-        self
-            sendSelectionNotifySelection:selectionID
-            property:propertyID
-            target:targetID
-            time:t
-            from:aView id
-            to:windowID.
-        ^ self
+	"/
+	"/ the other one wants to know the size of our selection ...
+	"/
+	s := self selectionAsString.
+	self
+	    setLengthProperty:propertyID 
+	    value:s size 
+	    for:windowID.
+	self
+	    sendSelectionNotifySelection:selectionID
+	    property:propertyID
+	    target:targetID
+	    time:t
+	    from:aView id
+	    to:windowID.
+	^ self
     ].
 
     (targetID == self atomIDOfSTRING or:[
      targetID == (self atomIDOf:'COMPOUND_TEXT')]) ifTrue:[
-        "/
-        "/ the other view wants the selection as string
-        "/
-        s := self selectionAsString.
-        self
-            sendSelection:s 
-            selection:primaryAtom
-            property:propertyID 
-            target:self atomIDOfSTRING "/ targetID
-            time:t
-            from:windowID
-            to:windowID.
-        ^ self
+	"/
+	"/ the other view wants the selection as string
+	"/
+	s := self selectionAsString.
+	self
+	    sendSelection:s 
+	    selection:primaryAtom
+	    property:propertyID 
+	    target:self atomIDOfSTRING "/ targetID
+	    time:t
+	    from:windowID
+	    to:windowID.
+	^ self
     ].
 
 "/    (targetID == (self atomIDOf:'TARGETS')) ifTrue:[
@@ -4166,22 +4173,22 @@
 "/    ].
 
     (targetID == (self atomIDOf:'ST_OBJECT')) ifTrue:[
-        "/
-        "/ send the selection in binaryStore format
-        "/ (assuming, that the other view knows how to handle it)
-        "/
-        o := self getCopyBuffer.
-        stream := WriteStream on:(ByteArray new:200).
-        o storeBinaryOn:stream.
-
-        ^ self
-            sendSelection:(stream contents) 
-            selection:primaryAtom
-            property:propertyID 
-            target:targetID 
-            time:t
-            from:windowID 
-            to:windowID
+	"/
+	"/ send the selection in binaryStore format
+	"/ (assuming, that the other view knows how to handle it)
+	"/
+	o := self getCopyBuffer.
+	stream := WriteStream on:(ByteArray new:200).
+	o storeBinaryOn:stream.
+
+	^ self
+	    sendSelection:(stream contents) 
+	    selection:primaryAtom
+	    property:propertyID 
+	    target:targetID 
+	    time:t
+	    from:windowID 
+	    to:windowID
     ].
 
     "Created: / 17.6.1998 / 19:33:10 / cg"
@@ -4302,7 +4309,7 @@
     static struct inlineCache skrS = _ILC4;
 
     if (! ISCONNECTED) {
-        RETURN (false);
+	RETURN (false);
     }
 
     dpy = myDpy;
@@ -4310,10 +4317,10 @@
     eB = __INST(eventBuffer);
 
     if (__isByteArray(eB)) {
-        ev = (XEvent *)(__ByteArrayInstPtr(eB)->ba_element);
+	ev = (XEvent *)(__ByteArrayInstPtr(eB)->ba_element);
     } else {
-        printf("DISPLAY: no eventBuffer\n");
-        RETURN (false);
+	printf("DISPLAY: no eventBuffer\n");
+	RETURN (false);
     }
 
     /*
@@ -4321,30 +4328,30 @@
      * avoid creation & lookup then.
      */
     if ((t = __INST(lastId)) != nil) {
-        if (__isExternalAddress(t)) {
-            if (_WindowVal(t) == ae->window) {
-                theView = __INST(lastView);
-                if (__isNonNilObject(theView)) {
-                    if (__qClass(theView) == nil) {
-                        theView = nil;
-                    }
-                }
-            }
-        }
+	if (__isExternalAddress(t)) {
+	    if (_WindowVal(t) == ae->window) {
+		theView = __INST(lastView);
+		if (__isNonNilObject(theView)) {
+		    if (__qClass(theView) == nil) {
+			theView = nil;
+		    }
+		}
+	    }
+	}
     }
 
     if (theView == nil) {
-        windowID = __MKEXTERNALADDRESS(ae->window);
-        theView = (*vid.ilc_func)(self, @symbol(viewFromId:), nil, &vid, windowID);
-        /*
-         * MKEXTERNALADDRESS and/or #viewFromId: could lead to a GC - refetch event ptr
-         */
-        eB = __INST(eventBuffer);
-        ev = (XEvent *)(__ByteArrayInstPtr(eB)->ba_element);
+	windowID = __MKEXTERNALADDRESS(ae->window);
+	theView = (*vid.ilc_func)(self, @symbol(viewFromId:), nil, &vid, windowID);
+	/*
+	 * MKEXTERNALADDRESS and/or #viewFromId: could lead to a GC - refetch event ptr
+	 */
+	eB = __INST(eventBuffer);
+	ev = (XEvent *)(__ByteArrayInstPtr(eB)->ba_element);
     }
 
     if ((theView == nil) && (ev->type != MappingNotify)) {
-        RETURN (nil);
+	RETURN (nil);
     }
 
     /*
@@ -4364,518 +4371,518 @@
     eventType = __MKSMALLINT(ev->type);
 #endif
     switch (ev->type) {
-        case KeyRelease:
-            symS = @symbol(keyRelease:x:y:view:);
-            ipS = &skrS;
-            upDown = false;
-            goto keyPressAndRelease;
-
-        case KeyPress:
-            symS = @symbol(keyPress:x:y:view:);
-            ipS = &skpS;
-            upDown = true;
-            /* FALL INTO */
-
-        keyPressAndRelease:
-            __INST(eventRootX) = __MKSMALLINT(ke->x_root);
-            __INST(eventRootY) = __MKSMALLINT(ke->y_root);
+	case KeyRelease:
+	    symS = @symbol(keyRelease:x:y:view:);
+	    ipS = &skrS;
+	    upDown = false;
+	    goto keyPressAndRelease;
+
+	case KeyPress:
+	    symS = @symbol(keyPress:x:y:view:);
+	    ipS = &skpS;
+	    upDown = true;
+	    /* FALL INTO */
+
+	keyPressAndRelease:
+	    __INST(eventRootX) = __MKSMALLINT(ke->x_root);
+	    __INST(eventRootY) = __MKSMALLINT(ke->y_root);
 #ifdef OLD
-            __INST(altDown) = (ke->state & Mod2Mask) ? true : false;
-            __INST(metaDown) = (ke->state & Mod1Mask) ? true : false;
+	    __INST(altDown) = (ke->state & Mod2Mask) ? true : false;
+	    __INST(metaDown) = (ke->state & Mod1Mask) ? true : false;
 #else
-            __INST(altDown) = (ke->state & __intVal(__INST(altModifierMask))) ? true : false;
-            __INST(metaDown) = (ke->state & __intVal(__INST(metaModifierMask))) ? true : false;
+	    __INST(altDown) = (ke->state & __intVal(__INST(altModifierMask))) ? true : false;
+	    __INST(metaDown) = (ke->state & __intVal(__INST(metaModifierMask))) ? true : false;
 #endif
-            __INST(shiftDown) = (ke->state & ShiftMask) ? true : false;
-            __INST(ctrlDown) = (ke->state & ControlMask) ? true : false;
-
-            ev_x = ke->x;
-            ev_y = ke->y;
-
-            arg = nil;
-            nchars = XLookupString(ke, (char *)buffer, sizeof(buffer), &keySym, NULL);
-            if (nchars 
-             && (((buffer[0] >= ' ') && (buffer[0] <= '~'))
-                 || (buffer[0] >= 0x80))) {
-                arg = _MKCHARACTER(buffer[0])/* *_CharacterTable[buffer[0]] */;
-                keySymString = NULL;
-            } else {
+	    __INST(shiftDown) = (ke->state & ShiftMask) ? true : false;
+	    __INST(ctrlDown) = (ke->state & ControlMask) ? true : false;
+
+	    ev_x = ke->x;
+	    ev_y = ke->y;
+
+	    arg = nil;
+	    nchars = XLookupString(ke, (char *)buffer, sizeof(buffer), &keySym, NULL);
+	    if (nchars 
+	     && (((buffer[0] >= ' ') && (buffer[0] <= '~'))
+		 || (buffer[0] >= 0x80))) {
+		arg = _MKCHARACTER(buffer[0])/* *_CharacterTable[buffer[0]] */;
+		keySymString = NULL;
+	    } else {
 #ifdef OLD
-                switch (keySym) {
-                    case XK_Control_L:
-                    case XK_Control_R:
-                        __INST(ctrlDown) = upDown;
-                        break;
-                    case XK_Shift_L:
-                    case XK_Shift_R:
-                        __INST(shiftDown) = upDown;
-                        break;
-                    case XK_Meta_L:
-                    case XK_Meta_R:
-                        __INST(metaDown) = upDown;
-                        break;
-                    case XK_Alt_L:
-                    case XK_Alt_R:
-                        __INST(altDown) = upDown;
-                        break;
-                }
+		switch (keySym) {
+		    case XK_Control_L:
+		    case XK_Control_R:
+			__INST(ctrlDown) = upDown;
+			break;
+		    case XK_Shift_L:
+		    case XK_Shift_R:
+			__INST(shiftDown) = upDown;
+			break;
+		    case XK_Meta_L:
+		    case XK_Meta_R:
+			__INST(metaDown) = upDown;
+			break;
+		    case XK_Alt_L:
+		    case XK_Alt_R:
+			__INST(altDown) = upDown;
+			break;
+		}
 #endif
 
-                keySymString = XKeysymToString(keySym);
-                if (keySymString) {
+		keySymString = XKeysymToString(keySym);
+		if (keySymString) {
 #ifdef OLD
-                    if (keySymString[0] == 'D') {
-                        /*
-                         * remove underscore, dont want it in symbols
-                         */
-                        if (strcmp(keySymString, "Delete_line") == 0) {
-                            keySymString = "DeleteLine";
-                        } else if (strcmp(keySymString, "Delete_word") == 0) {
-                            keySymString = "DeleteWord";
-                        }
-                    }
-                    /*
-                     * make names compatible
-                     */
-                    if (strcmp(keySymString, "Down") == 0) {
-                        keySymString = "CursorDown";
-                    } else if (strcmp(keySymString, "Up") == 0) {
-                        keySymString = "CursorUp";
-                    } else if (strcmp(keySymString, "Left") == 0) {
-                        keySymString = "CursorLeft";
-                    } else if (strcmp(keySymString, "Right") == 0) {
-                        keySymString = "CursorRight";
-                    }
-                    arg = __MKSYMBOL(keySymString, (OBJ *)0);
+		    if (keySymString[0] == 'D') {
+			/*
+			 * remove underscore, dont want it in symbols
+			 */
+			if (strcmp(keySymString, "Delete_line") == 0) {
+			    keySymString = "DeleteLine";
+			} else if (strcmp(keySymString, "Delete_word") == 0) {
+			    keySymString = "DeleteWord";
+			}
+		    }
+		    /*
+		     * make names compatible
+		     */
+		    if (strcmp(keySymString, "Down") == 0) {
+			keySymString = "CursorDown";
+		    } else if (strcmp(keySymString, "Up") == 0) {
+			keySymString = "CursorUp";
+		    } else if (strcmp(keySymString, "Left") == 0) {
+			keySymString = "CursorLeft";
+		    } else if (strcmp(keySymString, "Right") == 0) {
+			keySymString = "CursorRight";
+		    }
+		    arg = __MKSYMBOL(keySymString, (OBJ *)0);
 #else
-                    arg = __MKSTRING(keySymString);
+		    arg = __MKSTRING(keySymString);
 #endif
-                }
-            }
-
-            if (arg == nil) {
-                /* happens sometimes (alt-graph on sun has no keysym) */
-                break;
-            }
-
-            (*(*ipS).ilc_func)(self, symS, nil, ipS,
-                               arg, 
-                               __MKSMALLINT(ev_x), 
-                               __MKSMALLINT(ev_y),
-                               theView);
-            break;
-
-        case ButtonPress:
-            __INST(buttonsPressed) = __MKSMALLINT(__intVal(__INST(buttonsPressed)) | (1 << be->button));
-            __INST(eventRootX) = __MKSMALLINT(be->x_root);
-            __INST(eventRootY) = __MKSMALLINT(be->y_root);
-
-            if (__isSmallInteger(__INST(multiClickTimeDelta)))
-                nextMultiClickTime = be->time + __intVal(__INST(multiClickTimeDelta));
-            else
-                nextMultiClickTime = 0;
-
-
-            if ((t = __INST(multiClickTime)) != nil) {
-                INT _multiClickTime;
-
-                _multiClickTime = __longIntVal(t);
-                if (be->time < _multiClickTime) {
-                    __INST(multiClickTime) = t = __MKUINT(nextMultiClickTime); __STORE(self, t);
-                    /*
-                     * MKUINT could lead to a GC - refetch event ptr
-                     */
-                    eB = __INST(eventBuffer);
-                    ev = (XEvent *)(__ByteArrayInstPtr(eB)->ba_element);
-
-                    ipS = &bmpS;
-                    symS = @symbol(buttonMultiPress:x:y:view:);
-                    goto sendButtonEvent;
-                    break;
-                }
-            }
-            __INST(multiClickTime) = t = __MKUINT(nextMultiClickTime); __STORE(self, t);
-            /*
-             * MKUINT could lead to a GC - refetch event ptr
-             */
-            eB = __INST(eventBuffer);
-            ev = (XEvent *)(__ByteArrayInstPtr(eB)->ba_element);
+		}
+	    }
+
+	    if (arg == nil) {
+		/* happens sometimes (alt-graph on sun has no keysym) */
+		break;
+	    }
+
+	    (*(*ipS).ilc_func)(self, symS, nil, ipS,
+			       arg, 
+			       __MKSMALLINT(ev_x), 
+			       __MKSMALLINT(ev_y),
+			       theView);
+	    break;
+
+	case ButtonPress:
+	    __INST(buttonsPressed) = __MKSMALLINT(__intVal(__INST(buttonsPressed)) | (1 << be->button));
+	    __INST(eventRootX) = __MKSMALLINT(be->x_root);
+	    __INST(eventRootY) = __MKSMALLINT(be->y_root);
+
+	    if (__isSmallInteger(__INST(multiClickTimeDelta)))
+		nextMultiClickTime = be->time + __intVal(__INST(multiClickTimeDelta));
+	    else
+		nextMultiClickTime = 0;
+
+
+	    if ((t = __INST(multiClickTime)) != nil) {
+		INT _multiClickTime;
+
+		_multiClickTime = __longIntVal(t);
+		if (be->time < _multiClickTime) {
+		    __INST(multiClickTime) = t = __MKUINT(nextMultiClickTime); __STORE(self, t);
+		    /*
+		     * MKUINT could lead to a GC - refetch event ptr
+		     */
+		    eB = __INST(eventBuffer);
+		    ev = (XEvent *)(__ByteArrayInstPtr(eB)->ba_element);
+
+		    ipS = &bmpS;
+		    symS = @symbol(buttonMultiPress:x:y:view:);
+		    goto sendButtonEvent;
+		    break;
+		}
+	    }
+	    __INST(multiClickTime) = t = __MKUINT(nextMultiClickTime); __STORE(self, t);
+	    /*
+	     * MKUINT could lead to a GC - refetch event ptr
+	     */
+	    eB = __INST(eventBuffer);
+	    ev = (XEvent *)(__ByteArrayInstPtr(eB)->ba_element);
 
 #ifdef NO_LONGER
-            if (be->state & ShiftMask) {
-                ipS = &bspS;
-                symS = @symbol(buttonShiftPress:x:y:view:);
-                goto sendButtonEvent;
-            }
+	    if (be->state & ShiftMask) {
+		ipS = &bspS;
+		symS = @symbol(buttonShiftPress:x:y:view:);
+		goto sendButtonEvent;
+	    }
 #endif
-            ipS = &bpS;
-            symS = @symbol(buttonPress:x:y:view:);
-            goto sendButtonEvent;
-
-            /* NOT REACHED */
-
-        case ButtonRelease:
-            __INST(buttonsPressed) = __MKSMALLINT(__intVal(__INST(buttonsPressed)) & ~(1 << be->button));
-            __INST(eventRootX) = __MKSMALLINT(be->x_root);
-            __INST(eventRootY) = __MKSMALLINT(be->y_root);
-            ipS = &brS;
-            symS = @symbol(buttonRelease:x:y:view:);
-            /* fall into */
-
-        sendButtonEvent:
-            butt = __MKSMALLINT(be->button);
+	    ipS = &bpS;
+	    symS = @symbol(buttonPress:x:y:view:);
+	    goto sendButtonEvent;
+
+	    /* NOT REACHED */
+
+	case ButtonRelease:
+	    __INST(buttonsPressed) = __MKSMALLINT(__intVal(__INST(buttonsPressed)) & ~(1 << be->button));
+	    __INST(eventRootX) = __MKSMALLINT(be->x_root);
+	    __INST(eventRootY) = __MKSMALLINT(be->y_root);
+	    ipS = &brS;
+	    symS = @symbol(buttonRelease:x:y:view:);
+	    /* fall into */
+
+	sendButtonEvent:
+	    butt = __MKSMALLINT(be->button);
 #ifdef NOTDEF
-            /*
-             * this allows operation with single button mouses: meta-click is always Button 2
-             */
-            if (__INST(metaDown) == true)
-                butt = __MKSMALLINT(2);
-            else 
+	    /*
+	     * this allows operation with single button mouses: meta-click is always Button 2
+	     */
+	    if (__INST(metaDown) == true)
+		butt = __MKSMALLINT(2);
+	    else 
 #endif
-                butt = __AT_(__INST(buttonTranslation), butt);
-            /*
-             * #at: could lead to a GC - refetch event ptr
-             */
-            eB = __INST(eventBuffer);
-            ev = (XEvent *)(__ByteArrayInstPtr(eB)->ba_element);
-
-
-            (*(*ipS).ilc_func)(self, 
-                               symS, nil, ipS,
-                               butt, 
-                               __MKSMALLINT(ke->x), 
-                               __MKSMALLINT(ke->y),
-                               theView);
-            break;
-
-        case MotionNotify:
-            if (__INST(motionEventCompression) != false) {
-                while (XCheckWindowEvent(dpy, me->window, ANYBUTTON, ev)) ;;
-            }
-
-            __INST(eventRootX) = __MKSMALLINT(me->x_root);
-            __INST(eventRootY) = __MKSMALLINT(me->y_root);
+		butt = __AT_(__INST(buttonTranslation), butt);
+	    /*
+	     * #at: could lead to a GC - refetch event ptr
+	     */
+	    eB = __INST(eventBuffer);
+	    ev = (XEvent *)(__ByteArrayInstPtr(eB)->ba_element);
+
+
+	    (*(*ipS).ilc_func)(self, 
+			       symS, nil, ipS,
+			       butt, 
+			       __MKSMALLINT(ke->x), 
+			       __MKSMALLINT(ke->y),
+			       theView);
+	    break;
+
+	case MotionNotify:
+	    if (__INST(motionEventCompression) != false) {
+		while (XCheckWindowEvent(dpy, me->window, ANYBUTTON, ev)) ;;
+	    }
+
+	    __INST(eventRootX) = __MKSMALLINT(me->x_root);
+	    __INST(eventRootY) = __MKSMALLINT(me->y_root);
 
 #ifdef OLD
-            __INST(altDown) = (me->state & Mod2Mask) ? true : false;
-            __INST(metaDown) = (me->state & Mod1Mask) ? true : false;
+	    __INST(altDown) = (me->state & Mod2Mask) ? true : false;
+	    __INST(metaDown) = (me->state & Mod1Mask) ? true : false;
 #else
-            __INST(altDown) = (ke->state & __intVal(__INST(altModifierMask))) ? true : false;
-            __INST(metaDown) = (ke->state & __intVal(__INST(metaModifierMask))) ? true : false;
+	    __INST(altDown) = (ke->state & __intVal(__INST(altModifierMask))) ? true : false;
+	    __INST(metaDown) = (ke->state & __intVal(__INST(metaModifierMask))) ? true : false;
 #endif
-            __INST(shiftDown) = (me->state & ShiftMask) ? true : false;
-            __INST(ctrlDown) = (me->state & ControlMask) ? true : false;
-
-            (*motS.ilc_func)(self, 
-                             @symbol(buttonMotion:x:y:view:), nil, &motS,
-                             __MKSMALLINT(me->state),
-                             __MKSMALLINT(me->x),
-                             __MKSMALLINT(me->y),
-                             theView);
-            break;
-
-        case FocusIn:
-            (*focInS.ilc_func)(self, 
-                               @symbol(focusInView:), nil, &focInS, 
-                               theView);
-            break;
-
-        case FocusOut:
-            (*focOutS.ilc_func)(self, 
-                                @symbol(focusOutView:), nil, &focOutS, 
-                                theView);
-            break;
-
-        case EnterNotify:
+	    __INST(shiftDown) = (me->state & ShiftMask) ? true : false;
+	    __INST(ctrlDown) = (me->state & ControlMask) ? true : false;
+
+	    (*motS.ilc_func)(self, 
+			     @symbol(buttonMotion:x:y:view:), nil, &motS,
+			     __MKSMALLINT(me->state),
+			     __MKSMALLINT(me->x),
+			     __MKSMALLINT(me->y),
+			     theView);
+	    break;
+
+	case FocusIn:
+	    (*focInS.ilc_func)(self, 
+			       @symbol(focusInView:), nil, &focInS, 
+			       theView);
+	    break;
+
+	case FocusOut:
+	    (*focOutS.ilc_func)(self, 
+				@symbol(focusOutView:), nil, &focOutS, 
+				theView);
+	    break;
+
+	case EnterNotify:
 #ifdef OLD
-            __INST(altDown) = (ewe->state & Mod2Mask) ? true : false;
-            __INST(metaDown) = (ewe->state & Mod1Mask) ? true : false;
+	    __INST(altDown) = (ewe->state & Mod2Mask) ? true : false;
+	    __INST(metaDown) = (ewe->state & Mod1Mask) ? true : false;
 #else
-            __INST(altDown) = (ke->state & __intVal(__INST(altModifierMask))) ? true : false;
-            __INST(metaDown) = (ke->state & __intVal(__INST(metaModifierMask))) ? true : false;
+	    __INST(altDown) = (ke->state & __intVal(__INST(altModifierMask))) ? true : false;
+	    __INST(metaDown) = (ke->state & __intVal(__INST(metaModifierMask))) ? true : false;
 #endif
-            __INST(shiftDown) = (ewe->state & ShiftMask) ? true : false;
-            __INST(ctrlDown) = (ewe->state & ControlMask) ? true : false;
-
-            (*peS.ilc_func)(self, 
-                            @symbol(pointerEnter:x:y:view:), nil, &peS,
-                            __MKSMALLINT(ewe->state),
-                            __MKSMALLINT(ewe->x), 
-                            __MKSMALLINT(ewe->y),
-                            theView);
-            break;
-
-        case LeaveNotify:
-            (*plS.ilc_func)(self, 
-                            @symbol(pointerLeave:view:), nil, &plS,
-                            __MKSMALLINT(lwe->state), 
-                            theView);
-            break;
-
-        case GraphicsExpose:
-            (*gexpS.ilc_func)(self, 
-                              @symbol(graphicsExposeX:y:width:height:final:view:), nil, &gexpS,
-                              __MKSMALLINT(ee->x),
-                              __MKSMALLINT(ee->y),
-                              __MKSMALLINT(ee->width),
-                              __MKSMALLINT(ee->height),
-                              ee->count == 0 ? true : false,
-                              theView);
-
-            if (ee->count != 0) {
-                break;
-            }
-            /* fall into */
-
-        case NoExpose:
-            (*nexpS.ilc_func)(self, 
-                              @symbol(noExposeView:), nil, &nexpS, 
-                              theView);
-            break;
-
-        case Expose:
-            (*expS.ilc_func)(self, 
-                             @symbol(exposeX:y:width:height:view:), nil, &expS,
-                             __MKSMALLINT(ee->x),
-                             __MKSMALLINT(ee->y),
-                             __MKSMALLINT(ee->width),
-                             __MKSMALLINT(ee->height),
-                             theView);
-            break;
-
-        case ConfigureNotify:
-            if (ce->above != None) {
-                siblingID = __MKEXTERNALADDRESS(ce->above);
-                sibling = (*vid.ilc_func)(self, @symbol(viewFromId:), nil, &vid, siblingID);
-                /*
-                 * MKEXTERNALADDRESS or #viewFromId: could lead to a GC - refetch event ptr
-                 */
-                eB = __INST(eventBuffer);
-                ev = (XEvent *)(__ByteArrayInstPtr(eB)->ba_element);
-            }
-
-            (*confS.ilc_func)(self, 
-                             @symbol(configureX:y:width:height:view:), nil, &confS,
-                             __MKSMALLINT(ce->x),
-                             __MKSMALLINT(ce->y),
-                             __MKSMALLINT(ce->width),
-                             __MKSMALLINT(ce->height),
-                             theView);
-            if (sibling != nil) {
-                (*coveredS.ilc_func)(self,
-                                    @symbol(coveredBy:view:), nil, &coveredS,
-                                    theView,
-                                    sibling);
-            }
-            break;
-
-        case ClientMessage:
-            if (ev->xclient.message_type == (int) _AtomVal(__INST(protocolsAtom))) {
-                if ((ev->xclient.data.l[0] == (int) _AtomVal(__INST(quitAppAtom)))
-                 || (ev->xclient.data.l[0] == (int) _AtomVal(__INST(deleteWindowAtom)))) {
-                    (*termS.ilc_func)(self, 
-                                      @symbol(terminateView:), nil, &termS, theView);
-                    break;
-                }
-                if (ev->xclient.data.l[0] == (int) _AtomVal(__INST(saveYourselfAtom))) {
-                    (*savtermS.ilc_func)(self, 
-                                         @symbol(saveAndTerminateView:)
-                                         , nil, &savtermS, theView);
-                    break;
-                }
-            }
-            /*
-             * any other client message
-             */
-            i = (char *)(&(ev->xclient.data)) - (char *)ev;
-            (*clientMsg.ilc_func)(self, 
-                                 @symbol(clientMessage:type:format:dataOffset:view:)
-                                 , nil, &clientMsg 
-                                 , __INST(eventBuffer)
-                                 ,__MKSMALLINT(ev->xclient.message_type)
-                                 ,__MKSMALLINT(ev->xclient.format)
-                                 ,__MKSMALLINT(i), 
-                                 theView);
-            break;
-
-        case DestroyNotify:
-            (*destrS.ilc_func)(self, @symbol(destroyedView:)
-                               , nil, &destrS, theView);
-            break;
-
-        case UnmapNotify:
-            (*unmapS.ilc_func)(self, @symbol(unmappedView:) 
-                               , nil, &unmapS, theView);
-            break;
-
-        case MapNotify:
-            (*mapS.ilc_func)(self, 
-                             @symbol(mappedView:) 
-                             , nil, &mapS, theView);
-            break;
-
-        case KeymapNotify:
-            (*keymap.ilc_func)(theView, 
-                               @symbol(keyMapChange) 
-                               , nil, &keymap);
-            break;
-
-        case VisibilityNotify:
-            switch (ve->state) {
-                case VisibilityUnobscured:
-                    arg = @symbol(unobscured);
-                    break;
-                case VisibilityPartiallyObscured:
-                    arg = @symbol(partiallyObscured);
-                    break;
-                case VisibilityFullyObscured:
-                    arg = @symbol(fullyObscured);
-                    break;
-            }
-            (*vis.ilc_func)(theView, @symbol(visibilityChange:), nil, &vis, arg);
-            break;
-
-        case CreateNotify:
-            (*created.ilc_func)(self, @symbol(createdView:), nil, &created, theView);
-            break;
-
-        case MapRequest:
-            (*mapReq.ilc_func)(self, @symbol(mapRequestView:), nil, &mapReq, theView);
-            break;
-
-        case ReparentNotify:
-            (*repar.ilc_func)(self, @symbol(reparentedView:), nil, &repar, theView);
-            break;
-
-        case ConfigureRequest:
-            (*confReq.ilc_func)(self, @symbol(configureRequestView:), nil, &confReq, theView);
-            break;
-
-        case GravityNotify:
-            (*gravNotify.ilc_func)(self, @symbol(gravityNotifyView:), nil, &resReq, theView);
-            break;
-
-        case ResizeRequest:
-            (*resReq.ilc_func)(self, @symbol(resizeRequestView:), nil, &resReq, theView);
-            break;
-
-        case CirculateNotify:
-            (*circNotify.ilc_func)(self, @symbol(circulateNotifyView:), nil, &circNotify, theView);
-            break;
-
-        case CirculateRequest:
-            (*circReq.ilc_func)(self, @symbol(circulateRequestView:), nil, &circReq, theView);
-            break;
-
-        case PropertyNotify:
-            (*prop.ilc_func)(self, 
-                             @symbol(propertyChangeView) 
-                             , nil, &prop,
-                             theView);
-            break;
-
-        case SelectionClear:
-            selectionID = __MKATOMOBJ(ev->xselectionclear.selection);
-            (*selClear.ilc_func)(self, 
-                                 @symbol(selectionClear:view:) 
-                                 , nil, &selClear,
-                                 selectionID,
-                                 theView);
-            break;
-
-        case SelectionNotify:
-            /*
-             * returned selection value (answer from SelectionRequest)
-             */
-            DPRINTF(("SelectionNotify prop=%x target=%x selection= %x requestor=%x\n", 
-                        ev->xselection.property, ev->xselection.target,
-                        ev->xselection.selection, ev->xselection.requestor));
-
-            {
-                INT _property = ev->xselection.property;
-                INT _target = ev->xselection.target;
-                INT _selection = ev->xselection.selection;
-                INT _requestor = ev->xselection.requestor;
-
-                propertyID = __MKATOMOBJ(_property);
-                targetID = __MKATOMOBJ(_target);
-                selectionID = __MKATOMOBJ(_selection);
-                requestorID = __MKEXTERNALADDRESS(_requestor);
-            }
-            /*
-             * MKATOMOBJ/MKEXTERNALADDRESS could lead to a GC - refetch event ptr
-             */
-            eB = __INST(eventBuffer);
-            ev = (XEvent *)(__ByteArrayInstPtr(eB)->ba_element);
-
-            (*selNotify.ilc_func)(self, 
-                                  @symbol(selectionNotify:target:selection:from:view:) 
-                                  , nil, &selNotify,
-                                  propertyID, targetID, selectionID, requestorID,
-                                  theView);
-            break;
-
-        case SelectionRequest:
-            /*
-             * someone wants the selection
-             */
-            DPRINTF(("SelectionRequest prop=%x target=%x selection=%x requestor=%x\n", 
-                        ev->xselectionrequest.property,
-                        ev->xselectionrequest.target,
-                        ev->xselectionrequest.selection,
-                        ev->xselectionrequest.requestor));
-            {
-                INT _property = ev->xselectionrequest.property;
-                INT _target = ev->xselectionrequest.target;
-                INT _selection = ev->xselectionrequest.selection;
-                INT _requestor = ev->xselectionrequest.requestor;
-                INT _t = ev->xselectionrequest.time;
-
-                propertyID = __MKATOMOBJ(_property);
-                targetID = __MKATOMOBJ(_target);
-                selectionID = __MKATOMOBJ(_selection);
-                requestorID = __MKEXTERNALADDRESS(_requestor);
-                evTime = __MKEXTERNALADDRESS(_t);
-            }
-            /*
-             * MKATOMOBJ/MKEXTERNALADDR could lead to a GC - refetch event ptr
-             */
-            eB = __INST(eventBuffer);
-            ev = (XEvent *)(__ByteArrayInstPtr(eB)->ba_element);
-
-            (*selReq.ilc_func)(self, 
-                               @symbol(selectionRequest:target:selection:time:from:view:) 
-                               , nil, &selReq,
-                               propertyID, targetID, selectionID, evTime, requestorID,
-                               theView);
-            break;
-
-        case ColormapNotify:
-            (*colormap.ilc_func)(self, 
-                                 @symbol(colorMapChangeView:) 
-                                 , nil, &colormap,
-                                 theView);
-            break;
-
-        case MappingNotify:
-            switch(mape->request) {
-                case MappingModifier:
-                    arg = @symbol(mappingModifier);
-                    break;
-                case MappingKeyboard:
-                    arg = @symbol(mappingKeyboard);
-                    break;
-                case MappingPointer:
-                    arg = @symbol(mappingPointer);
-                    break;
-                default:
-                    arg = nil;
-                    break;
-            }
-            (*mapping.ilc_func)(self, 
-                                @symbol(mappingChanged:event:) 
-                                , nil, &mapping, arg, eB);
-            break;
+	    __INST(shiftDown) = (ewe->state & ShiftMask) ? true : false;
+	    __INST(ctrlDown) = (ewe->state & ControlMask) ? true : false;
+
+	    (*peS.ilc_func)(self, 
+			    @symbol(pointerEnter:x:y:view:), nil, &peS,
+			    __MKSMALLINT(ewe->state),
+			    __MKSMALLINT(ewe->x), 
+			    __MKSMALLINT(ewe->y),
+			    theView);
+	    break;
+
+	case LeaveNotify:
+	    (*plS.ilc_func)(self, 
+			    @symbol(pointerLeave:view:), nil, &plS,
+			    __MKSMALLINT(lwe->state), 
+			    theView);
+	    break;
+
+	case GraphicsExpose:
+	    (*gexpS.ilc_func)(self, 
+			      @symbol(graphicsExposeX:y:width:height:final:view:), nil, &gexpS,
+			      __MKSMALLINT(ee->x),
+			      __MKSMALLINT(ee->y),
+			      __MKSMALLINT(ee->width),
+			      __MKSMALLINT(ee->height),
+			      ee->count == 0 ? true : false,
+			      theView);
+
+	    if (ee->count != 0) {
+		break;
+	    }
+	    /* fall into */
+
+	case NoExpose:
+	    (*nexpS.ilc_func)(self, 
+			      @symbol(noExposeView:), nil, &nexpS, 
+			      theView);
+	    break;
+
+	case Expose:
+	    (*expS.ilc_func)(self, 
+			     @symbol(exposeX:y:width:height:view:), nil, &expS,
+			     __MKSMALLINT(ee->x),
+			     __MKSMALLINT(ee->y),
+			     __MKSMALLINT(ee->width),
+			     __MKSMALLINT(ee->height),
+			     theView);
+	    break;
+
+	case ConfigureNotify:
+	    if (ce->above != None) {
+		siblingID = __MKEXTERNALADDRESS(ce->above);
+		sibling = (*vid.ilc_func)(self, @symbol(viewFromId:), nil, &vid, siblingID);
+		/*
+		 * MKEXTERNALADDRESS or #viewFromId: could lead to a GC - refetch event ptr
+		 */
+		eB = __INST(eventBuffer);
+		ev = (XEvent *)(__ByteArrayInstPtr(eB)->ba_element);
+	    }
+
+	    (*confS.ilc_func)(self, 
+			     @symbol(configureX:y:width:height:view:), nil, &confS,
+			     __MKSMALLINT(ce->x),
+			     __MKSMALLINT(ce->y),
+			     __MKSMALLINT(ce->width),
+			     __MKSMALLINT(ce->height),
+			     theView);
+	    if (sibling != nil) {
+		(*coveredS.ilc_func)(self,
+				    @symbol(coveredBy:view:), nil, &coveredS,
+				    theView,
+				    sibling);
+	    }
+	    break;
+
+	case ClientMessage:
+	    if (ev->xclient.message_type == (int) _AtomVal(__INST(protocolsAtom))) {
+		if ((ev->xclient.data.l[0] == (int) _AtomVal(__INST(quitAppAtom)))
+		 || (ev->xclient.data.l[0] == (int) _AtomVal(__INST(deleteWindowAtom)))) {
+		    (*termS.ilc_func)(self, 
+				      @symbol(terminateView:), nil, &termS, theView);
+		    break;
+		}
+		if (ev->xclient.data.l[0] == (int) _AtomVal(__INST(saveYourselfAtom))) {
+		    (*savtermS.ilc_func)(self, 
+					 @symbol(saveAndTerminateView:)
+					 , nil, &savtermS, theView);
+		    break;
+		}
+	    }
+	    /*
+	     * any other client message
+	     */
+	    i = (char *)(&(ev->xclient.data)) - (char *)ev;
+	    (*clientMsg.ilc_func)(self, 
+				 @symbol(clientMessage:type:format:dataOffset:view:)
+				 , nil, &clientMsg 
+				 , __INST(eventBuffer)
+				 ,__MKSMALLINT(ev->xclient.message_type)
+				 ,__MKSMALLINT(ev->xclient.format)
+				 ,__MKSMALLINT(i), 
+				 theView);
+	    break;
+
+	case DestroyNotify:
+	    (*destrS.ilc_func)(self, @symbol(destroyedView:)
+			       , nil, &destrS, theView);
+	    break;
+
+	case UnmapNotify:
+	    (*unmapS.ilc_func)(self, @symbol(unmappedView:) 
+			       , nil, &unmapS, theView);
+	    break;
+
+	case MapNotify:
+	    (*mapS.ilc_func)(self, 
+			     @symbol(mappedView:) 
+			     , nil, &mapS, theView);
+	    break;
+
+	case KeymapNotify:
+	    (*keymap.ilc_func)(theView, 
+			       @symbol(keyMapChange) 
+			       , nil, &keymap);
+	    break;
+
+	case VisibilityNotify:
+	    switch (ve->state) {
+		case VisibilityUnobscured:
+		    arg = @symbol(unobscured);
+		    break;
+		case VisibilityPartiallyObscured:
+		    arg = @symbol(partiallyObscured);
+		    break;
+		case VisibilityFullyObscured:
+		    arg = @symbol(fullyObscured);
+		    break;
+	    }
+	    (*vis.ilc_func)(theView, @symbol(visibilityChange:), nil, &vis, arg);
+	    break;
+
+	case CreateNotify:
+	    (*created.ilc_func)(self, @symbol(createdView:), nil, &created, theView);
+	    break;
+
+	case MapRequest:
+	    (*mapReq.ilc_func)(self, @symbol(mapRequestView:), nil, &mapReq, theView);
+	    break;
+
+	case ReparentNotify:
+	    (*repar.ilc_func)(self, @symbol(reparentedView:), nil, &repar, theView);
+	    break;
+
+	case ConfigureRequest:
+	    (*confReq.ilc_func)(self, @symbol(configureRequestView:), nil, &confReq, theView);
+	    break;
+
+	case GravityNotify:
+	    (*gravNotify.ilc_func)(self, @symbol(gravityNotifyView:), nil, &resReq, theView);
+	    break;
+
+	case ResizeRequest:
+	    (*resReq.ilc_func)(self, @symbol(resizeRequestView:), nil, &resReq, theView);
+	    break;
+
+	case CirculateNotify:
+	    (*circNotify.ilc_func)(self, @symbol(circulateNotifyView:), nil, &circNotify, theView);
+	    break;
+
+	case CirculateRequest:
+	    (*circReq.ilc_func)(self, @symbol(circulateRequestView:), nil, &circReq, theView);
+	    break;
+
+	case PropertyNotify:
+	    (*prop.ilc_func)(self, 
+			     @symbol(propertyChangeView) 
+			     , nil, &prop,
+			     theView);
+	    break;
+
+	case SelectionClear:
+	    selectionID = __MKATOMOBJ(ev->xselectionclear.selection);
+	    (*selClear.ilc_func)(self, 
+				 @symbol(selectionClear:view:) 
+				 , nil, &selClear,
+				 selectionID,
+				 theView);
+	    break;
+
+	case SelectionNotify:
+	    /*
+	     * returned selection value (answer from SelectionRequest)
+	     */
+	    DPRINTF(("SelectionNotify prop=%x target=%x selection= %x requestor=%x\n", 
+			ev->xselection.property, ev->xselection.target,
+			ev->xselection.selection, ev->xselection.requestor));
+
+	    {
+		INT _property = ev->xselection.property;
+		INT _target = ev->xselection.target;
+		INT _selection = ev->xselection.selection;
+		INT _requestor = ev->xselection.requestor;
+
+		propertyID = __MKATOMOBJ(_property);
+		targetID = __MKATOMOBJ(_target);
+		selectionID = __MKATOMOBJ(_selection);
+		requestorID = __MKEXTERNALADDRESS(_requestor);
+	    }
+	    /*
+	     * MKATOMOBJ/MKEXTERNALADDRESS could lead to a GC - refetch event ptr
+	     */
+	    eB = __INST(eventBuffer);
+	    ev = (XEvent *)(__ByteArrayInstPtr(eB)->ba_element);
+
+	    (*selNotify.ilc_func)(self, 
+				  @symbol(selectionNotify:target:selection:from:view:) 
+				  , nil, &selNotify,
+				  propertyID, targetID, selectionID, requestorID,
+				  theView);
+	    break;
+
+	case SelectionRequest:
+	    /*
+	     * someone wants the selection
+	     */
+	    DPRINTF(("SelectionRequest prop=%x target=%x selection=%x requestor=%x\n", 
+			ev->xselectionrequest.property,
+			ev->xselectionrequest.target,
+			ev->xselectionrequest.selection,
+			ev->xselectionrequest.requestor));
+	    {
+		INT _property = ev->xselectionrequest.property;
+		INT _target = ev->xselectionrequest.target;
+		INT _selection = ev->xselectionrequest.selection;
+		INT _requestor = ev->xselectionrequest.requestor;
+		INT _t = ev->xselectionrequest.time;
+
+		propertyID = __MKATOMOBJ(_property);
+		targetID = __MKATOMOBJ(_target);
+		selectionID = __MKATOMOBJ(_selection);
+		requestorID = __MKEXTERNALADDRESS(_requestor);
+		evTime = __MKEXTERNALADDRESS(_t);
+	    }
+	    /*
+	     * MKATOMOBJ/MKEXTERNALADDR could lead to a GC - refetch event ptr
+	     */
+	    eB = __INST(eventBuffer);
+	    ev = (XEvent *)(__ByteArrayInstPtr(eB)->ba_element);
+
+	    (*selReq.ilc_func)(self, 
+			       @symbol(selectionRequest:target:selection:time:from:view:) 
+			       , nil, &selReq,
+			       propertyID, targetID, selectionID, evTime, requestorID,
+			       theView);
+	    break;
+
+	case ColormapNotify:
+	    (*colormap.ilc_func)(self, 
+				 @symbol(colorMapChangeView:) 
+				 , nil, &colormap,
+				 theView);
+	    break;
+
+	case MappingNotify:
+	    switch(mape->request) {
+		case MappingModifier:
+		    arg = @symbol(mappingModifier);
+		    break;
+		case MappingKeyboard:
+		    arg = @symbol(mappingKeyboard);
+		    break;
+		case MappingPointer:
+		    arg = @symbol(mappingPointer);
+		    break;
+		default:
+		    arg = nil;
+		    break;
+	    }
+	    (*mapping.ilc_func)(self, 
+				@symbol(mappingChanged:event:) 
+				, nil, &mapping, arg, eB);
+	    break;
     }
 #undef ae
 #undef ee
@@ -4936,14 +4943,14 @@
      && __isSmallInteger(aMask)) {
 	Display *dpy = myDpy;
 
-        ENTER_XLIB();
+	ENTER_XLIB();
 	if (__isExternalAddress(aWindowIdOrNil)) {
 	    win = _WindowVal(aWindowIdOrNil);
 	    while (XCheckWindowEvent(dpy, win, __intVal(aMask), &ev)) ;;
 	} else {
 	    while (XCheckMaskEvent(dpy, __intVal(aMask), &ev)) ;;
 	}
-        LEAVE_XLIB();
+	LEAVE_XLIB();
 	RETURN ( self );
     }
 %}
@@ -5895,9 +5902,9 @@
 		minWidth = __MKSMALLINT(f->min_bounds.width);
 		maxWidth = __MKSMALLINT(f->max_bounds.width);
 		BEGIN_INTERRUPTSBLOCKED
-	        ENTER_XLIB();
+		ENTER_XLIB();
 		len = XTextWidth(f, " ", 1);
-	        LEAVE_XLIB();
+		LEAVE_XLIB();
 		END_INTERRUPTSBLOCKED
 		avgWidth = __MKSMALLINT( len );
 	    }
@@ -6481,9 +6488,9 @@
 		    if (i2 < n) {
 			cp += i1;
 			BEGIN_INTERRUPTSBLOCKED
-	    	        ENTER_XLIB();
+			ENTER_XLIB();
 			len = XTextWidth(f, cp, l);
-	    	        LEAVE_XLIB();
+			LEAVE_XLIB();
 			END_INTERRUPTSBLOCKED
 			RETURN ( __MKSMALLINT(len) );
 		    }
@@ -6497,9 +6504,9 @@
 		    if (i2 < n) {
 			cp += i1;
 			BEGIN_INTERRUPTSBLOCKED
-	    	        ENTER_XLIB();
+			ENTER_XLIB();
 			len = XTextWidth(f, cp, l);
-	    	        LEAVE_XLIB();
+			LEAVE_XLIB();
 			END_INTERRUPTSBLOCKED
 			RETURN ( __MKSMALLINT(len) );
 		    }
@@ -6542,9 +6549,9 @@
 			    cp = (char *) cp2;
 			}
 			BEGIN_INTERRUPTSBLOCKED
-	    	        ENTER_XLIB();
+			ENTER_XLIB();
 			len = XTextWidth16(f, (XChar2b *)cp, l);
-	    	        LEAVE_XLIB();
+			LEAVE_XLIB();
 			END_INTERRUPTSBLOCKED
 
 			if (mustFree) {
@@ -6589,9 +6596,9 @@
 	    if ((cls == @global(String)) || (cls == @global(Symbol))) {
 		n = __stringSize(aString);
 		BEGIN_INTERRUPTSBLOCKED
-	    	ENTER_XLIB();
+		ENTER_XLIB();
 		len = XTextWidth(f, cp, n);
-	    	LEAVE_XLIB();
+		LEAVE_XLIB();
 		END_INTERRUPTSBLOCKED
 		RETURN ( __MKSMALLINT(len) );
 	    }
@@ -6603,9 +6610,9 @@
 		n = __byteArraySize(aString) - nInstBytes;
 
 		BEGIN_INTERRUPTSBLOCKED
-	    	ENTER_XLIB();
+		ENTER_XLIB();
 		len = XTextWidth(f, cp, n);
-	    	LEAVE_XLIB();
+		LEAVE_XLIB();
 		END_INTERRUPTSBLOCKED
 		RETURN ( __MKSMALLINT(len) );
 	    }
@@ -6646,9 +6653,9 @@
 		}
 
 		BEGIN_INTERRUPTSBLOCKED
-	    	ENTER_XLIB();
+		ENTER_XLIB();
 		len = XTextWidth16(f, (XChar2b *)cp, n);
-	    	LEAVE_XLIB();
+		LEAVE_XLIB();
 		END_INTERRUPTSBLOCKED
 
 		if (mustFree) {
@@ -6751,9 +6758,9 @@
 		    break;
 	    }
 	    if (! ok) {
-	        ENTER_XLIB();
+		ENTER_XLIB();
 		XUngrabKeyboard(myDpy, CurrentTime);
-	        LEAVE_XLIB();
+		LEAVE_XLIB();
 		RETURN (false);
 	    }
 
@@ -6775,88 +6782,88 @@
     int pointer_mode, keyboard_mode;
 
     if (ISCONNECTED) {
-        if (__isExternalAddress(aWindowId)) {
-            if (__isExternalAddress(confineId)) 
-                confineWin = _WindowVal(confineId);
-            else
-                confineWin = (Window) None;
-
-            if (__isExternalAddress(aCursorId)) 
-                curs = _CursorVal(aCursorId);
-            else
-                curs = (Cursor) None;
-
-            if (pMode == @symbol(sync))
-                pointer_mode = GrabModeSync;
-            else
-                pointer_mode = GrabModeAsync;
-
-            if (kMode == @symbol(sync))
-                keyboard_mode = GrabModeSync;
-            else
-                keyboard_mode = GrabModeAsync;
-
-            if (__isSmallInteger(eventMask))
-                evMask = __intVal(eventMask);
-            else
-                evMask = ButtonPressMask | ButtonMotionMask | PointerMotionMask | ButtonReleaseMask;
-
-            BEGIN_INTERRUPTSBLOCKED
+	if (__isExternalAddress(aWindowId)) {
+	    if (__isExternalAddress(confineId)) 
+		confineWin = _WindowVal(confineId);
+	    else
+		confineWin = (Window) None;
+
+	    if (__isExternalAddress(aCursorId)) 
+		curs = _CursorVal(aCursorId);
+	    else
+		curs = (Cursor) None;
+
+	    if (pMode == @symbol(sync))
+		pointer_mode = GrabModeSync;
+	    else
+		pointer_mode = GrabModeAsync;
+
+	    if (kMode == @symbol(sync))
+		keyboard_mode = GrabModeSync;
+	    else
+		keyboard_mode = GrabModeAsync;
+
+	    if (__isSmallInteger(eventMask))
+		evMask = __intVal(eventMask);
+	    else
+		evMask = ButtonPressMask | ButtonMotionMask | PointerMotionMask | ButtonReleaseMask;
+
+	    BEGIN_INTERRUPTSBLOCKED
 /*
-            ENTER_XLIB();
+	    ENTER_XLIB();
 */
-            result = XGrabPointer(myDpy,
-                                  _WindowVal(aWindowId), 
-                                  False, 
-                                  evMask,
-                                  pointer_mode, keyboard_mode,
-                                  confineWin,
-                                  curs,
-                                  CurrentTime);
+	    result = XGrabPointer(myDpy,
+				  _WindowVal(aWindowId), 
+				  False, 
+				  evMask,
+				  pointer_mode, keyboard_mode,
+				  confineWin,
+				  curs,
+				  CurrentTime);
 /*
-            LEAVE_XLIB();
+	    LEAVE_XLIB();
 */
-            END_INTERRUPTSBLOCKED
-
-            ok = 0;
-            switch (result) {
-                case AlreadyGrabbed: 
-                    if (@global(ErrorPrinting) == true) {
-                        fprintf(stderr, "XWorkstation [warning]: grab pointer: AlreadyGrabbed\n");
-                    }
-                    break;
-                case GrabNotViewable: 
-                    if (@global(ErrorPrinting) == true) {
-                        fprintf(stderr, "XWorkstation [warning]: grab pointer: GrabNotViewable\n");
-                    }
-                    break;
-                case GrabInvalidTime: 
-                    if (@global(ErrorPrinting) == true) {
-                        fprintf(stderr, "XWorkstation [warning]: grab pointer: InvalidTime\n");
-                    }
-                    break;
-                case GrabFrozen: 
-                    if (@global(ErrorPrinting) == true) {
-                        fprintf(stderr, "XWorkstation [warning]: grab pointer: Frozen\n");
-                    }
-                    break;
-                default:
-                    ok = 1;
-                    break;
-            }
-
-            if (! ok) {
+	    END_INTERRUPTSBLOCKED
+
+	    ok = 0;
+	    switch (result) {
+		case AlreadyGrabbed: 
+		    if (@global(ErrorPrinting) == true) {
+			fprintf(stderr, "XWorkstation [warning]: grab pointer: AlreadyGrabbed\n");
+		    }
+		    break;
+		case GrabNotViewable: 
+		    if (@global(ErrorPrinting) == true) {
+			fprintf(stderr, "XWorkstation [warning]: grab pointer: GrabNotViewable\n");
+		    }
+		    break;
+		case GrabInvalidTime: 
+		    if (@global(ErrorPrinting) == true) {
+			fprintf(stderr, "XWorkstation [warning]: grab pointer: InvalidTime\n");
+		    }
+		    break;
+		case GrabFrozen: 
+		    if (@global(ErrorPrinting) == true) {
+			fprintf(stderr, "XWorkstation [warning]: grab pointer: Frozen\n");
+		    }
+		    break;
+		default:
+		    ok = 1;
+		    break;
+	    }
+
+	    if (! ok) {
 /*
-                ENTER_XLIB();
+		ENTER_XLIB();
 */
-                XUngrabPointer(myDpy, CurrentTime);
+		XUngrabPointer(myDpy, CurrentTime);
 /*
-                LEAVE_XLIB();
+		LEAVE_XLIB();
 */
-                RETURN (false);
-            }
-            RETURN ( true );
-        }
+		RETURN (false);
+	    }
+	    RETURN ( true );
+	}
     }
 %}.
     self primitiveFailed
@@ -6866,12 +6873,12 @@
     "grap the pointer - return true if ok"
 
     ^ self
-        grabPointerIn:aWindowId 
-        withCursor:aCursorId 
-        eventMask:nil
-        pointerMode:pMode 
-        keyboardMode:kMode 
-        confineTo:confineId
+	grabPointerIn:aWindowId 
+	withCursor:aCursorId 
+	eventMask:nil
+	pointerMode:pMode 
+	keyboardMode:kMode 
+	confineTo:confineId
 
     "Modified: / 28.7.1998 / 02:47:51 / cg"
 !
@@ -6967,16 +6974,16 @@
 	    gc = _GCVal(aGCId);
 	    if (__isExternalAddress(aBitmapId)) {
 		bitmap = _PixmapVal(aBitmapId);
-	        ENTER_XLIB();
+		ENTER_XLIB();
 		XSetStipple(dpy, gc, bitmap);
 		XSetFillStyle(dpy, gc, FillOpaqueStippled);
-	        LEAVE_XLIB();
+		LEAVE_XLIB();
 		RETURN ( self );
 	    }
 	    if (aBitmapId == nil) {
-	        ENTER_XLIB();
+		ENTER_XLIB();
 		XSetFillStyle(dpy, gc, FillSolid);
-	        LEAVE_XLIB();
+		LEAVE_XLIB();
 		RETURN ( self );
 	    }
 	}
@@ -7151,9 +7158,9 @@
 	    else if (aFunctionSymbol == @symbol(orReverse)) fun = GXorReverse;
 	    else if (aFunctionSymbol == @symbol(orInverted)) fun = GXorInverted;
 	    if (fun != -1) {
-	        ENTER_XLIB();
+		ENTER_XLIB();
 		XSetFunction(myDpy, gc, fun);
-	        LEAVE_XLIB();
+		LEAVE_XLIB();
 		RETURN ( self );
 	    }
 	}
@@ -7265,16 +7272,16 @@
 	    gc = _GCVal(aGCId);
 	    if (__isExternalAddress(aPixmapId)) {
 		pixmap = _PixmapVal(aPixmapId);
-	        ENTER_XLIB();
+		ENTER_XLIB();
 		XSetTile(dpy, gc, pixmap);
 		XSetFillStyle(dpy, gc, FillTiled);
-	        LEAVE_XLIB();
+		LEAVE_XLIB();
 		RETURN ( self );
 	    }
 	    if (aPixmapId == nil) {
-	        ENTER_XLIB();
+		ENTER_XLIB();
 		XSetFillStyle(dpy, gc, FillSolid);
-	        LEAVE_XLIB();
+		LEAVE_XLIB();
 		RETURN ( self );
 	    }
 	}
@@ -7910,8 +7917,8 @@
     |key|
 
     (key := untranslatedKey) isString ifTrue:[
-        key := RawKeysymTranslation at:key ifAbsent:key.
-        key := key asSymbol.
+	key := RawKeysymTranslation at:key ifAbsent:key.
+	key := key asSymbol.
     ].
     ^ super translateKey:key forView:aView
 ! !
@@ -8430,15 +8437,15 @@
     |s|
 
     (anObject isMemberOf:String) ifTrue:[
-        ^ self setTextProperty:propertyID value:anObject for:aWindowID
+	^ self setTextProperty:propertyID value:anObject for:aWindowID
     ].
     s := WriteStream on:(ByteArray new:200).
     anObject storeBinaryOn:s.
     ^ self 
-        setProperty:propertyID 
-        type:(self atomIDOf:'ST_OBJECT' create:true) 
-        value:(s contents) 
-        for:aWindowID
+	setProperty:propertyID 
+	type:(self atomIDOf:'ST_OBJECT' create:true) 
+	value:(s contents) 
+	for:aWindowID
 
     "Modified: / 17.6.1998 / 17:23:49 / cg"
 !
@@ -8451,54 +8458,54 @@
      && __isAtomID(typeID) 
      && ISCONNECTED
      && (__isString(anObject) 
-         || __isSmallInteger(anObject) 
-         || __isSymbol(anObject) 
-         || __isByteArray(anObject)
-         || __isWords(anObject))) {
-
-        Display *dpy = myDpy;
-        Atom prop, type;
-        Window window;
-        unsigned INT value;
-
-        prop = _AtomVal(propertyID);
-        type = _AtomVal(typeID);
-
-        if (__isExternalAddress(aWindowID)) {
-            window = _WindowVal(aWindowID);
-        } else {
-            window = DefaultRootWindow(dpy);
-        }
-
-        if (__isSmallInteger(anObject)) {
-            value = __intVal(anObject);
-            XChangeProperty(dpy, window, prop, type, 32,
-                            PropModeReplace,
-                            (unsigned char *)(&value), sizeof(unsigned int));
-        } else {
-            if (__isByteArray(anObject)) {
-                XChangeProperty(dpy, window, prop, type, 8,
-                                PropModeReplace,
-                                __ByteArrayInstPtr(anObject)->ba_element,
-                                __byteArraySize(anObject));
-            } else {
-                /* string or symbol or wordArray-like (16bit-string) object */
-                if (__isWords(__qClass(anObject))) {
-                    XChangeProperty(dpy, window, prop, type, 16,
-                                    PropModeReplace,
-                                    __stringVal(anObject),
-                                    __wordArraySize(anObject));
-                } else {
+	 || __isSmallInteger(anObject) 
+	 || __isSymbol(anObject) 
+	 || __isByteArray(anObject)
+	 || __isWords(anObject))) {
+
+	Display *dpy = myDpy;
+	Atom prop, type;
+	Window window;
+	unsigned INT value;
+
+	prop = _AtomVal(propertyID);
+	type = _AtomVal(typeID);
+
+	if (__isExternalAddress(aWindowID)) {
+	    window = _WindowVal(aWindowID);
+	} else {
+	    window = DefaultRootWindow(dpy);
+	}
+
+	if (__isSmallInteger(anObject)) {
+	    value = __intVal(anObject);
+	    XChangeProperty(dpy, window, prop, type, 32,
+			    PropModeReplace,
+			    (unsigned char *)(&value), sizeof(unsigned int));
+	} else {
+	    if (__isByteArray(anObject)) {
+		XChangeProperty(dpy, window, prop, type, 8,
+				PropModeReplace,
+				__ByteArrayInstPtr(anObject)->ba_element,
+				__byteArraySize(anObject));
+	    } else {
+		/* string or symbol or wordArray-like (16bit-string) object */
+		if (__isWords(__qClass(anObject))) {
+		    XChangeProperty(dpy, window, prop, type, 16,
+				    PropModeReplace,
+				    __stringVal(anObject),
+				    __wordArraySize(anObject));
+		} else {
 		    /* must be string or symbol */
-                    XChangeProperty(dpy, window, prop, type, 8,
-                                    PropModeReplace,
-                                    __stringVal(anObject),
-                                    __stringSize(anObject));
-                }
-            }
-        }
-        DPRINTF(("changeProp win=%x prop=%x type=%x\n", window, prop, type));
-        RETURN (true);
+		    XChangeProperty(dpy, window, prop, type, 8,
+				    PropModeReplace,
+				    __stringVal(anObject),
+				    __stringSize(anObject));
+		}
+	    }
+	}
+	DPRINTF(("changeProp win=%x prop=%x type=%x\n", window, prop, type));
+	RETURN (true);
     }
 %}.
     ^ false
@@ -8877,9 +8884,9 @@
     |selProp sel|
 
     (self getSelectionOwnerOf:primaryAtom) isNil ifTrue:[
-        "no primary selection - use cut buffer"
-        sel := self getObjectProperty:cutBuffer0Atom from:nil.
-        ^ sel
+	"no primary selection - use cut buffer"
+	sel := self getObjectProperty:cutBuffer0Atom from:nil.
+	^ sel
     ].
     selProp := self atomIDOf:'ST_SELECTION' create:true.
     self requestObjectSelection:primaryAtom property:selProp for:drawableId.
@@ -8913,9 +8920,9 @@
     |selProp sel|
 
     (self getSelectionOwnerOf:primaryAtom) isNil ifTrue:[
-        "no primary selection - use cut buffer"
-        sel := self getTextProperty:cutBuffer0Atom from:nil.
-        ^ sel
+	"no primary selection - use cut buffer"
+	sel := self getTextProperty:cutBuffer0Atom from:nil.
+	^ sel
     ].
     selProp := self atomIDOf:'VT_SELECTION' create:true.
     self requestTextSelection:primaryAtom property:selProp for:drawableId.
@@ -8987,17 +8994,17 @@
     "send aString back from a SelectionRequest"
 
     self 
-        setProperty:propertyID 
-        type:targetID 
-        value:something 
-        for:requestorID.
+	setProperty:propertyID 
+	type:targetID 
+	value:something 
+	for:requestorID.
     self 
-        sendSelectionNotifySelection:selectionID 
-        property:propertyID 
-        target:targetID
-        time:t 
-        from:windowID 
-        to:requestorID.
+	sendSelectionNotifySelection:selectionID 
+	property:propertyID 
+	target:targetID
+	time:t 
+	from:windowID 
+	to:requestorID.
 
     "Modified: / 17.6.1998 / 17:03:20 / cg"
     "Created: / 17.6.1998 / 19:44:03 / cg"
@@ -9012,51 +9019,51 @@
      && ISCONNECTED
      && __isAtomID(targetID)
      && __isAtomID(selectionID)) {
-        Display *dpy = myDpy;
-        XEvent ev;
-        Window requestor = _WindowVal(requestorID);
-        Atom property = _AtomVal(propertyID);
-        Atom target = _AtomVal(targetID);
-        Atom selection = _AtomVal(selectionID);
-        Status result;
-
-        ev.xselection.type = SelectionNotify;
-        ev.xselection.display = dpy;
-        ev.xselection.selection = selection;
-        ev.xselection.target = target;
-        if (__isExternalAddress(windowID))
-            ev.xselection.requestor = _WindowVal(windowID);
-        else
-            ev.xselection.requestor = DefaultRootWindow(dpy);
-        if (__isExternalAddress(t)) {
-            ev.xselection.time = (INT)(__externalAddressVal(t));
-        } else {
-            ev.xselection.time = CurrentTime;
-        }
-        if (property == None)
-            ev.xselection.property = target;
-        else
-            ev.xselection.property = property;
-
-        DPRINTF(("sending SelectionNotify sel=%x prop=%x target=%x requestor=%x to %x\n",
-                ev.xselection.selection,
-                ev.xselection.property,
-                ev.xselection.target,
-                ev.xselection.requestor,
-                requestor));
-
-        ENTER_XLIB();
-        result = XSendEvent(dpy, requestor, False, 0 , &ev);
-        LEAVE_XLIB();
-
-        if ((result == BadValue) || (result == BadWindow)) {
-            DPRINTF(("bad status\n"));
-            RETURN (false);
-        }
-        ENTER_XLIB();
-        XFlush(dpy);
-        LEAVE_XLIB();
-        RETURN (true)
+	Display *dpy = myDpy;
+	XEvent ev;
+	Window requestor = _WindowVal(requestorID);
+	Atom property = _AtomVal(propertyID);
+	Atom target = _AtomVal(targetID);
+	Atom selection = _AtomVal(selectionID);
+	Status result;
+
+	ev.xselection.type = SelectionNotify;
+	ev.xselection.display = dpy;
+	ev.xselection.selection = selection;
+	ev.xselection.target = target;
+	if (__isExternalAddress(windowID))
+	    ev.xselection.requestor = _WindowVal(windowID);
+	else
+	    ev.xselection.requestor = DefaultRootWindow(dpy);
+	if (__isExternalAddress(t)) {
+	    ev.xselection.time = (INT)(__externalAddressVal(t));
+	} else {
+	    ev.xselection.time = CurrentTime;
+	}
+	if (property == None)
+	    ev.xselection.property = target;
+	else
+	    ev.xselection.property = property;
+
+	DPRINTF(("sending SelectionNotify sel=%x prop=%x target=%x requestor=%x to %x\n",
+		ev.xselection.selection,
+		ev.xselection.property,
+		ev.xselection.target,
+		ev.xselection.requestor,
+		requestor));
+
+	ENTER_XLIB();
+	result = XSendEvent(dpy, requestor, False, 0 , &ev);
+	LEAVE_XLIB();
+
+	if ((result == BadValue) || (result == BadWindow)) {
+	    DPRINTF(("bad status\n"));
+	    RETURN (false);
+	}
+	ENTER_XLIB();
+	XFlush(dpy);
+	LEAVE_XLIB();
+	RETURN (true)
     }
 %}.
     self primitiveFailed.
@@ -9085,15 +9092,15 @@
     if (__isExternalAddress(aWindowId)
      && __isAtomID(selectionID)
      && ISCONNECTED) {
-        Display *dpy = myDpy;
-
-        win = _WindowVal(aWindowId);
-        XSetSelectionOwner(dpy, _AtomVal(selectionID), win, CurrentTime);
-        DPRINTF(("setOwner prop=%x win=%x\n", _AtomVal(selectionID), win));
-        if (XGetSelectionOwner(dpy, _AtomVal(selectionID)) != win) {
-            RETURN (false);
-        }
-        RETURN (true);
+	Display *dpy = myDpy;
+
+	win = _WindowVal(aWindowId);
+	XSetSelectionOwner(dpy, _AtomVal(selectionID), win, CurrentTime);
+	DPRINTF(("setOwner prop=%x win=%x\n", _AtomVal(selectionID), win));
+	if (XGetSelectionOwner(dpy, _AtomVal(selectionID)) != win) {
+	    RETURN (false);
+	}
+	RETURN (true);
     }
 %}.
     self primitiveFailed.
@@ -9105,7 +9112,7 @@
      This can be used by any other X application."
 
     (self setSelectionOwner:aWindowId of:primaryAtom) ifFalse:[
-        'XWorkstation [warning]: selection ownerchange failed' errorPrintCR.
+	'XWorkstation [warning]: selection ownerchange failed' errorPrintCR.
     ].
     ^ self setTextProperty:cutBuffer0Atom value:aString for:rootId.
 
@@ -9131,9 +9138,9 @@
 	     * need this check here: some servers simply dump core with bad args
 	     */
 	    if ((w >= 0) && (h >= 0)) {
-	        ENTER_XLIB();
+		ENTER_XLIB();
 		XClearArea(myDpy, _WindowVal(aWindowId), __intVal(x), __intVal(y), w, h, 0);
-	        LEAVE_XLIB();
+		LEAVE_XLIB();
 	    }
 	    RETURN ( self );
 	}
@@ -9265,16 +9272,16 @@
 	    szhints.height = __intVal(h);
 	    szhints.flags |= USSize;
 	}
-        if (__bothSmallInteger(minW, minH)) {
-            szhints.flags |= PMinSize;
-            szhints.min_width = __intVal(minW);
-            szhints.min_height = __intVal(minH);
-        }
-        if (__bothSmallInteger(maxW, maxH)) {
-            szhints.flags |= PMaxSize;
-            szhints.max_width = __intVal(maxW);
-            szhints.max_height = __intVal(maxH);
-        }
+	if (__bothSmallInteger(minW, minH)) {
+	    szhints.flags |= PMinSize;
+	    szhints.min_width = __intVal(minW);
+	    szhints.min_height = __intVal(minH);
+	}
+	if (__bothSmallInteger(maxW, maxH)) {
+	    szhints.flags |= PMaxSize;
+	    szhints.max_width = __intVal(maxW);
+	    szhints.max_height = __intVal(maxH);
+	}
 
 	if (aBoolean == true) {
 	    char *windowName;
@@ -9297,12 +9304,12 @@
 		windowName = "";
 
 	    if (iconBitmap || windowName) {
-	        ENTER_XLIB();
+		ENTER_XLIB();
 		XSetStandardProperties(dpy, win,
 					windowName, windowName,
 					iconBitmap,
 					0, 0, &szhints);
-	        LEAVE_XLIB();
+		LEAVE_XLIB();
 	    }
 
 	    wmhints.flags = 0;
@@ -9963,6 +9970,6 @@
 !XWorkstation class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview/XWorkstation.st,v 1.292 1998-08-27 14:38:15 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview/XWorkstation.st,v 1.293 1998-09-08 10:03:46 cg Exp $'
 ! !
 XWorkstation initialize!