public class MenuItem extends Item
Note: Only one of the styles CHECK, CASCADE, PUSH, RADIO and SEPARATOR may be specified.
IMPORTANT: This class is not intended to be subclassed.
Modifier and Type | Field and Description |
---|---|
(package private) int |
accelerator |
(package private) int |
hBitmap |
(package private) int |
id |
(package private) static int |
MARGIN_HEIGHT |
(package private) static int |
MARGIN_WIDTH |
(package private) Menu |
menu |
(package private) Menu |
parent |
(package private) int |
userId |
CANVAS, data, DEFAULT_HEIGHT, DEFAULT_WIDTH, DISABLED, display, DISPOSE_SENT, DISPOSED, DRAG_DETECT, DRAW_BACKGROUND, eventTable, FOREIGN_HANDLE, HIDDEN, IGNORE_WM_CHANGEUISTATE, KEYED_DATA, LAYOUT_CHANGED, LAYOUT_CHILD, LAYOUT_NEEDED, MAJOR, MINOR, MOVE_DEFERRED, MOVE_OCCURRED, PARENT_BACKGROUND, RELEASED, RESIZE_DEFERRED, RESIZE_OCCURRED, SKIN_NEEDED, state, style, THEME_BACKGROUND, TRACK_MOUSE
Constructor and Description |
---|
MenuItem(Menu parent,
int style)
Constructs a new instance of this class given its parent
(which must be a
Menu ) and a style value
describing its behavior and appearance. |
MenuItem(Menu parent,
int style,
int index)
Constructs a new instance of this class given its parent
(which must be a
Menu ), a style value
describing its behavior and appearance, and the index
at which to place it in the items maintained by its parent. |
MenuItem(Menu parent,
Menu menu,
int style,
int index) |
Modifier and Type | Method and Description |
---|---|
void |
addArmListener(ArmListener listener)
Adds the listener to the collection of listeners who will
be notified when the arm events are generated for the control, by sending
it one of the messages defined in the
ArmListener
interface. |
void |
addHelpListener(HelpListener listener)
Adds the listener to the collection of listeners who will
be notified when the help events are generated for the control, by sending
it one of the messages defined in the
HelpListener
interface. |
void |
addSelectionListener(SelectionListener listener)
Adds the listener to the collection of listeners who will
be notified when the menu item is selected by the user, by sending
it one of the messages defined in the
SelectionListener
interface. |
(package private) static int |
checkStyle(int style) |
protected void |
checkSubclass()
Checks that this class can be subclassed.
|
(package private) void |
destroyWidget()
Destroys the widget in the operating system and releases
the widget's handle.
|
(package private) boolean |
fillAccel(ACCEL accel) |
(package private) void |
fixMenus(Decorations newParent) |
int |
getAccelerator()
Returns the widget accelerator.
|
(package private) Rectangle |
getBounds()
Returns a rectangle describing the receiver's size and location
relative to its parent (or its display if its parent is null).
|
boolean |
getEnabled()
Returns
true if the receiver is enabled, and
false otherwise. |
int |
getID()
Gets the identifier associated with the receiver.
|
Menu |
getMenu()
Returns the receiver's cascade menu if it has one or null
if it does not.
|
(package private) java.lang.String |
getNameText() |
Menu |
getParent()
Returns the receiver's parent, which must be a
Menu . |
boolean |
getSelection()
Returns
true if the receiver is selected,
and false otherwise. |
boolean |
isEnabled()
Returns
true if the receiver is enabled and all
of the receiver's ancestors are enabled, and false
otherwise. |
(package private) void |
releaseChildren(boolean destroy) |
(package private) void |
releaseHandle() |
(package private) void |
releaseParent() |
(package private) void |
releaseWidget() |
void |
removeArmListener(ArmListener listener)
Removes the listener from the collection of listeners who will
be notified when the arm events are generated for the control.
|
void |
removeHelpListener(HelpListener listener)
Removes the listener from the collection of listeners who will
be notified when the help events are generated for the control.
|
void |
removeSelectionListener(SelectionListener listener)
Removes the listener from the collection of listeners who will
be notified when the control is selected by the user.
|
(package private) void |
reskinChildren(int flags) |
(package private) void |
selectRadio() |
void |
setAccelerator(int accelerator)
Sets the widget accelerator.
|
void |
setEnabled(boolean enabled)
Enables the receiver if the argument is
true ,
and disables it otherwise. |
void |
setID(int id)
Sets the identifier associated with the receiver to the argument.
|
void |
setImage(Image image)
Sets the image the receiver will display to the argument.
|
void |
setMenu(Menu menu)
Sets the receiver's pull down menu to the argument.
|
(package private) void |
setMenu(Menu menu,
boolean dispose) |
(package private) void |
setOrientation(int orientation) |
(package private) boolean |
setRadioSelection(boolean value) |
void |
setSelection(boolean selected)
Sets the selection state of the receiver.
|
void |
setText(java.lang.String string)
Sets the receiver's text.
|
(package private) int |
widgetStyle() |
(package private) LRESULT |
wmCommandChild(int wParam,
int lParam) |
(package private) LRESULT |
wmDrawChild(int wParam,
int lParam) |
(package private) LRESULT |
wmMeasureChild(int wParam,
int lParam) |
_addListener, addDisposeListener, addListener, callWindowProc, checkBits, checkOpened, checkOrientation, checkParent, checkWidget, DeferWindowPos, dispose, dragDetect, error, filters, findItem, fixMnemonic, fixMnemonic, getData, getData, getDisplay, getListeners, getName, getStyle, hooks, isDisposed, isListening, isValidSubclass, isValidThread, mapEvent, new_GC, notifyListeners, postEvent, postEvent, release, removeDisposeListener, removeListener, removeListener, reskin, reskinWidget, sendDragEvent, sendDragEvent, sendEvent, sendEvent, sendEvent, sendEvent, sendFocusEvent, sendKeyEvent, sendKeyEvent, sendMouseEvent, sendMouseEvent, sendMouseWheelEvent, sendSelectionEvent, sendSelectionEvent, setData, setData, setInputState, setKeyState, setLocationMask, setTabGroupFocus, setTabItemFocus, SetWindowPos, showMenu, showMenu, toString, updateMenuLocation, wmCaptureChanged, wmChar, wmContextMenu, wmIMEChar, wmKeyDown, wmKeyUp, wmKillFocus, wmLButtonDblClk, wmLButtonDown, wmLButtonUp, wmMButtonDblClk, wmMButtonDown, wmMButtonUp, wmMouseHover, wmMouseHWheel, wmMouseLeave, wmMouseMove, wmMouseWheel, wmNCPaint, wmPaint, wmPrint, wmRButtonDblClk, wmRButtonDown, wmRButtonUp, wmSetFocus, wmSysChar, wmSysKeyDown, wmSysKeyUp, wmXButtonDblClk, wmXButtonDown, wmXButtonUp
Menu parent
Menu menu
int hBitmap
int id
int accelerator
int userId
static final int MARGIN_WIDTH
static final int MARGIN_HEIGHT
public MenuItem(Menu parent, int style)
Menu
) and a style value
describing its behavior and appearance. The item is added
to the end of the items maintained by its parent.
The style value is either one of the style constants defined in
class SWT
which is applicable to instances of this
class, or must be built by bitwise OR'ing together
(that is, using the int
"|" operator) two or more
of those SWT
style constants. The class description
lists the style constants that are applicable to the class.
Style bits are also inherited from superclasses.
parent
- a menu control which will be the parent of the new instance (cannot be null)style
- the style of control to constructjava.lang.IllegalArgumentException
- SWTException
- SWT.CHECK
,
SWT.CASCADE
,
SWT.PUSH
,
SWT.RADIO
,
SWT.SEPARATOR
,
Widget.checkSubclass()
,
Widget.getStyle()
public MenuItem(Menu parent, int style, int index)
Menu
), a style value
describing its behavior and appearance, and the index
at which to place it in the items maintained by its parent.
The style value is either one of the style constants defined in
class SWT
which is applicable to instances of this
class, or must be built by bitwise OR'ing together
(that is, using the int
"|" operator) two or more
of those SWT
style constants. The class description
lists the style constants that are applicable to the class.
Style bits are also inherited from superclasses.
parent
- a menu control which will be the parent of the new instance (cannot be null)style
- the style of control to constructindex
- the zero-relative index to store the receiver in its parentjava.lang.IllegalArgumentException
- SWTException
- SWT.CHECK
,
SWT.CASCADE
,
SWT.PUSH
,
SWT.RADIO
,
SWT.SEPARATOR
,
Widget.checkSubclass()
,
Widget.getStyle()
public void addArmListener(ArmListener listener)
ArmListener
interface.listener
- the listener which should be notifiedjava.lang.IllegalArgumentException
- SWTException
- ArmListener
,
removeArmListener(org.eclipse.swt.events.ArmListener)
public void addHelpListener(HelpListener listener)
HelpListener
interface.listener
- the listener which should be notifiedjava.lang.IllegalArgumentException
- SWTException
- HelpListener
,
removeHelpListener(org.eclipse.swt.events.HelpListener)
public void addSelectionListener(SelectionListener listener)
SelectionListener
interface.
When widgetSelected
is called, the stateMask field of the event object is valid.
widgetDefaultSelected
is not called.
When the SWT.RADIO
style bit is set, the widgetSelected
method is
also called when the receiver loses selection because another item in the same radio group
was selected by the user. During widgetSelected
the application can use
getSelection()
to determine the current selected state of the receiver.
listener
- the listener which should be notified when the menu item is selected by the userjava.lang.IllegalArgumentException
- SWTException
- SelectionListener
,
removeSelectionListener(org.eclipse.swt.events.SelectionListener)
,
SelectionEvent
protected void checkSubclass()
Widget
The SWT class library is intended to be subclassed
only at specific, controlled points (most notably,
Composite
and Canvas
when
implementing new widgets). This method enforces this
rule unless it is overridden.
IMPORTANT: By providing an implementation of this method that allows a subclass of a class which does not normally allow subclassing to be created, the implementer agrees to be fully responsible for the fact that any such subclass will likely fail between SWT releases and will be strongly platform specific. No support is provided for user-written classes which are implemented in this fashion.
The ability to subclass outside of the allowed SWT classes is intended purely to enable those not on the SWT development team to implement patches in order to get around specific limitations in advance of when those limitations can be addressed by the team. Subclassing should not be attempted without an intimate and detailed understanding of the hierarchy.
checkSubclass
in class Item
static int checkStyle(int style)
void destroyWidget()
Widget
When a widget is destroyed in the operating system, its
descendants are also destroyed by the operating system.
This means that it is only necessary to call destroyWidget
on the root of the widget tree.
This method is called after releaseWidget()
.
See also releaseChild()
, releaseWidget()
and releaseHandle()
.
destroyWidget
in class Widget
Widget.dispose()
boolean fillAccel(ACCEL accel)
void fixMenus(Decorations newParent)
public int getAccelerator()
SWT.CONTROL | SWT.SHIFT | 'T', SWT.ALT | SWT.F2
.
The default value is zero, indicating that the menu item does
not have an accelerator.SWTException
- Rectangle getBounds()
SWTException
- public boolean getEnabled()
true
if the receiver is enabled, and
false
otherwise. A disabled menu item is typically
not selectable from the user interface and draws with an
inactive or "grayed" look.SWTException
- isEnabled()
public int getID()
SWTException
- public Menu getMenu()
CASCADE
menu items can have
a pull down menu. The sequence of key strokes, button presses
and/or button releases that are used to request a pull down
menu is platform specific.getMenu
in class Widget
SWTException
- java.lang.String getNameText()
getNameText
in class Item
public Menu getParent()
Menu
.SWTException
- public boolean getSelection()
true
if the receiver is selected,
and false otherwise.
When the receiver is of type CHECK
or RADIO
,
it is selected when it is checked.
SWTException
- public boolean isEnabled()
true
if the receiver is enabled and all
of the receiver's ancestors are enabled, and false
otherwise. A disabled menu item is typically not selectable from the
user interface and draws with an inactive or "grayed" look.SWTException
- getEnabled()
void releaseChildren(boolean destroy)
releaseChildren
in class Widget
void releaseHandle()
releaseHandle
in class Widget
void releaseParent()
releaseParent
in class Widget
void releaseWidget()
releaseWidget
in class Item
public void removeArmListener(ArmListener listener)
listener
- the listener which should no longer be notifiedjava.lang.IllegalArgumentException
- SWTException
- ArmListener
,
addArmListener(org.eclipse.swt.events.ArmListener)
public void removeHelpListener(HelpListener listener)
listener
- the listener which should no longer be notifiedjava.lang.IllegalArgumentException
- SWTException
- HelpListener
,
addHelpListener(org.eclipse.swt.events.HelpListener)
public void removeSelectionListener(SelectionListener listener)
listener
- the listener which should no longer be notifiedjava.lang.IllegalArgumentException
- SWTException
- SelectionListener
,
addSelectionListener(org.eclipse.swt.events.SelectionListener)
void reskinChildren(int flags)
reskinChildren
in class Widget
void selectRadio()
public void setAccelerator(int accelerator)
SWT.MOD1 | SWT.MOD2 | 'T', SWT.MOD3 | SWT.F2
.
SWT.CONTROL | SWT.SHIFT | 'T', SWT.ALT | SWT.F2
.
The default value is zero, indicating that the menu item does
not have an accelerator.accelerator
- an integer that is the bit-wise OR of masks and a key
SWTException
- public void setEnabled(boolean enabled)
true
,
and disables it otherwise. A disabled menu item is typically
not selectable from the user interface and draws with an
inactive or "grayed" look.enabled
- the new enabled stateSWTException
- public void setID(int id)
id
- the new identifier. This must be a non-negative value. System-defined identifiers are negative values.SWTException
- public void setImage(Image image)
Note: This operation is a hint and is not supported on platforms that do not have this concept (for example, Windows NT). Furthermore, some platforms (such as GTK), cannot display both a check box and an image at the same time. Instead, they hide the image and display the check box.
setImage
in class Item
image
- the image to displaySWTException
- public void setMenu(Menu menu)
CASCADE
menu items can have a
pull down menu. The sequence of key strokes, button presses
and/or button releases that are used to request a pull down
menu is platform specific.
Note: Disposing of a menu item that has a pull down menu will dispose of the menu. To avoid this behavior, set the menu to null before the menu item is disposed.
menu
- the new pull down menujava.lang.IllegalArgumentException
- CASCADE
SWTException
- void setMenu(Menu menu, boolean dispose)
boolean setRadioSelection(boolean value)
void setOrientation(int orientation)
public void setSelection(boolean selected)
When the receiver is of type CHECK
or RADIO
,
it is selected when it is checked.
selected
- the new selection stateSWTException
- public void setText(java.lang.String string)
Mnemonics are indicated by an '&' that causes the next character to be the mnemonic. When the user presses a key sequence that matches the mnemonic, a selection event occurs. On most platforms, the mnemonic appears underlined but may be emphasised in a platform specific manner. The mnemonic indicator character '&' can be escaped by doubling it in the string, causing a single '&' to be displayed.
Accelerator text is indicated by the '\t' character. On platforms that support accelerator text, the text that follows the '\t' character is displayed to the user, typically indicating the key stroke that will cause the item to become selected. On most platforms, the accelerator text appears right aligned in the menu. Setting the accelerator text does not install the accelerator key sequence. The accelerator key sequence is installed using #setAccelerator.
setText
in class Item
string
- the new textjava.lang.IllegalArgumentException
- SWTException
- setAccelerator(int)
int widgetStyle()
LRESULT wmCommandChild(int wParam, int lParam)
LRESULT wmDrawChild(int wParam, int lParam)
LRESULT wmMeasureChild(int wParam, int lParam)