OK, so there's obviously something(s) I don't get about what happens with the "quit" menu item in the application menu when I make a standalone. The bottom item in the "file" menu is treated as a quit command and is moved on the mac to the bottom of the application menu, and appears as "quit <myApp>". This much is clear. Two mysteries for me (I'm developing on a Mac):

Problem 1. Recipe: make a new stack. Use the menubuilder to make the minimal menubar ("uMenubar" -- file, edit, help), and use the autoscript builder to make the basic menupick scripts for each button. Put "answer" commands in each menupick switch case to show which menuitem you have selected, eg,
...
case "open"
  answer "you're trying to open something" as sheet
  break
case "quit"
  answer "you're trying to quit" as sheet
  break
end switch

Run it in the IDE -- fine, everything prompts the expected answer dialogs, and you can't quit from the File->Quit menuitem, since the switch statement intercepts it with a bare answer command. Now make the stack into a standalone, setting the menubar of the stack to "uMenubar" -- everything works as expected except that selecting "quit <myApp>" from the application menu results in a peremptory quit -- no answer dialog saying "you're trying to quit". So I thought maybe the message is actually not just "quit" but "quit <myApp>" so I changed the switch & case statements to read "case pWhich contains "quit" -- but still no dialog, just a peremptory quit. Obviously the system is catching the message and the rev engine in the app never sees it. Same with the command-Q keyboard shortcut -- the commandkeydown handler in the main stack script never sees it, though it intercepts all the other keyboard menu equivalents.

All of the above occurs in a simple test stack as prescribed above. What is even stranger is that in the only slightly more complex stack I have been trying to turn into an app (for collecting, sharing, and printing recipes), I have the *opposite* problem -- when I turn it into a standalone, selecting the "quit" item from the application menu does **nothing at all**. Nada. Neither does the command-q shortcut (which I scripted for), except the application menu hilites briefly. The only way I can quit the app is to click the close box. Which is fine, but the menu choice & the keyboard equivalent should work too. Windows folks will expect to quit with the close box, but Mac folks will be more likely to use the menu or the keyboard.

How do I catch the quit message when the user selects it from the app menu or does a command-q? -- I need to perform some housekeeping and save operations, write the data to a file, etc. before the app closes: something like saveDataToFile; cleanUpStuff; pass "quit". I tried catching the closeStackRequest message but that never gets triggered by the "quit" menuitem either, or by cmd-q.

There is something fundamental that I don't understand about the myApp>quit menu for a Mac standalone. Can someone explicate this?

Problem 2. When I first created my recipe stack I named things somewhat hastily, and I tried once when I was mostly done to create a standalone, then went back to revise a bunch of things. As I developed it further I renamed the stack file and the main stack, which was originally named "recipeFile". I also chose a different name in the standalone preferences for the eventual application. When I converted it to a standalone finally, it was named properly in the Finder (as specified in the standalone preferences), but the application name as it appears in the application menu on the mac (and in the "quit <myApp>" menuitem) is the original name of the main stack, "recipeFile". And nothing I do results in altering this. I have changed the name of the main stack, the label of the main stack, the name of the application bundle in the standalone preferences, the name of the stack file, but the old "recipeFile" stubbornly continues to be what appears next to the apple menu in the standalone, and in the "quit" item of that menu. There is *nothing* now in the stack file that bears the name "recipeFile" -- not the name of the stack in the Finder, not the main stack name, not the main stack label, nothing. I don't know where the standalone builder is getting the string "recipeFile" from at this point. Did it somehow save it from when I originally tried to make the first standalone?

If someone can try this to check it for me: create a stack, name it something, then turn it into a standalone. Now rename the stack in the finder, rename the main stack, change the label on the main stack, change the app name in the standalone builder settings, and make another standalone. Does the application menu title change? and if so, what to? The new main stack name? the new application name as specified in the standalone builder settings? I'm not sure if I'm more worried that this is a reproducible bug, or that it's some weird quirk of my system, but in either case I need to fix it. I'm running Studio 2.8.1 build 471 on OSX 10.4.10 on an iBook G4.

I'm getting bald from tearing my hear out. I do *not* want to have to make a whole new main stack from scratch just so I can name it properly from the beginning!

-- Peter

Peter M. Brigham
[EMAIL PROTECTED]
http://home.comcast.net/~pmbrig/

--  Oh, no, not another learning experience!
_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to