I have taken all advice and the code now looks like below which cleans up the pointed out controller leak and does not store [self window]:

- (IBAction)sewing:(id)sender   {

[[[SewingController alloc] initWithWindowNibName:@"Sewing and Color" andBFileName:&mBFilename] release];
}



- (id) initWithWindowNibName:(NSString*)windowNibName andBFileName: (BFilename*)bfilename
{
        self = [super initWithWindowNibName:windowNibName];
        if (self != nil)
        {
                [self retain];
                m_design = [[self window] contentView];

                
                [[self window] setDelegate:self];
        }
        return self;
}

- (void)windowWillClose:(NSNotification *)notification {

        if(m_design->m_dirtyDesign)
                NSLog(@"dirty message");
        else
                NSLog(@"clean, no message");
        [self release];
}





On Jul 8, 2010, at 9:03 AM, Sherm Pendley wrote:

On Thu, Jul 8, 2010 at 10:19 AM,  <k...@highrolls.net> wrote:
his seems weird. Why assign the panel/window to your own ivar when this is
exactly -[NSWindowController window] is designed to do for you?

I was thinking I might need to reference it and rather than call for it just
have it hanging around. Yes, no?

Did you profile (with Shark or Instruments) your code, and did the
profiler tell you that calls to -window are taking up a significant
amount of your app's time? If not, what you're doing is called
"premature optimization," and it's generally considered a bad idea.

sherm--

--
Cocoa programming in Perl:
http://www.camelbones.org


_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to