public class UiContainer extends ParentUiElement implements com.badlogic.gdx.InputProcessor
update(float)
,
interpolate(float)
and render(Graphics)
must be called by
your GameContainer
asyncAddQueue, asyncRemoveAll, asyncRemoveQueue, children, renderNode
Constructor and Description |
---|
UiContainer(GameContainer gc,
com.badlogic.gdx.assets.AssetManager assetManager)
Constructor
|
UiContainer(int width,
int height,
com.badlogic.gdx.assets.AssetManager assetManager) |
Modifier and Type | Method and Description |
---|---|
void |
addControllerInput(ControllerUiInput<?> input)
Adds a
ControllerUiInput instance to this UiContainer |
void |
addListener(UiContainerListener listener)
Adds a
UiContainerListener to this UiContainer |
void |
addScreenSizeListener(ScreenSizeListener listener)
Adds a
ScreenSizeListener to listen for ScreenSize change |
void |
attach(ParentRenderNode<?,?> parentRenderNode)
Attaches a
RenderNode for this element to a parent
RenderNode |
boolean |
buttonDown(ControllerUiInput<?> controllerUiInput,
ControllerButton button) |
boolean |
buttonUp(ControllerUiInput<?> controllerUiInput,
ControllerButton button) |
void |
clearActiveNavigation()
Clears the current
Navigatable being navigated |
protected ParentRenderNode<?,?> |
createRenderNode(ParentRenderNode<?,?> parent)
Creates the
ParentRenderNode for this UiElement |
void |
detach(ParentRenderNode<?,?> parentRenderNode)
Detaches this element's
RenderNode from a parent
RenderNode |
void |
dispose() |
Navigatable |
getActiveNavigation()
Returns the currently active
Navigatable |
static Visibility |
getDefaultVisibility()
Returns the default
Visibility for newly created
UiElement objects |
int |
getHeight()
Returns the height of the
UiContainer |
ControllerType |
getLastControllerType()
Returns the last
ControllerType used on the UiContainer |
InputSource |
getLastInputSource()
Returns the last
InputSource used on the UiContainer |
float |
getScaleX()
Returns the configured
Graphics scaling during rendering |
float |
getScaleY()
Returns the configured
Graphics scaling during rendering |
ScreenSizeScaleMode |
getScreenSizeScaleMode()
Returns the scaling mode used for
ScreenSize values |
UiTheme |
getTheme()
Returns the
UiTheme currently applied to this UiContainer |
int |
getWidth()
Returns the width of the
UiContainer |
void |
interpolate(float alpha)
Interpolates all
UiElement s |
boolean |
isThemeApplied()
Returns if a
UiTheme has been applied to thi UiContainer |
boolean |
keyDown(int keycode) |
boolean |
keyTyped(char character) |
boolean |
keyUp(int keycode) |
boolean |
mouseMoved(int screenX,
int screenY) |
static void |
relayoutAllUiContainers() |
void |
removeControllerInput(ControllerUiInput<?> input)
Removes a
ControllerUiInput instance from this
UiContainer |
void |
removeListener(UiContainerListener listener)
Removes a
UiContainerListener from this UiContainer |
void |
removeScreenSizeListener(ScreenSizeListener listener)
Removes a
ScreenSizeListener from this UiContainer |
void |
render(Graphics g)
Renders all visible
UiElement s |
boolean |
scrolled(int amount) |
void |
set(int width,
int height)
Sets the width and height of the
UiContainer |
void |
setActionKey(int actionKey)
Sets the key used for triggering actions (i.e.
|
void |
setActiveNavigation(Navigatable activeNavigation)
Sets the current
Navigatable for UI navigation |
static void |
setDefaultVisibility(Visibility defaultVisibility)
Sets the default
Visibility for newly created UiElement
objects |
void |
setKeyboardNavigationEnabled(boolean keyboardNavigationEnabled)
Sets if desktop-based games uses keyboard navigation instead of mouse
navigation.
|
void |
setLastControllerType(ControllerType lastControllerType)
Sets the last
ControllerType used on the UiContainer |
void |
setLastInputSource(InputSource lastInputSource)
Sets the last
InputSource used on the UiContainer |
void |
setScale(float scaleX,
float scaleY)
Sets the
Graphics scaling during rendering. |
void |
setScreenSizeScaleMode(ScreenSizeScaleMode screenSizeScaleMode)
Sets the scaling mode used for
ScreenSize values |
void |
setStyleId(java.lang.String styleId)
Sets the style if for this
UiElement |
void |
setTheme(UiTheme theme)
Sets the current
UiTheme for this UiContainer |
void |
setVisibility(Visibility visibility)
Sets the current
Visibility of this UiElement |
void |
setZIndex(int zIndex)
Sets the Z index of this
UiElement . |
boolean |
touchDown(int screenX,
int screenY,
int pointer,
int button) |
boolean |
touchDragged(int screenX,
int screenY,
int pointer) |
boolean |
touchUp(int screenX,
int screenY,
int pointer,
int button) |
void |
update(float delta)
Updates all
UiElement s |
add, add, addAsync, get, getElementById, getFlexDirection, getHorizontalLayout, getTotalChildren, getVerticalLayout, isOverflowClipped, remove, remove, removeAll, removeAllAsync, removeAsync, setFlexDirection, setHorizontalLayout, setOverflowClipped, setVerticalLayout, syncWithRenderNode
addEffectListener, addHoverListener, applyEffect, defer, defer, equals, getId, getStyleId, getVisibility, getZIndex, hashCode, isDebugEnabled, notifyEffectListenersOnFinished, notifyHoverListenersOnBeginHover, notifyHoverListenersOnEndHover, processDeferred, removeEffectListener, removeHoverListener, setDebugEnabled
public UiContainer(GameContainer gc, com.badlogic.gdx.assets.AssetManager assetManager)
gc
- Your game's GameContainer
assetManager
- The AssetManager
for the gamepublic UiContainer(int width, int height, com.badlogic.gdx.assets.AssetManager assetManager)
public static void relayoutAllUiContainers()
public void dispose()
protected ParentRenderNode<?,?> createRenderNode(ParentRenderNode<?,?> parent)
ParentUiElement
ParentRenderNode
for this UiElement
createRenderNode
in class ParentUiElement
parent
- The parent of this nodeParentRenderNode
public void update(float delta)
UiElement
sdelta
- The time since the last frame (in seconds)public void interpolate(float alpha)
UiElement
salpha
- The interpolation alphapublic void render(Graphics g)
UiElement
sg
- The Graphics
contextpublic void attach(ParentRenderNode<?,?> parentRenderNode)
UiElement
RenderNode
for this element to a parent
RenderNode
attach
in class ParentUiElement
parentRenderNode
- The parent RenderNode
to attach topublic void detach(ParentRenderNode<?,?> parentRenderNode)
UiElement
RenderNode
from a parent
RenderNode
detach
in class ParentUiElement
parentRenderNode
- The parent RenderNode
to detach frompublic void setVisibility(Visibility visibility)
UiElement
Visibility
of this UiElement
setVisibility
in class ParentUiElement
visibility
- The Visibility
to setpublic void addScreenSizeListener(ScreenSizeListener listener)
ScreenSizeListener
to listen for ScreenSize
changelistener
- The ScreenSizeListener
to addpublic void removeScreenSizeListener(ScreenSizeListener listener)
ScreenSizeListener
from this UiContainer
listener
- The ScreenSizeListener
to removepublic boolean isThemeApplied()
UiTheme
has been applied to thi UiContainer
UiTheme
has been appliedpublic UiTheme getTheme()
UiTheme
currently applied to this UiContainer
UiTheme
has been appliedpublic void setTheme(UiTheme theme)
UiTheme
for this UiContainer
theme
- The UiTheme
to applypublic void setStyleId(java.lang.String styleId)
UiElement
UiElement
setStyleId
in class ParentUiElement
styleId
- The style id to setpublic boolean touchDown(int screenX, int screenY, int pointer, int button)
touchDown
in interface com.badlogic.gdx.InputProcessor
public boolean touchUp(int screenX, int screenY, int pointer, int button)
touchUp
in interface com.badlogic.gdx.InputProcessor
public boolean touchDragged(int screenX, int screenY, int pointer)
touchDragged
in interface com.badlogic.gdx.InputProcessor
public boolean mouseMoved(int screenX, int screenY)
mouseMoved
in interface com.badlogic.gdx.InputProcessor
public boolean scrolled(int amount)
scrolled
in interface com.badlogic.gdx.InputProcessor
public boolean keyTyped(char character)
keyTyped
in interface com.badlogic.gdx.InputProcessor
public boolean keyDown(int keycode)
keyDown
in interface com.badlogic.gdx.InputProcessor
public boolean keyUp(int keycode)
keyUp
in interface com.badlogic.gdx.InputProcessor
public boolean buttonDown(ControllerUiInput<?> controllerUiInput, ControllerButton button)
public boolean buttonUp(ControllerUiInput<?> controllerUiInput, ControllerButton button)
public void setActiveNavigation(Navigatable activeNavigation)
Navigatable
for UI navigationactiveNavigation
- The current Navigatable
being navigatedpublic void clearActiveNavigation()
Navigatable
being navigatedpublic Navigatable getActiveNavigation()
Navigatable
public int getWidth()
UiContainer
public int getHeight()
UiContainer
public void set(int width, int height)
UiContainer
width
- The width in pixelsheight
- The height in pixelspublic float getScaleX()
Graphics
scaling during renderingpublic float getScaleY()
Graphics
scaling during renderingpublic void setScale(float scaleX, float scaleY)
Graphics
scaling during rendering. Mouse/touch
coordinates will be scaled accordingly.scaleX
- Scaling along the X axisscaleY
- Scaling along the Y axispublic InputSource getLastInputSource()
InputSource
used on the UiContainer
public void setLastInputSource(InputSource lastInputSource)
InputSource
used on the UiContainer
lastInputSource
- The InputSource
last usedpublic ControllerType getLastControllerType()
ControllerType
used on the UiContainer
public void setLastControllerType(ControllerType lastControllerType)
ControllerType
used on the UiContainer
lastControllerType
- The ControllerType
last usedpublic void addControllerInput(ControllerUiInput<?> input)
ControllerUiInput
instance to this UiContainer
input
- The instance to addpublic void removeControllerInput(ControllerUiInput<?> input)
ControllerUiInput
instance from this
UiContainer
input
- The instance to removepublic void setZIndex(int zIndex)
UiElement
UiElement
. Elements will be rendered on
different Z layers in ascending Z order (negatives values first, positive values last)setZIndex
in class ParentUiElement
zIndex
- The Z indexpublic void setActionKey(int actionKey)
actionKey
- The Input.Keys
valuepublic void setKeyboardNavigationEnabled(boolean keyboardNavigationEnabled)
keyboardNavigationEnabled
- True if the desktop-based game should only navigate by
keyboardpublic ScreenSizeScaleMode getScreenSizeScaleMode()
ScreenSize
valuesScreenSizeScaleMode.NO_SCALING
by defaultpublic void setScreenSizeScaleMode(ScreenSizeScaleMode screenSizeScaleMode)
ScreenSize
valuesscreenSizeScaleMode
- The ScreenSizeScaleMode
to setpublic void addListener(UiContainerListener listener)
UiContainerListener
to this UiContainer
listener
- The UiContainerListener
to be notified of eventspublic void removeListener(UiContainerListener listener)
UiContainerListener
from this UiContainer
listener
- The UiContainerListener
to stop receiving eventspublic static Visibility getDefaultVisibility()
Visibility
for newly created
UiElement
objectsVisibility
value. Visibility.HIDDEN
by
defaultpublic static void setDefaultVisibility(Visibility defaultVisibility)
Visibility
for newly created UiElement
objectsdefaultVisibility
- The Visibility
to set as default