• 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
Accessing a property of a view via its controller doesn't work
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Accessing a property of a view via its controller doesn't work


  • Subject: Accessing a property of a view via its controller doesn't work
  • From: Gabriel Zachmann via Cocoa-dev <email@hidden>
  • Date: Sat, 4 Sep 2021 19:26:48 +0200

I access the window of a view by two different ways, in the controller and in
the view, resp., and in the controller, I always get a nil pointer.


In my app, I have a subclass of NSView, MyView, declared like this:

@interface MyView : NSView <NSTextViewDelegate, CALayerDelegate,
CAAnimationDelegate>
{
    NSWindow * window_;
    ...
}
@property (readwrite) NSWindow * window_;


In one of MyView's instance methods, I save the window like this:

- (void) viewWillMoveToWindow: (NSWindow *) newWindow
{
    window_ = newWindow;
    ...


Also in MyView, I have this line to interrogate the styleMask at some point
later during runtime:

    if ( [window_ styleMask] & NSWindowStyleMaskFullScreen )
        ...

This works fine, window_ has a proper value (as a pointer), and styleMask
returns values as expected.


However, I have pretty much the same line in my MasterViewController, which
does not work.


In the MasterViewController, I create an instance of MyView like this:

- (void) viewDidLoad
{
    [super viewDidLoad];
    myview_ = [[MyView alloc] initWithFrame: self.view.frame isPreview: NO ];
    [self.view addSubview: myview_];
    ...


Then, in MasterViewController's showPreferences:, I have this code:

- (IBAction) showPreferences: (id) sender
{
    if ( [myview_.window_ styleMask] & NSWindowStyleMaskFullScreen )
        ...


Here, myview_.window_  is always 0.


How could that be?

Puzzled, Gabriel.


Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________

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: Accessing a property of a view via its controller doesn't work
      • From: Ben Kennedy via Cocoa-dev <email@hidden>
    • Re: Accessing a property of a view via its controller doesn't work
      • From: Alex Zavatone via Cocoa-dev <email@hidden>
  • Next by Date: Re: Accessing a property of a view via its controller doesn't work
  • Next by thread: Re: Accessing a property of a view via its controller doesn't work
  • Index(es):
    • Date
    • Thread