public class MenuItem extends ListGridRecord implements HasClickHandlers
Menu
. Each MenuItem
can have a
title
, icon
, shortcut\n keys
, optional submenu
and various other
settings.
To create a Menu, create a series of MenuItems and call Menu.setItems()
.
Alternatively, Menus support binding to a DataSource
.
As another option, here's a sample of a Menu in Component XML
:
<Menu> <items> <MenuItem title="item1" click="alert(1)"/> <MenuItem title="item2"/> </items> </Menu>
id
factoryCreated, factoryProperties
Constructor and Description |
---|
MenuItem() |
MenuItem(JavaScriptObject jsObj) |
MenuItem(java.lang.String title) |
MenuItem(java.lang.String title,
java.lang.String icon) |
MenuItem(java.lang.String title,
java.lang.String icon,
java.lang.String keyTitle) |
Modifier and Type | Method and Description |
---|---|
HandlerRegistration |
addClickHandler(ClickHandler handler)
Add a click handler.
|
java.lang.Boolean |
getCanSelectParent()
A MenuItem that has a submenu normally cannot be selected, instead clicking or hitting Enter while keyboard focus is on
the item shows the submenu.
|
java.lang.Boolean |
getChecked()
If true, this item displays a standard checkmark image to the left of its title.
|
java.lang.String |
getDisabledIcon()
The filename for this item's custom icon when the item is disabled.
|
java.lang.Boolean |
getEnabled()
Affects the visual style and interactivity of the menu item.
|
java.lang.Boolean |
getFetchSubmenus()
If false, no submenus will be fetched for this MenuItem.
|
java.lang.String |
getIcon()
The filename for this item's custom icon.
|
int |
getIconHeight()
The height applied to this item's icon.
|
int |
getIconWidth()
The width applied to this item's icon.
|
java.lang.Boolean |
getIsSeparator()
When set to
true , this menu item shows a horizontal separator instead of the title text. |
java.lang.String |
getKeyTitle()
A string to display in the shortcut-key column for this item.
|
static MenuItem |
getOrCreateRef(JavaScriptObject jsObj) |
Menu |
getSubmenu()
Deprecated.
use
com.smartgwt.client.widgets.Menu#getSubmenu instead |
java.lang.String |
getTitle()
The text displayed for the menu item
|
void |
setCanSelectParent(java.lang.Boolean canSelectParent)
A MenuItem that has a submenu normally cannot be selected, instead clicking or hitting Enter while keyboard focus is on
the item shows the submenu.
|
void |
setChecked(java.lang.Boolean checked)
If true, this item displays a standard checkmark image to the left of its title.
|
void |
setCheckIfCondition(MenuItemIfFunction checkIf)
Contains the condition that will check or uncheck the curent menuItem.
|
void |
setDisabledIcon(java.lang.String disabledIcon)
The filename for this item's custom icon when the item is disabled.
|
void |
setDynamicIconFunction(MenuItemStringFunction handler)
Contains the condition that will change the curent items' icon when met.
|
void |
setDynamicTitleFunction(MenuItemStringFunction handler)
Contains the condition that will change the curent items' title when met.
|
void |
setEnabled(java.lang.Boolean enabled)
Affects the visual style and interactivity of the menu item.
|
void |
setEnableIfCondition(MenuItemIfFunction enableIf)
Contains the condition that will enable or disable the curent menuItem.
|
void |
setFetchSubmenus(java.lang.Boolean fetchSubmenus)
If false, no submenus will be fetched for this MenuItem.
|
void |
setIcon(java.lang.String icon)
The filename for this item's custom icon.
|
void |
setIconHeight(int iconHeight)
The height applied to this item's icon.
|
void |
setIconWidth(int iconWidth)
The width applied to this item's icon.
|
void |
setIsSeparator(java.lang.Boolean isSeparator)
When set to
true , this menu item shows a horizontal separator instead of the title text. |
void |
setKeys(KeyIdentifier... keys)
Shortcut key(s) to fire the menu item action.
|
void |
setKeyTitle(java.lang.String keyTitle)
A string to display in the shortcut-key column for this item.
|
void |
setSubmenu(Menu submenu)
A reference to another menu, to display as a submenu when the mouse cursor hovers over this menu item.
|
void |
setTitle(java.lang.String title)
The text displayed for the menu item
|
get_baseStyle, get_canEdit, get_canRemove, getBackgroundComponent, getCanAcceptDrop, getCanDrag, getCanExpand, getCanSelect, getCustomStyle, getDetailDS, getIncludeInSummary, getIsGridSummary, getIsGroupSummary, getLinkText, getSingleCellValue, set_baseStyle, set_canEdit, set_canRemove, setBackgroundComponent, setCanAcceptDrop, setCanDrag, setCanExpand, setCanSelect, setCustomStyle, setDetailDS, setIncludeInSummary, setIsGridSummary, setIsGroupSummary, setLinkText, setSingleCellValue
convertToRecordArray, copyAttributes, copyAttributesInto, getAttributeAsRecordArray, getAttributeAsRecordList, isARecord, toMap
getRef, getRef, internalSetID
applyFactoryProperties, doAddHandler, fireEvent, getAttribute, getAttributeAsBoolean, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDouble, getAttributeAsDoubleArray, getAttributeAsFloat, getAttributeAsInt, getAttributeAsIntArray, getAttributeAsJavaScriptObject, getAttributeAsLong, getAttributeAsMap, getAttributeAsObject, getAttributeAsRecord, getAttributeAsString, getAttributeAsStringArray, getAttributes, getHandlerCount, isFactoryCreated, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttributeAsJavaObject, setFactoryCreated
equals, getJsObj, hashCode, isCreated, setJavaScriptObject, setJsObj
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
fireEvent
public MenuItem()
public MenuItem(JavaScriptObject jsObj)
public MenuItem(java.lang.String title)
public MenuItem(java.lang.String title, java.lang.String icon)
public MenuItem(java.lang.String title, java.lang.String icon, java.lang.String keyTitle)
public static MenuItem getOrCreateRef(JavaScriptObject jsObj)
public void setCanSelectParent(java.lang.Boolean canSelectParent)
canSelectParent
- Default value is nullpublic java.lang.Boolean getCanSelectParent()
public void setChecked(java.lang.Boolean checked)
checkmarkImage
. If you need to set this
state dynamically, use MenuItem.checkIf()
instead.
checked
- Default value is nullpublic java.lang.Boolean getChecked()
checkmarkImage
. If you need to set this
state dynamically, use MenuItem.checkIf()
instead.
public void setDisabledIcon(java.lang.String disabledIcon)
checked
are both specified, only the icon specified by this
property will be displayed. The path to the loaded skin directory and the skinImgDir are prepended to this filename to
form the full URL. If you need to set this state dynamically, use MenuItem.dynamicIcon()
instead.
disabledIcon
- Default value is nullpublic java.lang.String getDisabledIcon()
checked
are both specified, only the icon specified by this
property will be displayed. The path to the loaded skin directory and the skinImgDir are prepended to this filename to
form the full URL. If you need to set this state dynamically, use MenuItem.dynamicIcon()
instead.
public void setEnabled(java.lang.Boolean enabled)
false
, the menu item will not
respond to mouse rollovers or clicks. If you need to set this state dynamically, use MenuItem.enableIf()
instead.
setEnabled
in class ListGridRecord
enabled
- Default value is truepublic java.lang.Boolean getEnabled()
false
, the menu item will not
respond to mouse rollovers or clicks. If you need to set this state dynamically, use MenuItem.enableIf()
instead.
getEnabled
in class ListGridRecord
public void setFetchSubmenus(java.lang.Boolean fetchSubmenus)
fetchSubmenus
.fetchSubmenus
- Default value is truepublic java.lang.Boolean getFetchSubmenus()
fetchSubmenus
.public void setIcon(java.lang.String icon)
checked
are both specified, only the icon specified by this
property will be displayed. The path to the loaded skin directory and the skinImgDir are prepended to this filename to
form the full URL. If this item is disabled, and disabledIcon
is set, then that icon will be used instead. If you need to set this state dynamically, use MenuItem.dynamicIcon()
instead.
icon
- Default value is nullpublic java.lang.String getIcon()
checked
are both specified, only the icon specified by this
property will be displayed. The path to the loaded skin directory and the skinImgDir are prepended to this filename to
form the full URL. If this item is disabled, and disabledIcon
is set, then that icon will be used instead. If you need to set this state dynamically, use MenuItem.dynamicIcon()
instead.
public void setIconHeight(int iconHeight)
16
can be changed for all MenuItems by overriding
iconHeight
.iconHeight
- Default value is 16public int getIconHeight()
16
can be changed for all MenuItems by overriding
iconHeight
.public void setIconWidth(int iconWidth)
16
can be changed for all MenuItems by overriding
iconWidth
.iconWidth
- Default value is 16public int getIconWidth()
16
can be changed for all MenuItems by overriding
iconWidth
.public void setIsSeparator(java.lang.Boolean isSeparator)
true
, this menu item shows a horizontal separator instead of the title
text. Typically specified as the only property of a menu
item, since the separator will not respond to mouse events.setIsSeparator
in class ListGridRecord
isSeparator
- Default value is falsepublic java.lang.Boolean getIsSeparator()
true
, this menu item shows a horizontal separator instead of the title
text. Typically specified as the only property of a menu
item, since the separator will not respond to mouse events.getIsSeparator
in class ListGridRecord
public void setKeyTitle(java.lang.String keyTitle)
keys
will be used by default.keyTitle
- Default value is see belowpublic java.lang.String getKeyTitle()
keys
will be used by default.public void setSubmenu(Menu submenu)
submenu
- Default value is nullpublic void setTitle(java.lang.String title)
title
- Default value is nullpublic java.lang.String getTitle()
public HandlerRegistration addClickHandler(ClickHandler handler)
Executed when this menu item is clicked by the user. The click handler must be specified as a function or string of
script. Call com.smartgwt.client.widgets.menu.events.MenuItemClickEvent#cancel()
from within ClickHandler.onClick(com.smartgwt.client.widgets.menu.events.MenuItemClickEvent)
to suppress the Menu.itemClick()
handler if specified.
addClickHandler
in interface HasClickHandlers
handler
- the click handlerHandlerRegistration
used to remove this handlerpublic void setKeys(KeyIdentifier... keys)
KeyIdentifier
.
To apply multiple shortcut keys to this item, set this property to an array of such key identifiers.keys
- keys Default value is nullpublic void setEnableIfCondition(MenuItemIfFunction enableIf)
If you don't need to
set this state dynamically, use enabled
instead.
public void setCheckIfCondition(MenuItemIfFunction checkIf)
If you don't need to
set this state dynamically, use checked
instead.
public void setDynamicTitleFunction(MenuItemStringFunction handler)
If you don't need to set this state dynamically, use title
instead.
public void setDynamicIconFunction(MenuItemStringFunction handler)
If you don't need to set this state dynamically, use icon
instead.
@Deprecated public Menu getSubmenu()
com.smartgwt.client.widgets.Menu#getSubmenu
instead