Path: utzoo!attcan!uunet!husc6!mailrus!tut.cis.ohio-state.edu!bloom-beacon!EXPO.LCS.MIT.EDU!rws From: rws@EXPO.LCS.MIT.EDU (Bob Scheifler) Newsgroups: comp.windows.x Subject: Re: X11R3 user reports back Message-ID: <8811161341.AA27446@EXPO.LCS.MIT.EDU> Date: 16 Nov 88 13:41:15 GMT References: <155@sunquest.UUCP> Sender: daemon@bloom-beacon.MIT.EDU Organization: The Internet Lines: 23 I noticed that you broke some of my code by making Position into a short from an int... That's ok, it's probably my own fault for not using Position instead of int... I'm glad you see it that way :-) But why is it that (x,y) coordinates in Xlib are still defined as ints!? i.e. why save space in Xt if you just give it up again in Xlib and in the server? We aren't giving up space elsewhere. Xt actually stores these values in widget structures, and when you begin to have a few thousand widgets, the savings of changing from int to short become significant. Typical server implementations have since the beginning stored these values as shorts. Xlib almost never stores anything internally, but structure components that mirror the protocol are typically defined as shorts. Arguments to Xlib functions are uniformly(?) declared as ints (or longs when need be) just for consistency; when they get packed into a protocol request, they still get truncated to 16-bits if that's what the protocol wants.