Pop-up menu
Adds a pop-up menu to other views. You can pin it to a menu item when the menu item is clicked or when the view loses the focus.
null
Menu items: | Items in the menu. | MenuItemSpec[] |
Appearance
Show label: | Show the view's label. | Boolean |
Label placement: | The location of the label relative to the rest of the view. {Top | Left} |
LabelPlacement |
Label width: | The width of the label in px, % or em.\r\nFor example\: 50px, 20%, 0.4em. If no unit is specified, px is assumed. | String |
Horizontal alignment: | The horizontal alignment of the menu relative to the contained view. {Left | Right | Auto} |
MenuHorizontalAlignment |
Vertical position: | The menu position relative to the contained view. {Bottom | Top | Auto} |
MenuVerticalAlignment |
Drop shadow: | Add a shadow to the menu frame. | Boolean |
Width: | Width of "envelope" wrapping the contained view/element. | String |
Behavior
Pin menu: | Prevents the menu from auto closing when a menu item is clicked or when the menu is no longer in focus. | Boolean |
Events | ||||||||
On Load: |
| |||||||
On Item Click: |
| |||||||
On Show: |
| |||||||
On Close: |
|
Extends:
Methods:
Inherited
addClass(name, [replaced])
Add/replace CSS class(es) for this control
Name | Type | Default | Description |
name | {string} | CSS class name(s) to add to the control. Separate class names by a space if more than one class. | |
replaced | {string} | CSS class name(s) to be replaced by the first argument. Separate class names by a space if more than one class. |
Example
Button.addClass("green"); |
addMenuItem(item)
Add menu item to end of item list
JSON Structure of menu items | ||
{ command : string itemType : "L"=Label | "S"=Seperator | "H"=Section Header icon : string iconText : string badgeShape : "N"=None | "S"=Square | "R"=Rounded badgeColor : "D"=Default | "P"=Primary | "I"=Info | "S"=Success | "W"=Warning | "G"=Danger badgeText : string } |
Name | Type | Default | Description |
item | {MenuItem} | Item to set in control (see method description for object structure) |
Inherited
getData()
Returns:
{Object}
Retrieve bound data associated this view/control. Only works for views/controls with bound data.
Example
var dec1 = MyDecimal.getData(); |
getLabel()
Returns:
{string}
Get label associated with control
getLabelPlacement()
Returns:
{string}
Get label placement for control
getLabelWidth()
Returns:
{string}
Get label width of PopupMenu control (e.g. 50px, 20%, 2em - omitting the unit assumes px)
getMenuItem(index)
Returns:
{MenuItem}
JSON Structure of menu items
{
command : string
itemType : "L"=Label | "S"=Seperator | "H"=Section Header
icon : string
iconText : string
badgeShape : "N"=None | "S"=Square | "R"=Rounded
badgeColor : "D"=Default | "P"=Primary | "I"=Info | "S"=Success | "W"=Warning | "G"=Danger
badgeText : string
}
Get menu item at specified index.
Name | Type | Default | Description |
index | {any} | when numeric this is the Index of menu item to get, when a string it is the Command associated with the menu item to be returned |
getMenuItemCount()
Returns:
{integer}
Get number of items in menu
getMenuItemIndex(when)
Get the index of the specified menu item or -1 if the menuItem cannot be located.
Name | Type | Default | Description |
when | {any} | a string it is the Command associated with the menu item whose index is to be returned, when an object it is the menuitem whose index is to be returned |
getMenuItems()
Returns:
{MenuItem[]}
JSON Structure of menu items
{
command : string
itemType : "L"=Label | "S"=Seperator | "H"=Section Header
icon : string
iconText : string
badgeShape : "N"=None | "S"=Square | "R"=Rounded
badgeColor : "D"=Default | "P"=Primary | "I"=Info | "S"=Success | "W"=Warning | "G"=Danger
badgeText : string
}
null
getType()
Returns:
{string}
Get descriptive string representing the type of control
Inherited
hide(collapseFlag)
Hide this view/control
Name | Type | Default | Description |
collapseFlag | {boolean} | Set to true to collapse the view (equivalent to a view setting of "NONE") |
Example
MyView.hide(); |
Inherited
isBound()
Returns:
{boolean}
Indicates bound status of control.
Inherited
isEnabled()
Returns:
{boolean}
Checks if the view is enabled or not
Example
var enabled = MyView.isEnabled(); |
Inherited
isLabelVisible()
Returns:
{boolean}
Checks if control label is visible
Example
var labelVisible = MyView.isLabelVisible(); |
isMenuVisible()
Returns:
{boolean}
Get the visibility of the menu
Inherited
isValid()
Returns:
{boolean}
Returns the valid status as last set by the setValid() method.
Example
var valid = MyView.isValid(); |
Inherited
isVisible()
Returns:
{boolean}
Checks whether or not view is visible
Example
var visible = MyView.isVisible(); |
Inherited
propagateUpValueChange(event)
Returns:
{boolean}
Propagates value change of control up through parent views
Name | Type | Default | Description |
event | {Event} | Value change event (usually an onchange event) |
Example
MyView.propagateUp(event); |
Inherited
recalculate()
Only for formula-enabled views!
Explicitly triggers the re-evaluation of the formula
for this view (if a formula has been specified). If the view is not formula-enabled,
Explicitly triggers the re-evaluation of the formula
for this view (if a formula has been specified). If the view is not formula-enabled,
recalculate()
does nothing.Example
Text1.recalculate();
//If the formula for Text1 is: new Date().toString(), Text1 is updated to the current date/time |
removeAllMenuItems()
Removes all menu items
removeMenuItem(index)
Remove menu item at specified index
Name | Type | Default | Description |
index | {integer} | Index of item to remove |
Inherited
setEnabled(enabled, required)
Enable/disable this view/control
Name | Type | Default | Description |
enabled | {boolean} | Enabled/read-only flag (true to enable view, false to disable/make read-only) | |
required | {boolean} | Enable/disable required field flag for control |
Example
MyView.setEnabled(false); //Make MyView read-only |
setHorizontalAlignment(alignment)
Set the horizontal alignment of the menu. NOTE: to avoid ambiguity always set the size style using "L"|"R"
Name | Type | Default | Description |
alignment | {string} | "LEFT"|"L"=Left | "RIGHT"|"R"=Right |
setLabel(label)
Set label for control
Name | Type | Default | Description |
label | {string} | Label to set |
setLabelPlacement(placement)
Set label placement for control
Name | Type | Default | Description |
placement | {string} | "T","TOP"=Top | "L","LEFT"=Left |
Inherited
setLabelVisible(visible)
Show/hide the label of this view/control
Name | Type | Default | Description |
visible | {boolean} | Label visibility flag (true to show view label, false to hide) |
Example
MyView.setLabelVisible(false); |
setLabelWidth(labelWidth)
Set label width of PopupMenu control (e.g. 50px, 20%, 2em - omitting the unit assumes px)
Name | Type | Default | Description |
labelWidth | {string} | Control's label width |
setMenuItem(items)
Set menu items to display in the popup menu
Name | Type | Default | Description |
items | {MenuItem[]} | Items to set in control |
setMenuItemBadgeText(text, index)
Set badge text for an item
Name | Type | Default | Description |
text | {string} | Badge text to set | |
index | {integer} | Index of item badge text is being set for |
setMenuItemIcon(icon, index)
Set badge text for an item
Name | Type | Default | Description |
icon | {string} | See {@link http://fontawesome.io/icons Font Awesome} for a comprehensive list of icons. Refer to the knowledge center for the latest Font Awesome version. | |
index | {integer} | Index of item icon is being set for |
setMenuVisible(vis)
Set menu visibility. This is the only way to change the visibility of the menu. It will not pop up just by clicking on controls inside of it
Name | Type | Default | Description |
vis | {boolean} | Set to true to make the menu visible |
setTargetElement(element)
Aligns the popup menu relative to the specified DOM element
Name | Type | Default | Description |
element | {object} | The DOM element relative to which the popup menu should open |
Inherited
setValid(valid, errorText)
Flag this view/control as valid or invalid
Name | Type | Default | Description |
valid | {boolean} | Valid/invalid flag (true to set view valid, false to make it invalid - which typically shows the view with "invalid" styling and indicator) | |
errorText | {string} | Validation error text to show on the invalid-styled view |
Example
MyView.setValid(false, "Please fix your data entry"); //Make MyView invalid |
setVerticalAlignment(alignment)
Set the vertical alignment of the menu. NOTE: to avoid ambiguity always set the size style using "T"|"B"
Name | Type | Default | Description |
alignment | {string} | "TOP"|"T"=Top | "BOTTOM"|"B"=Bottom |
Inherited
setViewData(data, createPseudoBinding)
Set/update bound data associated this view/control. Only works for views/controls with bound data.
Note: Should only be used with simple type bindings, or complex type bindings with simple type properties.
Should not be used with bindings that have properties that are lists or compext types. For complex types, set bindings using
the
Note: Should only be used with simple type bindings, or complex type bindings with simple type properties.
Should not be used with bindings that have properties that are lists or compext types. For complex types, set bindings using
the
binding.set
pattern detailed in the Knowlege Center section Binding Data and Configuration OptionsName | Type | Default | Description |
data | {Object} | Value of bound data. The type of this parameter must match the type of the bound data. | |
createPseudoBinding | {boolean} | If set to true, creates a pseudo binding if there is no current binding. |
Example
MyView.setViewData("TEST"); //Updates bound data to the string 'TEST' |
Inherited
setVisible(visible, collapse)
Show/hide this view/control
Name | Type | Default | Description |
visible | {boolean} | Visibility flag (true to show view, false to hide) | |
collapse | {boolean} | Set to true to collapse the control space when visible is set to false . |
Examples
MyView.setVisible(false, false); //Equivalent to MyView.hide() |
MyView.setVisible(false, true); // Sets visibility to "None" |
Inherited
show()
Show this view/control
Example
MyView.show(); |
Inherited
triggerFormulaUpdates([phase])
Broadcasts the expression trigger for the specified view
Name | Type | Default | Description |
phase | {int} | bpmext.ui.PHASE_NORMAL | The phase we are currently in |
Example
MyView.triggerFormulaUpdates(); |