Clear as Mud
Clear as Mud
- Subject: Clear as Mud
- From: email@hidden
- Date: Mon, 20 Aug 2001 17:40:49 -0400
Well, it's day four of trying to figure out how to connect custom menu
items to their various targets. Thanks to all, especially Scott and
Phillip, for trying to clear the mud from my sorry excuse of a brain.
As you might guess, in spite of your efforts, I have yet to get anything
to work. One obvious problem is that there seems to be at least three
ways to do this inter-Nib stuff, which is no doubt adding to my
confusion. Scott wants me to use notifications, while Phillip says use
the First Responder, while the example from Apple avoids both of these
tools! Another problem is that different people are making different
assumptions about what I do and/or do not know; the result is that some
things get emphasized while other areas of knowledge go without
comment. Or so it seems to me. Part of that is my own fault, in that I
often dumb down my questions attempting to elicit more detailed
answers. Another problem is that every example uses different, often
radically different, nomenclature.
I have a feeling that this is really simple, and I'm being tied in knots
due to my usual knack of taking everything too literally. I really
should have studied engineering instead of science!
So, here's what I do not understand: Notifications--I don't see why
these are needed for solving this at all. First Responder--from the
docs it looks to me that the Nib controlling a second window is not in
the chain in order to receive the action message from the MainMenu.nib.
I've read the docs on NSResponder three times now but it is as muddy as
my head feels. Hoping for clarity from folks who are probably as
frustrated with me as I am with Cocoa, here is exactly what I want to do:
When the program is launched only the Main Menu comes up, ala Project
Builder, which is to say there is no main window and therefor no main
window controller. Three custom menu items under "file" are "Open
Records," "Open Parameters," and "Run." In addition to the
MainMenu.nib, there are three other Nibs: "RecordController.nib,"
ParametersController.nib," and RunController.nib." RecordController nib
and related files take data from text fields and create a MutableArray
of records; ParametersController nib and related files take data from a
bunch of labeled sliders and keep the setting in a Dictionary;
RunController nib and related files display a window that shows the
progress of the "Run" when a Button is pushed. All sorts of tricky
logic stuff on the Model side, most of which I have figured out,
although much fine-tuning needs to be done over the coming months.
So, what is the best scheme for connecting these menu items so that the
respective windows get unarchived and opened up? Where are the
IBOutlets declared and implemented? Any other mojo needed?
Damn, someone should write "Project/Interface Builder--The Missing
Manual." A surefire best seller!!!
Brian E. Howard
Cocoa Cult Central
still stuck in the GUI