new DropDown(dimension, possibleValues, itemRenderer [, themeClass])
Creates an instance of a DropDown
.
Parameters:
Name | Type | Argument | Description |
---|---|---|---|
dimension |
olympe.df.PVector2 | The dimension (w, h) for this DropDown. |
|
possibleValues |
olympe.df.Proxy.<olympe.df.Enumerable.<ValueType>> | olympe.df.Enumerable.<ValueType> | List of values. |
|
itemRenderer |
olympe.ui.std.renderer.ItemRenderer | Renderer to use when displaying the items. |
|
themeClass |
olympe.df.POString | string |
<optional> |
Theme class name. |
Extends
Methods
-
<protected> _appendChild(child, childId, options)
-
Append a child to a layer.
Parameters:
Name Type Argument Description child
olympe.df.Proxy.<olympe.ui.std.DockableElement> | olympe.ui.std.DockableElement childId
string ID of the child (must be unique in this layer)
options
* <repeatable>
Can be used if this method is overridden
- Inherited From:
- Overrides:
-
<protected> _removeAllChildren()
-
- Inherited From:
- Overrides:
-
<protected> _removeChild(childId)
-
Remove a child from this layer.
Parameters:
Name Type Description childId
string ID of the child to remove
- Inherited From:
- Overrides:
-
<abstract> appendChild(child, id, options)
-
Parameters:
Name Type Argument Description child
olympe.df.Proxy.<olympe.ui.std.DockableElement> | olympe.ui.std.DockableElement id
string options
* <repeatable>
- Inherited From:
- Overrides:
Returns:
- Type
- olympe.ui.std.Layer
-
authorizeOverflow()
-
Authorize the children of this layer to overflow the layer's borders
- Inherited From:
- Overrides:
Returns:
this
- Type
- olympe.ui.std.Layer
-
getFocus()
-
Checks whether this
Element
has the focus.Warning: Focus may not be applicable on some elements, depending on the platform.
- Inherited From:
- Overrides:
Returns:
true
if Element has focus.- Type
- olympe.df.POBoolean
-
<protected> getGestureEvent()
-
Gets the gesture event manager attached to this element
- Inherited From:
- Overrides:
Returns:
-
getHeight()
-
Gets the height of this element.
- Inherited From:
- Overrides:
- See:
Returns:
the height of this element.
- Type
- olympe.df.PONumber
-
getHTMLElement()
-
Return the DOM HTMLElement if exists (may be null)
- Inherited From:
- Overrides:
Returns:
- Type
- Element
-
<protected> getMouseEvent()
-
Gets the mouse event manager attached to this element.
- Inherited From:
- Overrides:
Returns:
the mouse event manager.
-
getParent()
-
Gets the parent, or container, of this element.
- Inherited From:
- Overrides:
Returns:
the parent of this element.
-
getPlaceholderLabel()
-
Gets the Label used to display placeholder.
Returns:
- Type
- olympe.ui.std.Label
-
getPosition()
-
Gets the position (x,y) for this element.
- Inherited From:
- Overrides:
Returns:
Position of this element.
- Type
- olympe.df.PVector2
-
getPossibleValues()
-
Gets all the possible values for that DropDown.
Returns:
The values.
- Type
- olympe.df.Enumerable.<ValueType>
-
getSelectedKeyInternal()
-
Gets the current selected key.
Returns:
The key.
- Type
- olympe.df.POString
-
getSelectedValueInternal()
-
Gets the current selected value.
Returns:
The value of the current selection.
- Type
- olympe.df.Proxy.<ValueType>
-
getUIProxyDockableElement()
-
Note: needs to be public because it is called by RootElement !
- Inherited From:
- Overrides:
Returns:
The proxy element from the UI thread
- Type
- olympe.uiapi.std.DockableElement
-
<protected> getUIProxyElement()
-
Returns the native UI element associated with this
Element
.- Inherited From:
- Overrides:
Returns:
The proxy element from the UI thread.
- Type
- olympe.uiapi.std.Element
-
<protected> getUIProxyLayer()
-
- Inherited From:
- Overrides:
Returns:
Proxified UI object Layer
- Type
- olympe.uiapi.std.Layer
-
getWidth()
-
Gets the width of this element.
- Inherited From:
- Overrides:
- See:
Returns:
the width of this element.
- Type
- olympe.df.PONumber
-
getX()
-
Gets the
x
coordinate of the position of this element.- Inherited From:
- Overrides:
- See:
Returns:
the
x
coordinate for this element.- Type
- olympe.df.PONumber
-
getY()
-
Gets the
y
coordinate of the position of this element.- Inherited From:
- Overrides:
- See:
Returns:
the
y
coordinate for this element.- Type
- olympe.df.PONumber
-
hasSelection()
-
Checks whether this DropDown has an entry selected.
Returns:
true
if a selection has been made,false
otherwise.- Type
- olympe.df.POBoolean
-
isHidden()
-
Checks whether this
Element
is hidden.- Inherited From:
- Overrides:
Returns:
true
is this element is hidden.- Type
- olympe.df.POBoolean
-
isListExpanded()
-
Returns true if the dropdown is expanded, i.e. if the selection list is visible
Returns:
- Type
- olympe.df.POBoolean
-
offSelectionChanged(id)
-
Unregisters a callback previously registered by
olympe.ui.std.DropDown#onSelectionChanged
.Parameters:
Name Type Description id
string The ID of the callback.
-
onSelectionChanged(callbackFunc [, id])
-
Registers a callback to be called when the selection changes. The callback will be called with the selected key and value as parameter, IN A CONTEXT corresponding to this pair.
Parameters:
Name Type Argument Description callbackFunc
olympe.ui.std.DropDown.OnSelectionChanged The function to call.
id
string <optional>
The ID for this callback. A unique one will be generated if omitted.
Returns:
The ID of the callback.
- Type
- string
-
refreshSize()
-
Refresh component internal size
- Inherited From:
- Overrides:
-
<abstract> removeChild(id)
-
Parameters:
Name Type Description id
string - Inherited From:
- Overrides:
Returns:
- Type
- olympe.ui.std.Layer
-
removeTooltip()
-
Removes the tooltip from this element.
- Inherited From:
- Overrides:
Returns:
This element.
-
setAccelerated(accelerated)
-
Sets whether this DockableElement movements should be calculated by the GPU.
Note: This function doesn't guarantee that the implementation will support GPU acceleration.
Parameters:
Name Type Description accelerated
olympe.df.POBoolean | olympe.df.Node | boolean true
if this DockableElement movements should be calculated by the GPU.- Inherited From:
- Overrides:
Returns:
This
DockableElement
. -
setArrowIconPaddingRight(padding)
-
Sets the right padding of the arrow icon, wrt the dropdown dimension
Parameters:
Name Type Description padding
olympe.df.PONumber Returns:
this
DropDown
. -
setArrowIconPosition(arrowIconPosition)
-
Sets the position of the arrow icon within the boundaries of the DropDown box.
Parameters:
Name Type Description arrowIconPosition
olympe.df.PVector2 The position (x,y).
Returns:
this
DropDown
. -
setArrowIconSize(arrowIconSize)
-
Sets the size for the arrow icon, or its replacement.
Parameters:
Name Type Description arrowIconSize
olympe.df.PVector2 the size (width, height).
Returns:
this
DropDown
. -
setArrowIconUrl(arrowIconUrl)
-
Sets the icon to use in place of the arrow.
Parameters:
Name Type Description arrowIconUrl
olympe.df.POString The URL for the replacement icon.
Returns:
this
DropDown
. -
setBackgroundColor(color)
-
Sets the background color for this
Element
.Parameters:
Name Type Description color
olympe.df.Proxy | olympe.df.Node | olympe.df.Color The background color.
- Inherited From:
- Overrides:
Returns:
this
Element
. -
setBackgroundImage(url [, sizingMode] [, positioningMode] [, size] [, position])
-
Sets the background image for this
Element
.Notes:
Parameters:
Name Type Argument Default Description url
olympe.df.POString | olympe.df.Node | string URL for the image.
sizingMode
olympe.ui.common.BackgroundImageSize | olympe.df.Proxy | olympe.df.Node <optional>
AUTO The sizing mode for the image.
positioningMode
olympe.ui.common.BackgroundImagePosition | olympe.df.Proxy | olympe.df.Node <optional>
TOPLEFT The positioning mode for this image.
size
olympe.df.Vector2 | olympe.df.Proxy | olympe.df.Node <optional>
Size, in pixel.
position
olympe.df.Vector2 | olympe.df.Proxy | olympe.df.Node <optional>
Position of the image, in pixel. (0,0) if omitted.
- Inherited From:
- Overrides:
Returns:
this
Element
. -
setBackgroundImagePosition(position)
-
Sets the background image position for this
Element
.Parameters:
Name Type Description position
olympe.df.Vector2 | olympe.df.Proxy | olympe.df.Node The position.
- Inherited From:
- Overrides:
Returns:
this
Element
. -
setBackgroundImagePositionMode(positionMode)
-
Sets the position mode for the background image of this
Element
.Parameters:
Name Type Description positionMode
olympe.ui.common.BackgroundImagePosition | olympe.df.Proxy | olympe.df.Node The positioning mode for this image.
- Inherited From:
- Overrides:
Returns:
this
Element
. -
setBackgroundImageSize(size)
-
Sets the background image size for the this
Element
.Parameters:
Name Type Description size
olympe.df.Vector2 | olympe.df.Proxy | olympe.df.Node The image size, in pixels.
- Inherited From:
- Overrides:
Returns:
this
Element
. -
setBackgroundImageSizeMode(sizeMode)
-
Sets the sizing mode for the background image of this
Element
.Parameters:
Name Type Description sizeMode
olympe.ui.common.BackgroundImageSize | olympe.df.Proxy | olympe.df.Node The sizing mode.
- Inherited From:
- Overrides:
Returns:
this
Element
. -
setBackgroundImageSrc(src)
-
Sets the URL (or source) for the background image.
Parameters:
Name Type Description src
olympe.df.POString | olympe.df.Node | string URL for the image.
- Inherited From:
- Overrides:
Returns:
this
Element
. -
setBlur()
-
Removes focus from this Element.
Warnings:
- Focus may not be applicable on some elements, depending on the platform.
- Elements not inside a container (screen, etc.) can't get the focus.
- Inherited From:
- Overrides:
Returns:
this
Element
. -
setBorder(width, color)
-
Sets the border width & color for this element. a width of
0
means no visible border.Parameters:
Name Type Description width
olympe.df.ONumber | number | olympe.df.Node | olympe.df.Proxy the width, in pixels, for the border
color
olympe.df.Color | olympe.df.Node | olympe.df.Proxy the color for the border
- Inherited From:
- Overrides:
Returns:
This
DockableElement
. -
setBorderColor(color)
-
Set the border color on this element.
Parameters:
Name Type Description color
olympe.df.Color | olympe.df.Proxy.<olympe.df.Color> - Inherited From:
- Overrides:
Returns:
-
setBorderWidth(width)
-
Set the border width on this element. a width of
0
means no visible border.Parameters:
Name Type Description width
number | olympe.df.PONumber - Inherited From:
- Overrides:
Returns:
-
setContextMenuEnabled(enabled)
-
Enable/disable context menu on this element.
Parameters:
Name Type Description enabled
boolean true
to enable the context menu,false
to disable it.- Inherited From:
- Overrides:
Returns:
this
Element
. -
setCornerRadius(radius)
-
Sets the rounded corner radius (in pixels) for this element.
Parameters:
Name Type Description radius
olympe.df.PONumber | olympe.df.Node | number Radius in pixels.
- Inherited From:
- Overrides:
Returns:
this
DockableElement
. -
setDimension(dimension)
-
Sets the dimension (width, height) for this element.
Parameters:
Name Type Description dimension
olympe.df.Vector2 | olympe.df.Proxy | olympe.df.Node Dimension of this element.
- Inherited From:
- Overrides:
Returns:
This
DockableElement
. -
setDisplayOnTop(value)
-
Sets the value of the display top boolean, to know wether or not the list should be displayed on top of the dropdown
Parameters:
Name Type Description value
olympe.df.POBoolean Returns:
this
DropDown
. -
setExpanded(expanded)
-
Sets the right padding of the arrow icon, wrt the dropdown dimension
Parameters:
Name Type Description expanded
olympe.df.POBoolean | olympe.df.OBoolean Returns:
this
DropDown
. -
setFocus()
-
Gives the focus to this Element.
Warnings:
- Focus may not be applicable on some elements, depending on the platform.
- Elements not inside a container (screen, etc.) can't get the focus.
- Inherited From:
- Overrides:
Returns:
this
Element
. -
setHidden(hidden)
-
Sets whether this
Element
is hidden or not. A hidden element will not appear on the screen.Parameters:
Name Type Description hidden
olympe.df.POBoolean | boolean | olympe.df.Node true
if content must be hidden,false
otherwise.- Inherited From:
- Overrides:
Returns:
this
Element
. -
setIgnoreUserInteraction( [ignore])
-
Disables mouse events for this element. However, mouse events will target its descendants unless they are manually set to also ignore user interactions.
Parameters:
Name Type Argument Default Description ignore
boolean | olympe.df.POBoolean <optional>
false ignore
true
to make this element ignore mouse events and pass them to its children.- Inherited From:
- Overrides:
Returns:
this
Element
. -
setItemThemeClass(itemThemeClass)
-
Sets the theme class for items in the list.
Parameters:
Name Type Description itemThemeClass
olympe.df.POString | string Theme class name.
Returns:
this
DropDown
. -
setListCornerRadius(radius)
-
Sets the corner radius of the elements list
Parameters:
Name Type Description radius
olympe.df.PONumber Returns:
this
DropDown
. -
setListOffset(offset)
-
Sets the offset, in pixels, to be applied when displaying the dropdown list. Default is (0, 0).
Parameters:
Name Type Description offset
olympe.df.PVector2 The offset (x,y) to apply.
Returns:
this
DropDown
. -
setMouseOverItemThemeClass(mouseOverItemThemeClass)
-
Sets the theme class for the items in the list when mouse are over it.
Parameters:
Name Type Description mouseOverItemThemeClass
olympe.df.POString | string Theme class name.
Returns:
this
DropDown
. -
setOpacity(opacity)
-
Sets the opacity, or alpha channel, for this
Element
. This is a float value between 0 and 1. 0 being transparent and 1 being opaque.Parameters:
Name Type Description opacity
olympe.df.ONumber | number | olympe.df.Proxy | olympe.df.Node the opacity (between 0 and 1).
- Inherited From:
- Overrides:
Returns:
this
Element
. -
setPaddingBottom(paddingBottom)
-
Sets the padding to apply to the bottom of the selected value container (not the list).
Parameters:
Name Type Description paddingBottom
olympe.df.PONumber | number The padding, in pixels, to apply.
Returns:
this
DropDown
. -
setPaddingLeft(paddingLeft)
-
Sets the padding to apply to the left of the selected value container (not the list).
Parameters:
Name Type Description paddingLeft
olympe.df.PONumber | number The padding, in pixels, to apply.
Returns:
this
DropDown
. -
setPaddingRight(paddingRight)
-
Sets the padding to apply to the right of the selected value container (not the list).
Parameters:
Name Type Description paddingRight
olympe.df.PONumber | number The padding, in pixels, to apply.
Returns:
this
DropDown
. -
setPaddingTop(paddingTop)
-
Sets the padding to apply to the top of the selected value container (not the list).
Parameters:
Name Type Description paddingTop
olympe.df.PONumber | number The padding, in pixels, to apply.
Returns:
this
DropDown
. -
setParent(parent)
-
Sets the parent of this element.
Important: This method must be called when this element is added to a container or layout.
Parameters:
Name Type Description parent
olympe.df.Proxy.<olympe.ui.std.Element> | olympe.ui.std.Element The parent for this element.
- Inherited From:
- Overrides:
Returns:
This
DockableElement
. -
setPlaceholder(placeholder)
-
Sets the placeholder text to display in the selection box.
Parameters:
Name Type Description placeholder
olympe.df.POString | string The text to use as a placeholder.
Returns:
this
DropDown
. -
setPlaceholderThemeClass(placeholderThemeClass)
-
Sets the theme class for the place holder item.
Parameters:
Name Type Description placeholderThemeClass
olympe.df.POString | string theme class name.
Returns:
this
DropDown
. -
setPosition(position)
-
Sets the position (x,y) for this Element.
Parameters:
Name Type Description position
olympe.df.Vector2 | olympe.df.Proxy | olympe.df.Node The position of this element.
- Inherited From:
- Overrides:
Returns:
this
DockableElement
. -
setRotationAngle(angle)
-
Sets the rotation angle (in degree) for this element.
Parameters:
Name Type Description angle
olympe.df.ONumber | number | olympe.df.Node | olympe.df.Proxy the angle, in degree.
- Inherited From:
- Overrides:
Returns:
This
DockableElement
. -
setScale(scale)
-
Sets the scaling factor for the width and height of this element.
Parameters:
Name Type Description scale
olympe.df.PVector2 | olympe.df.Node scaling vector (w, h).
- Inherited From:
- Overrides:
Returns:
This
DockableElement
. -
setSelectedKey(key)
-
Sets the selected item by providing its key.
Parameters:
Name Type Description key
olympe.df.POString | string The key.
Returns:
this
DropDown
. -
setSelectedValueThemeClass(selectedValueThemeClass)
-
Sets the theme class for the selected value.
Parameters:
Name Type Description selectedValueThemeClass
olympe.df.POString | string Theme class name.
Returns:
this
DropDown
. -
setShadow( [offset] [, radius] [, spread] [, color] [, inset])
-
Set shadow on this DockableElement. A shadow is defined by its offset, the blur radius, the spread radius (all in pixels) and a base color. A shadow is by default 'external
, but can be made internal by setting the 'inset' parameter to
true`.Parameters:
Name Type Argument Default Description offset
olympe.df.Vector2 | olympe.df.Node | olympe.df.Proxy.<olympe.df.Vector2> <optional>
0 Offset in pixels.
radius
olympe.df.PONumber | olympe.df.Node | number <optional>
0 Blur radius in pixels.
spread
olympe.df.PONumber | olympe.df.Node | number <optional>
0 Spread in pixels.
color
olympe.df.Color | olympe.df.Node | olympe.df.Proxy.<olympe.df.Color> <optional>
'#000000' Shadow color.
inset
olympe.df.POBoolean | olympe.df.Node | boolean <optional>
false true
if the shadow is inset.- Inherited From:
- Overrides:
Returns:
This
DockableElement
. -
setShadowPSStyle(color, angle, distance, spread, size, inset)
-
Set shadow on this DockableElement as done in Photoshop.
Parameters:
Name Type Description color
olympe.df.Color | olympe.df.Node | olympe.df.Proxy.<olympe.df.Color> Shadow Color.
angle
olympe.df.PONumber | olympe.df.Node | number Angle, in radians.
distance
olympe.df.PONumber | olympe.df.Node | number Distance, in pixels.
spread
olympe.df.PONumber | olympe.df.Node | number Spread in pixels.
size
olympe.df.PONumber | olympe.df.Node | number Size, in pixels.
inset
olympe.df.POBoolean | olympe.df.Node | boolean true
if the shadow is inset.- Inherited From:
- Overrides:
Returns:
This
DockableElement
. -
setSpaceArrowSelectedValue(spaceArrowSelectedValue)
-
Sets the space, in pixels, between the arrow icon and the selected value.
Parameters:
Name Type Description spaceArrowSelectedValue
olympe.df.PONumber Space in pixels.
Returns:
this
DropDown
. -
setStyle(style, value)
-
Parameters:
Name Type Description style
string CSS style name
value
string | number CSS style value
- Inherited From:
- Overrides:
Returns:
this
Element
. -
setTabIndex(tabIndex)
-
Sets the tab index to this
Element
. Tab Index defines the tabulation or 'next' order while going through a form.Parameters:
Name Type Description tabIndex
olympe.df.PONumber | olympe.df.ONumber | number | olympe.df.Node The tab index.
- Inherited From:
- Overrides:
Returns:
this
Element
. -
setThemeClass(themeClass)
-
Method to override if this dockable element supports themes.
Parameters:
Name Type Description themeClass
olympe.df.POString | olympe.df.Node | string The theme class.
- Inherited From:
- Overrides:
Returns:
This
DockableElement
. -
setTooltip(text [, options])
-
Assigns a tooltip to that element that will show up when the mouse hovers over it.
Parameters:
Name Type Argument Description text
olympe.df.POString The text of the tooltip.
options
Object <optional>
Various options for displaying the tooltip.
Properties
Name Type Argument Description position
olympe.df.PVector2 <optional>
The absolute position of the tooltip.
background
olympe.df.PColor <optional>
The background color.
foreground
olympe.df.PColor <optional>
The text color.
fontSize
olympe.df.PONumber <optional>
The font size.
borderSize
olympe.df.PONumber <optional>
The size of the border. Default is 1.
borderColor
olympe.df.PColor <optional>
The color of the border. Default is black.
delay
olympe.df.ONumber | number <optional>
The delay, in milliseconds, before showing the tooltip. Default is 500.
startingPos
olympe.df.Vector2 <optional>
The starting position of the mouse. Default is (0,0).
theme
olympe.df.POString <optional>
The theme class to apply to this tooltip.
- Inherited From:
- Overrides:
Returns:
This Element.
-
setUniformScale(scale)
-
Sets the scaling factor for this element.
Parameters:
Name Type Description scale
olympe.df.PONumber | olympe.df.Node | number The scaling factor.
- Inherited From:
- Overrides:
Returns:
This
DockableElement
. -
setZIndex(zIndex)
-
Sets the z-index for this element. This determines how elements are layered when they overlap on the screen. Higher Z-index elements are placed on top of lower Z-index elements.
Parameters:
Name Type Description zIndex
olympe.df.PONumber | olympe.df.Node | number Index of element on z axis.
- Inherited From:
- Overrides:
Returns:
This
DockableElement
.
Type Definitions
-
OnSelectionChanged()
-
olympe.ui.std.DropDown.OnSelectionChanged(key, value)