Path: utzoo!utgpu!water!watmath!clyde!att!pacbell!lll-tis!helios.ee.lbl.gov!pasteur!ucbvax!hplabs!nsc!voder!apple!tecot From: tecot@Apple.COM (Ed Tecot) Newsgroups: comp.sys.mac.programmer Subject: Re: Change in System Tools 6.0 Menu Manager behavior. Keywords: menuWidth -> -1, PopUpMenuSelect Message-ID: <14581@apple.Apple.COM> Date: 24 Jul 88 03:38:03 GMT References: <9365@dartvax.Dartmouth.EDU> Reply-To: tecot@apple.apple.com.UUCP (Ed Tecot) Organization: Apple Computer Inc, Cupertino, CA Lines: 18 In article <9365@dartvax.Dartmouth.EDU> earleh@eleazar.dartmouth.edu (Earle R. Horton) writes: >The problem is fixed by calling CalcMenuSize every time before calling >TrackPopUp if ((*theMenu)->menuWidth == -1), but this is not the >point. The point is this: Why is (*theMenu)->menuWidth now being >changed to -1, even though the contents of the menu are not changed in >any way, and why is this new behavior not documented anywhere? That was part of the change that permitted pop-up menus to appear on any screen, not just the main monitor on the Mac II. In general, if your menu is going to come up on a different screen, which may not be the same size, you want any menu which may come up to be recalculated. Setting menuWidth to -1 informs the Menu Manager to call CalcMenuSize again. The standard MDEF checks for this and calls CalcMenuSize if needed. Since there were relatively few applications which use custom pop-ups, this problem was not discovered until too late. It is not documented, and as such is considered antisocial behavior by this programmer. It has been fixed in 6.0.1. _emt