Class Fox::FXMenuButton
In: FXMenuButton.rb
Parent: FXLabel

An FXMenuButton posts a popup menu when clicked. There are many ways to control the placement where the popup will appear; first, the popup may be placed on either of the four sides relative to the menu button; this is controlled by the flags MENUBUTTON_DOWN, etc. Next, there are several attachment modes; the popup’s left/bottom edge may attach to the menu button’s left/top edge, or the popup’s right/top edge may attach to the menu button’s right/bottom edge, or both. Also, the popup may appear centered relative to the menu button. Finally, a small offset may be specified to displace the location of the popup by a few pixels so as to account for borders and so on. Normally, the menu button shows an arrow pointing to the direction where the popup is set to appear; this can be turned off by passing the option MENUBUTTON_NOARROWS.

Events

The following messages are sent by FXMenuButton to its target:

SEL_KEYPRESS:sent when a key goes down; the message data is an FXEvent instance.
SEL_KEYRELEASE:sent when a key goes up; the message data is an FXEvent instance.
SEL_LEFTBUTTONPRESS:sent when the left mouse button goes down; the message data is an FXEvent instance.
SEL_LEFTBUTTONRELEASE:sent when the left mouse button goes up; the message data is an FXEvent instance.

Menu button options

MENUBUTTON_AUTOGRAY:Automatically gray out when no target
MENUBUTTON_AUTOHIDE:Automatically hide when no target
MENUBUTTON_TOOLBAR:Toolbar style
MENUBUTTON_DOWN:Popup window appears below menu button
MENUBUTTON_UP:Popup window appears above menu button
MENUBUTTON_LEFT:Popup window to the left of the menu button
MENUBUTTON_RIGHT:Popup window to the right of the menu button
MENUBUTTON_NOARROWS:Do not show arrows
MENUBUTTON_ATTACH_LEFT:Popup attaches to the left side of the menu button
MENUBUTTON_ATTACH_TOP:Popup attaches to the top of the menu button
MENUBUTTON_ATTACH_RIGHT:Popup attaches to the right side of the menu button
MENUBUTTON_ATTACH_BOTTOM:Popup attaches to the bottom of the menu button
MENUBUTTON_ATTACH_CENTER:Popup attaches to the center of the menu button
MENUBUTTON_ATTACH_BOTH:Popup attaches to both sides of the menu button
Methods
new   
Attributes
attachment  [RW] 

Attachment [Integer]

buttonStyle  [RW] 

Menu button style [Integer]

menu  [RW] 

The popup menu [FXPopup]

popupStyle  [RW] 

Popup style [Integer]

xOffset  [RW] 

X-offset where menu pops up relative to button [Integer]

yOffset  [RW] 

Y-offset where menu pops up relative to button [Integer]

Public Class methods
new(parent, text, icon=nil, popupMenu=nil, opts=JUSTIFY_NORMAL|ICON_BEFORE_TEXT|MENUBUTTON_DOWN, x=0, y=0, width=0, height=0, padLeft=DEFAULT_SPACING, padRight=DEFAULT_SPACING, padTop=DEFAULT_SPACING, padBottom=DEFAULT_SPACING) {|theMenuButton| ...}

Constructor