[comp.windows.x] Problem with window placement

bfinn@foundation (Bill Finnefrock) (11/28/90)

Previously I posted a message about being unable to configure windows with
dimensions greater than MAXSHORT (on a Sun SPARCstation 1). I have since
discovered that my problem is not in configuring the large parent window but
placing the children of the large window at X and Y positions greater than
MAXSHORT.  If I attempt to do this the ConfigureNotify events for both the 
parent and the child report that the window was positioned at negative 
values for any value larger than MAXSHORT


what I am doing is basically as follows:

1) configure the parent window with width + height at MAXINT

2) configure a child of that window at x & y values of 253 & 32797

3) when I receive a ConfigureNotify event for the child the values reported
   back form the server are 253 & -32739

I am using X11R4 with all Xlib calls and no toolkits


Has anybody ever seen behavior like this before? 



thanks in advance
bill
bill_finnefrock.wbst845e@xerox.com

etaylor@wilkins.iaims.bcm.tmc.edu (Eric Taylor) (11/28/90)

It sounds like your server is storing window positions
as shorts.  Therefore any value close to MAXSHORT will be a problem.
--
					Eric Taylor
					Baylor College of Medicine
					etaylor@wilkins.bmc.tmc.edu
					(713) 798-3776

rws@EXPO.LCS.MIT.EDU (Bob Scheifler) (11/29/90)

    Previously I posted a message about being unable to configure windows with
    dimensions greater than MAXSHORT (on a Sun SPARCstation 1).

It would be ill-advised to depend on such dimensions working in the vast
majority of servers.

    I have since
    discovered that my problem is not in configuring the large parent window but
    placing the children of the large window at X and Y positions greater than
    MAXSHORT.

X/Y positions are defined in the protocol as 16-signed values.  You can't
get positions greater than MAXSHORT.

mouse@LARRY.MCRCIM.MCGILL.EDU (12/01/90)

> Previously I posted a message about being unable to configure windows
> with dimensions greater than MAXSHORT (on a Sun SPARCstation 1).  I
> have since discovered that my problem is not in configuring the large
> parent window but placing the children of the large window at X and Y
> positions greater than MAXSHORT.  If I attempt to do this the
> ConfigureNotify events for both the parent and the child report that
> the window was positioned at negative values for any value larger
> than MAXSHORT

> what I am doing is basically as follows:
> 1) configure the parent window with width + height at MAXINT
> 2) configure a child of that window at x & y values of 253 & 32797
> 3) when I receive a ConfigureNotify event for the child the values
>    reported back form the server are 253 & -32739

The protocol uses signed 16-bit values for window positions.  Not much
you can do about it.

But, why do you want to do this?  You may be trying to solve a problem
the wrong way.  (I've often seen someone ask "how do I do <foo>" when
the answer is "you can't", but they really meant "how do I do <bar>"
and have mistakenly decided that <foo> is the only way to get <bar>.)

					der Mouse

			old: mcgill-vision!mouse
			new: mouse@larry.mcrcim.mcgill.edu