• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
I want a window's file owner that's not a NSWindowController
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

I want a window's file owner that's not a NSWindowController


  • Subject: I want a window's file owner that's not a NSWindowController
  • From: Jonny Taylor <email@hidden>
  • Date: Tue, 28 Sep 2010 18:41:40 +0100

I am trying to understand the right way of dealing with a "settings" window in my application. I have a "Camera" object that wraps a Firewire video camera. I would like to bring up an NSPanel that enables various settings of the camera to be modified. I do not need to override any particular behaviours of NSWindowController, and it seems to me that logically my Camera object should not need to inherit from NSWindowController (the window business is a bit of a distraction from the main purpose of the camera class, which is handling received frames - and in future I may want more than one such camera-related window).

What I thought I could do when I want to bring the settings window up is as follows (from within my Camera class):
if (settingsWindowController == NULL)
	settingsWindowController = [[NSWindowController alloc] initWithWindowNibName:(NSString *)@"Camera Settings" owner:self];
[settingsWindowController showWindow:self];
(where settingsWindowController is an instance variable of type NSWindowController). In the nib file I have set the File's Owner proxy to type Camera, and the bindings I have set up for the window all work correctly. However [settingsWindowController window] returns nil, and this causes various problems. Clearly I am doing something wrong.

Alternatively I can set the File's Owner to type NSWindowController (and not specify an owner in my call to initWithWindowNibName). If I do this then the window controller is correctly linked to the window (I link up the appropriate outlet in IB), but the bindings don't work.

I can't work out whether there is a way I can get my (instance variable-based) window controller to work AND bind to the Camera object. I feel this would be the tidiest way of doing things (it doesn't make sense to me for Camera to inherit from NSWindowController). Is there something extra I need to do to make this work, or am I just approaching all this in the wrong way?

I have tried adding an NSWindowController object in the nib (with File's Owner still Camera). I can wire that up to the window, but I suspect that's not doing anything because I am allocating my own NSWindowController object in the code I listed earlier. I wonder if adding the NSWindowController object is the way forwards - but if so, how to I go about loading the controller from the nib as well as the window itself? I suspect from various other confused postings in the archives that initWindowWindowNibName:owner may not be the right thing for me to use here.

Hopefully this makes sense - thanks for any suggestions...
Jonny_______________________________________________

Cocoa-dev mailing list (email@hidden)

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:

This email sent to email@hidden

  • Follow-Ups:
    • Re: I want a window's file owner that's not a NSWindowController
      • From: Quincey Morris <email@hidden>
    • RE: I want a window's file owner that's not a NSWindowController
      • From: Shawn Bakhtiar <email@hidden>
  • Prev by Date: Re: Acquiring an NSConnection otherwise than by registered name?
  • Next by Date: RE: I want a window's file owner that's not a NSWindowController
  • Previous by thread: intermittent sync services crash
  • Next by thread: RE: I want a window's file owner that's not a NSWindowController
  • Index(es):
    • Date
    • Thread