• 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: Making an NSMenu "small"?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Making an NSMenu "small"?


  • Subject: Re: Making an NSMenu "small"?
  • From: Jérôme Laurens <email@hidden>
  • Date: Mon, 27 Jan 2003 18:35:15 +0100

Le lundi, 27 jan 2003, ` 16:25 Europe/Zurich, Stiphane Sudre a icrit :

> On Monday, January 27, 2003, at 03:03 PM, Jirtme Laurens wrote:
>
>> Le dimanche, 26 jan 2003, ` 23:15 Europe/Zurich, Matt Gemmell a icrit
>> :
>>
>>> Hi folks,
>>>
>>> I'm displaying an NSMenu when my NSButton subclass is clicked, using
>>> -[NSMenu +popUpContextMenu:...]. The menu displays at normal size,
>>> i.e. the text of the items is the same size as the text in the >
>>> menubar.
>>>
>>> I'd like my menu to look the same way that an NSPopUpButton's menu
>>> does when the NSPopUpButton is set to "small", i.e. using the small
>>> system font. Is that possible? I don't see any NSMenu or NSMenuItem
>>> methods related to font or size, and calling NSControl's
>>> -setControlSize: method on my NSButton has no effect on its menu
>>> (nor would I expect it to).
>>>
>> You might not like my solution... but it is not so silly
>>
>> create a NSPopUpButton
>> make it small
>> make a copy of its menu
>> release the pop up button
>>
>> you end with a small menu...
>
> Just tried this as I'm also interested by a solution to this. It's not
> working.
>
> 1) If you remove the NSPopUpButton, when you display the Menu in the
> over view, the Application crashes as if someone was doing a dealloc
> on the NSMenu instead of a release
> 2) If you keep the NSPopUpButton, when you display the menu in the
> NSButton, the labels are big. Then if you click on the NSPopUpButton,
> the labels are small the next time you display the menu of the
> NSButton.
>

You are right. To avoid the crash you must remove alll the items first,
then add your own.

Maybe you can send a mouseDown message to the pop up... then a mouse
up, before copying it.

In iTeXMac, i use the following code

NSMenu * markMenu = [[[NSMenu allocWithZone: [NSMenu menuZone]]
initWithTitle: title] autorelease];
[markMenu setMenuRepresentation: [[[NSMenuView alloc]
initWithFrame: NSZeroRect] autorelease]];
[[markMenu menuRepresentation] setFont: [NSFont menuFontOfSize:
[NSFont smallSystemFontSize]]];

The cell height is still 1 point more than the right height. I think
you can arrange that using a customized menu item cell
_______________________________________________
cocoa-dev mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/cocoa-dev
Do not post admin requests to the list. They will be ignored.

References: 
 >Re: Making an NSMenu "small"? (From: Stéphane Sudre <email@hidden>)

  • Prev by Date: Owner unknown
  • Next by Date: Database access in Cocoa program
  • Previous by thread: Re: Making an NSMenu "small"?
  • Next by thread: Dragging to table view without indicator
  • Index(es):
    • Date
    • Thread