2
votes

I am having a trouble try to display a NSWindow with out using Interface Builder. The initialization of the window was quite confusing since I am more familiar with iPhone (which does not have an NSWindow equivalent). So I searched Google for some code and I eventually found this:

NSRect windowRect = NSMakeRect(10.0f, 10.0f, 800.0f, 600.0f);

NSWindow *window = [[NSWindow alloc] initWithContentRect:windowRect 
                                               styleMask:( NSResizableWindowMask | NSClosableWindowMask | NSTitledWindowMask) 
                                                 backing:NSBackingStoreBuffered defer:NO];

[window makeKeyAndOrderFront:nil];

So I copied that code and placed it in the applicationDidFinishLaunching and thought all would be good. But all is not good. Xcode did not display any errors (or warnings) in the Build Results. But, I do get this message in the display log:

2010-06-26 13:33:47.170 FooApp[283:a0f] Could not connect the action buttonPressed: to target of class NSApplication

I don't know how to interpret this as Google has failed me on searching for a solution on this display log error. And, as far as I can tell, I have no actions at the moment including a buttonPressed one. As a side note: I do not know if this is relevant or not, but I deleted the Main Window.xib and its accompanying property in the info.plist.

Any help would be greatly appreciated.

UPDATE: I tried doing some printf debugging (never really bothered learning NSLog) and the thing won't even printf if the thing is at the very beginning of the appliactionDidFinishLaunching or even worst, at the start of main (before the return if incase some of you are tempted to ask me if I put the printf before or after the return statement).

1
@Dave DeLong: That whole segment is pretty much it. Just began the project you see.thyrgle

1 Answers

2
votes

MainWindow.xib is part of the iphone App template, isn't it? What exactly did you delete? You still have the MainMenu.xib, right?

As you have discovered, having a nib file is not optional for a Cocoa app. You must have at least one nib (or xib, for you youngsters) and it must have a main menu in it.