Package heronarts.glx.ui.component
Class UIDropMenu
java.lang.Object
heronarts.glx.ui.UIEventHandler
heronarts.glx.ui.UIObject
heronarts.glx.ui.UI2dComponent
heronarts.glx.ui.component.UIParameterComponent
heronarts.glx.ui.component.UIDropMenu
- All Implemented Interfaces:
UIContextActions
,UIControlTarget
,UIFocus
,UIKeyFocus
,UIModulationTarget
,UIMouseFocus
,UITabFocus
,LXLoopTask
,LXParameterListener
- Direct Known Subclasses:
UIViewSelector
public class UIDropMenu
extends UIParameterComponent
implements UIFocus, UIControlTarget, UIModulationTarget, LXParameterListener
-
Nested Class Summary
Nested classes/interfaces inherited from class heronarts.glx.ui.UI2dComponent
UI2dComponent.Scissor, UI2dComponent.Scissored, UI2dComponent.UIDragReorder
Nested classes/interfaces inherited from interface heronarts.glx.ui.UIContextActions
UIContextActions.Action
-
Field Summary
Fields inherited from class heronarts.glx.ui.component.UIParameterComponent
DEFAULT_HEIGHT, useCommandEngine
Fields inherited from class heronarts.glx.ui.UI2dComponent
debug, debugName, height, marginBottom, marginLeft, marginRight, marginTop, redraw, scissor, textAlignHorizontal, textAlignVertical, textOffsetX, textOffsetY, width, x, y
-
Constructor Summary
ConstructorDescriptionUIDropMenu
(float x, float y, float w, float h, DiscreteParameter parameter) UIDropMenu
(float x, float y, float w, DiscreteParameter parameter) UIDropMenu
(float w, float h, DiscreteParameter parameter) UIDropMenu
(float w, DiscreteParameter parameter) -
Method Summary
Modifier and TypeMethodDescriptionvoid
dispose()
Objects are encouraged to override this method providing a helpful String displayed to the user explaining the function of this UI component.protected int
Focus size for hashes drawn on the outline of the object.void
Subclasses should override this method to perform their drawing functions.void
onKeyPressed
(KeyEvent keyEvent, char keyChar, int keyCode) Subclasses override to receive key eventsvoid
onMousePressed
(MouseEvent mouseEvent, float x, float y) Subclasses override to receive mouse eventsvoid
Invoked when the value of a parameter is changed.setDirection
(UIDropMenu.Direction direction) Sets the direction that this drop menu opens, up or downsetEnabled
(boolean enabled) setMenuWidth
(float menuWidth) setOptions
(String[] options) Sets the list of string options to display in the menusetParameter
(DiscreteParameter parameter) Methods inherited from class heronarts.glx.ui.component.UIParameterComponent
getContextActions, getOscAddress, onMouseReleased, setEnableContextActions, setModulationRangeCommand, setNormalizedCommand, setUseCommandEngine
Methods inherited from class heronarts.glx.ui.UI2dComponent
addToContainer, addToContainer, addToContainer, addToContainer, addToContainer, addToContainer, addToContainer, addToContainer, assertValidContainer, clipTextToWidth, clipTextToWidth, contains, dbch, drawBackground, drawBorder, drawFocus, drawFocusCorners, drawFocusCorners, drawParentBackground, getAbsoluteX, getAbsoluteY, getBackgroundColor, getBorderColor, getBorderWeight, getContainer, getDebugClassHierarchy, getDebugClassHierarchy, getFocusColor, getFont, getFontColor, getHeight, getMappableParameter, getNextSibling, getParent, getPrevSibling, getWidth, getX, getY, hasBackground, hasBorder, hasFont, hasFontColor, isMappable, onResize, redraw, removeFromContainer, removeFromContainer, setBackground, setBackgroundColor, setBackgroundColor, setBorder, setBorderColor, setBorderColor, setBorderRounding, setBorderRounding, setBorderWeight, setBottomMargin, setContainerIndex, setContainerPosition, setDebug, setDebug, setDescription, setFocusBackground, setFocusBackgroundColor, setFocusBackgroundColor, setFocusColor, setFocusColor, setFocusCorners, setFont, setFontColor, setFontColor, setFontColor, setHeight, setLeftMargin, setMappable, setMargin, setMargin, setMargin, setPosition, setPosition, setPosition, setPosition, setRightMargin, setSize, setTextAlignment, setTextAlignment, setTextOffset, setTopMargin, setVisible, setWidth, setX, setY, vgRoundedRect, vgRoundedRect, vgRoundedRect
Methods inherited from class heronarts.glx.ui.UIObject
addListener, addListener, addLoopTask, blur, bringToFront, focus, getFocusedChild, getLX, getUI, hasDirectFocus, hasFocus, isVisible, loop, onBlur, onFocus, onUIResize, removeLoopTask, requireUIThread, setConsumeMousePress, setDebugId, toggleVisible, toString
Methods inherited from class heronarts.glx.ui.UIEventHandler
onKeyReleased, onMouseDragged, onMouseMoved, onMouseOut, onMouseOver, onMouseScroll
-
Constructor Details
-
UIDropMenu
-
UIDropMenu
-
UIDropMenu
-
UIDropMenu
-
-
Method Details
-
setMenuWidth
-
getDescription
Description copied from class:UIObject
Objects are encouraged to override this method providing a helpful String displayed to the user explaining the function of this UI component. If no help is available, return null rather than an empty String.- Overrides:
getDescription
in classUIObject
- Returns:
- Helpful contextual string explaining function of this element
-
getParameter
- Specified by:
getParameter
in classUIParameterComponent
-
setEnabled
-
setParameter
-
onParameterChanged
Description copied from interface:LXParameterListener
Invoked when the value of a parameter is changed.- Specified by:
onParameterChanged
in interfaceLXParameterListener
- Parameters:
p
- The parameter that has changed its value
-
setDirection
Sets the direction that this drop menu opens, up or down- Parameters:
direction
- Direction menu should open- Returns:
- this
-
setOptions
Sets the list of string options to display in the menu- Parameters:
options
- Options array- Returns:
- this
-
getFocusSize
protected int getFocusSize()Description copied from class:UI2dComponent
Focus size for hashes drawn on the outline of the object. May be overridden.- Overrides:
getFocusSize
in classUI2dComponent
- Returns:
- Focus hash line size
-
onDraw
Description copied from class:UI2dComponent
Subclasses should override this method to perform their drawing functions.- Overrides:
onDraw
in classUI2dComponent
- Parameters:
ui
- UI contextvg
- Graphics context
-
onMousePressed
Description copied from class:UIEventHandler
Subclasses override to receive mouse events- Overrides:
onMousePressed
in classUIParameterComponent
- Parameters:
mouseEvent
- Mouse eventx
- x-coordinatey
- y-coordinate
-
onKeyPressed
Description copied from class:UIEventHandler
Subclasses override to receive key events- Overrides:
onKeyPressed
in classUIEventHandler
- Parameters:
keyEvent
- Key eventkeyChar
- Key characterkeyCode
- Key code value
-
getControlTarget
- Specified by:
getControlTarget
in interfaceUIControlTarget
-
getModulationTarget
- Specified by:
getModulationTarget
in interfaceUIModulationTarget
-
dispose
public void dispose()
-