• 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
Re: Custom Views
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Custom Views


  • Subject: Re: Custom Views
  • From: Matt Mashyna <email@hidden>
  • Date: Tue, 11 Apr 2006 23:12:01 -0400

Thanks,

I'm getting closer. I followed the advice below and now I get my custom view with the outlets attached. But, my custom view has no subviews. If I add my custom view's outlet view as it's subview then custom view draws! Something tells me this isn't real good but it works. And when I try to change the size of the custom view (with setFrameSize) the subviews don't honor the Autosizing settings. My subviews just get clipped when I make them smaller and don't stretch like I want them to.

Any idea on what I can do to fix the autosizing ?


On Apr 11, 2006, at 4:58 PM, Wain wrote:

Hi,

Do you have a nib file with your view and text views in it?
You need to load the nib file and get your view from it, the view is archived in the nib file, that's where the outlets are set.


It sounds like what you want to do is instantiate an NSView in IB and add a few text views to your NSView.
Your nib file will have an owner, set the owner to whatever type of class you choose, you want to add the outlets to the files owner.
Connect the outlets to the text views.


Now, in your code you need to init (initWithNibNamed:bundle:) and then instantiate (instantiateNibWithOwner:topLevelObjects:) the nib file with an instance of the class you chose as the nib owner.

if instantiateNibWithOwner:topLevelObjects: returns YES then your owner should have all of it's outlets set.

Once you have this concept you can tailor your nib owner and content to fit your needs.

Hope this all makes sense :-)

Wain

On 11 Apr 2006, at 21:19, Matt Mashyna wrote:

I've been looking for a way to create a custom container view so I can instantiate as many as I need and add them as subviews in a window. I thought I could make a subclass of NSView with a few text views in it, instantiate it in a nib, connect the outlets and have it ready to use. Of course, this doesn't work.
I was able to make the views and drop them with the code below but the subviews are not connected to the outlets and they don't draw.


- (void)windowControllerDidLoadNib:(NSWindowController *) aController
{
[super windowControllerDidLoadNib:aController];
// Add any code here that needs to be executed once the windowController has loaded the document's window.

NSWindowController* myController = [[self windowControllers] objectAtIndex:0];
NSWindow* myWindow = [myController window];
NSView* mainView = [myWindow contentView];
NSRect initPos = {{0.0, 0.0}, {200.0, 100.0}};

planBoxView* newView = [[planBoxView alloc] initWithFrame: initPos];

[mainView addSubview: newView];
[newView setNeedsDisplay: YES];
}


I can see in the debugger that the view I make this way is added but its outlets are nils.

I want to make views for a project planner like MS Project. I want one view with a few subviews connected to outlets. I was hoping that I could make a view in IB and use it to drop them into my window on the fly. Is there way to do it this way with IB or do I need to lay my custom view out programatically ?

Is there a tech note for this ? I just can't find any Apple example code that covers this kind of thing.
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


_______________________________________________ Do not post admin requests to the list. They will be ignored. Cocoa-dev mailing list (email@hidden) Help/Unsubscribe/Update your Subscription: This email sent to email@hidden
  • Follow-Ups:
    • Re: Custom Views
      • From: Jerry Krinock <email@hidden>
References: 
 >Custom Views (From: Matt Mashyna <email@hidden>)
 >Re: Custom Views (From: Wain <email@hidden>)

  • Prev by Date: Is it possible to add datarows from cocoa to an Applescript DataSource?
  • Next by Date: nsarraycontroller, binding and plugin protocols
  • Previous by thread: Re: Custom Views
  • Next by thread: Re: Custom Views
  • Index(es):
    • Date
    • Thread