Path: utzoo!utgpu!watserv1!watmath!att!att!linac!pacific.mps.ohio-state.edu!zaphod.mps.ohio-state.edu!wuarchive!cs.utexas.edu!uunet!hsi!stpstn!lerman From: lerman@stpstn.UUCP (Ken Lerman) Newsgroups: comp.sys.next Subject: Re: NOT (click to type) in NeXTStep? Message-ID: <5805@stpstn.UUCP> Date: 16 Nov 90 14:29:08 GMT References: <1990Nov14.210337.16130@uvm.edu> Reply-To: lerman@stpstn.UUCP (Ken Lerman) Organization: The Stepstone Corporation, Sandy Hook, CT 06482 Lines: 53 In article gessel@carthage.cs.swarthmore.edu (Daniel Mark Gessel) writes: [...] ->The NeXT uses shared libraries, which if I understand it correctly, means that ->the programs themselves don't have the library code linked in, this is done ->at runtime (and there may only be one image in memory of a library routine, ->I don't know if this feature falls under the same category). If there was ->a way to substitute in your own code for the library routines that control the ->window, people could customize their windowing systems all to heck. -> ->There might be collisions between other subclasses of windows and new ->class variations that could be installed in this way. It also may be hard ->or potentially irriversable. It could, also, be the equivalent of a mac init, ->which would allow people to customize their NeXT's. (there's also the problem ->of multi users, etc). -> ->You could probably write a subclass of window that has a tracking rect, that ->put the focus (not a view type focus) when the mouse was moved into it, without ->moving the window to the front. -> ->Does anybody know if this kind of library routine substitution would work? -> ->Dan ->-- ->Daniel Mark Gessel Independent Software Consultant ->Internet: gessel@cs.swarthmore.edu and Developer ->My opinions are not necessarily representative of those of Swarthmore College. I am not a NeXT user, but have significant experience with the Objective-C language in a large number of environments. I have a few comments on your suggestion (please insert IMHO before all of the following): 1 -- It would NOT work if you added instance variables to your new class, because your existing subclasses would not know about them. But there are ways to get around that. 2 -- The poseAs() function in Stepstone's Objective-C runtime (I believe it is called class-poseAs() by NeXT) is intended to be used for this type of functionality. 3 -- You would probably have to do something special to cause your new class to be loaded with the foreign applications. I am not familiar enough with the NeXT runtime to suggest what, though. 4 -- This is precisely the type of problem that object-oriented programming is supposed to help us solve. 5 -- It would probably be a lot easier if you had the source to the NeXT runtime and window classes. I have not seen either. Ken