Re: replacing carbon menu with cocoa
Re: replacing carbon menu with cocoa
- Subject: Re: replacing carbon menu with cocoa
- From: Esteban Lorenzano <email@hidden>
- Date: Tue, 14 Oct 2008 11:09:32 -0300
Hi,
I loaded from Nib, as you suggest, and something strange happens -
strange, but near what I need-
If I load a Nib, the new main menu overlaps the old one (and two menus
coexist)... but new Main Menu redraws "apple" menu too, and disappear
if I reload the Nib. Finally, if I first "clean" carbon menu, and then
load bundle twice, everything seems to be working. This is the code I
wrote:
static sqInt initializeCocoaMenu(void) {
MenuRef cleanMenu;
//First we clean the carbon menu
CreateNewMenu(menuId, 0, &cleanMenu);
SetMenuTitleWithCFString(cleanMenu, CFSTR(""));
SetRootMenu(cleanMenu);
//Then we load the bundle
[ NSBundle loadNibNamed: @"MarsPlugin" owner: [ NSApplication
sharedApplication ] ];
//... twice
[ NSBundle loadNibNamed: @"MarsPlugin" owner: [ NSApplication
sharedApplication ] ];
return sqNil;
}
... but this is ok?
Thanks,
Esteban
On 13/10/2008, at 4:27p.m., Peter Ammon wrote:
On Oct 13, 2008, at 5:18 AM, Esteban Lorenzano wrote:
Hi,
I'm new to the list -and to cocoa-, and I don't know if what I want
to do is possible: I'm writing a plugin for a previous existent
application made in carbon, the application will take over the old
app behavior, and for that, it needs to replace the menu with a new
one...
I read documentation, saw examples and followed old threads on this
list, and no one is very clear about this... ¿Is it possible? ¿how?
You should make a nib from the "Application" template in Interface
Builder, then load it via [NSBundle loadNibNamed:...]. Its main
menu will replace the current main menu.
I already tried
[ NSApp setMainMenu: myMenu ]
It does not fail, but nothing happens :(
It's hard to say what this would do without seeing the code that
creates myMenu. But there's some problems creating a main menu
programmatically; using a nib is the best approach.
-Peter
"Querer es suscitar las paradojas"
Camus - El mito de Sísifo
_______________________________________________
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