So I've been jumping around, way ahead in the textbook- and took the time to look at the 'big' project in a few chapters- the Reminder App. I really love the 'Going thru the code line by line' portions from Mark as he really breaks this down into small parts to think about.
Point is- wow, you have to handle a lot when you reach any level of complexity in an app. I mean, of course you do, but I tend not to think into the details - esp since I really don't do any C programming for the mac lol.. But wow, you have to handle everything- but on the other side there is an incredible amount that the System ROM (ToolBox) is doing for you even at this level (System 6 and 7). The applications on the classic mac are really a concert between your app and pushing and getting events to and from the OS, and using the ToolBox for all the low-level grphical stuff for the UI. Handling mouse clicks, sending them off, checking Event queues- it's all interesting since it makes way more sense to me now than it did years ago when I looked at these things (again, not as a dev but as a tinkerer). It seems almost doable now with that 90's level of System OS tech.
One question I'll throw out for the more experienced people, since I have read zero of the Inside the mac esp none of VI -- I have nothing to draw on for the proper UI ways other than using a Mac for many years....
If I have this App I'm designing (see above) which has say 8 editable fields - I'm trying to decide how to manage a user editing them. At first I thought they'd be editable fields and as a user clicks in they become editable, clicking away saves them- but there are no examples of this in the book, and therefore probably quite complex to handle at this point.
Should they be handled by a Menu Item? Choosing a menu item can launch a Dialog which then allows editing...
Or should there be a small edit button by each field, clicking launches a dialog to edit?
Also I will handle key presses to launch dialogs for user interaction, but clearly the Mac way is probably the Menu and creating my own entries there.
-andy