Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!ames!haven!umd5!zben From: zben@umd5.umd.edu (Ben Cranston) Newsgroups: comp.sys.mac.programmer Subject: Re: List Manager questions Summary: Tim is correct about placement of activate code Message-ID: <5134@umd5.umd.edu> Date: 27 Jul 89 19:21:31 GMT References: <8374@bsu-cs.bsu.edu> <227700017@uxa.cso.uiuc.edu> <8115@hoptoad.uucp> <5129@umd5.umd.edu> <8138@hoptoad.uucp> Reply-To: zben@umd5.umd.edu (Ben Cranston) Organization: University of Maryland, College Park Lines: 45 In article <5129@umd5.umd.edu> zben@umd5.umd.edu (Ben Cranston) writes: > The dialog manager KNOWS about TextEdit so it can deactivate and activate > any included TextEdit items in response to the corresponding event. > It does NOT know about the List manager in this way, so I had to explicitly > check for this event type and call LActivate (before the > IsDialogEvent/DialogSelect stuff as I recall). In article <8138@hoptoad.uucp> tim@hoptoad.UUCP (Tim Maroney) writes: > You ought to do it after IsDialogEvent and before DialogSelect. On the > other hand, you don't really *have* to do it at all. If you don't, > your scroll bar(s) will still show and that's the extent of the > problem. Most users won't even notice. I checked my source code and in fact I did do it after IsDialogEvent and before DialogSelect. It also checks for keyDown events, since it is doing the SFGetFile-type key-to-list-position stuff. For both these cases DialogSelect will return false but there is something else we want to do, hence the special case code. Yes, I realize it is pretty innocuous and nobody will notice, but I will notice! Like Hebrew National* hotdogs I have to answer to a higher authority. My code will never leave ghost select bars in inactive TextEdit items, and it will by activate and deactivate its windows properly. I guess you can't fault Apple for falling down on this one. In order to do it right they would have to: 1. Extend item codes to include a "list" item, so the dialog routines could recognize lists in item lists. 2. Get everybody to make their lists as "list" items rather than "user" items patched after dialog load time. 3. Modify the dialog routines, which now search for textedit items to be activated and deactivated, to also activate and deactivate "list" items. I guess it was just easier to push the work off onto ALL the application writers... * This is probably a trademark of some huge food conglomerate. -- Sig DS.L ('ZBen') ; Ben Cranston * Computer Science Center Network Infrastructures Group * University of Maryland at College Park