Class TElement
java.lang.Object
io.github.thecsdev.tcdcommons.api.client.gui.TElement
- All Implemented Interfaces:
TParentElement
,ITooltipProvider
,IEnableStateProvider
- Direct Known Subclasses:
TBlankElement
,TClickableWidget
,TDemoBackgroundElement
,TMenuPanelSeparator
,TPanelElement
,TProgressBarElement
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic interface
static interface
static interface
static interface
static interface
-
Field Summary
Modifier and TypeFieldDescriptionprotected float
protected int
static final int
AsetPosition(int, int, boolean)
flag containing all flags.static final int
MakessetPosition(int, int, boolean)
invoke theeMoved
event.static final int
MakessetPosition(int, int, boolean)
move thechildren
alongside this element.static final int
MakessetPosition(int, int, boolean)
set the position relative to parent.static final int
MakessetPosition(int, int, boolean)
update the parent's topmostchildren
.static final int
AsetSize(int, int)
flag containing all flags.static final int
MakessetSize(int, int)
invoke theeResized
event.static final int
MakessetSize(int, int)
update the parent's topmostchildren
.protected @Nullable net.minecraft.client.gui.tooltip.Tooltip
protected @Nullable net.minecraft.client.gui.tooltip.TooltipPositioner
protected int
protected int
protected int
protected float
Fields inherited from interface io.github.thecsdev.tcdcommons.api.client.gui.TParentElement
MAX_CHILD_NESTING_DEPTH
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
canBeAddedTo
(TParentElement futureParent) Returns true if thisTElement
is okay with being added to a givenTParentElement
.@Nullable TContextMenuPanel
A utility method that creates and returns a newTContextMenuPanel
instance for thisTElement
.final float
getAlpha()
final TElementList
Returns theTElementList
containing the list of all children for thisTElement
.boolean
Returns true if thisObject
is enabled.final int
final net.minecraft.client.render.item.ItemRenderer
final @Nullable TParentElement
Returns the parentTParentElement
of thisTElement
.final @Nullable TElement
final @Nullable TScreen
IfgetParent()
is aTScreen
, thatTScreen
will be returned.
If however,getParent()
is aTElement
, then thatTElement
'sTScreen
reference will be returned.
This allows nested children to access their rootTScreen
parent through theirTElement
parent.final net.minecraft.client.font.TextRenderer
final @Nullable net.minecraft.client.gui.tooltip.Tooltip
final net.minecraft.client.gui.tooltip.TooltipPositioner
final int
getWidth()
final int
getX()
final int
getY()
final float
Returns the sum ofgetZOffset()
for thisTElement
, while also taking into account anyTParentElement
s.final float
boolean
input
(TInputContext inputContext) An input handler that handles inputs on theTInputContext.InputDiscoveryPhase.MAIN
input phase.final boolean
final boolean
Returnstrue
ifTParentElement.getEnabled()
returnstrue
, andTParentElement.getParent()
'sTParentElement.isEnabled()
also returnstrue
.final boolean
boolean
final boolean
final boolean
boolean
final boolean
final boolean
final void
move
(int deltaX, int deltaY) final void
moveChildren
(int dX, int dY) final @Nullable TElement
next()
Returns theTElement
that comes after this one in the hierarchy of parent/child relations.void
postRender
(TDrawContext pencil) final @Nullable TElement
previous()
Returns theTElement
that comes before this one in the hierarchy of parent/child relations.abstract void
render
(TDrawContext pencil) Renders this GUI element on the screen.final void
setAlpha
(float alpha) final void
setPosition
(int x, int y, boolean relativeToParent) void
setPosition
(int x, int y, int flags) final void
setSize
(int width, int height) void
setSize
(int width, int height, int flags) void
setTooltip
(@Nullable net.minecraft.client.gui.tooltip.Tooltip tooltip) void
setZOffset
(float zOffset) void
tick()
Used for periodic updates for thisTElement
.toString()
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface io.github.thecsdev.tcdcommons.api.client.gui.TParentElement
addChild, addChild, clearChildren, findChild, findLastChild, findParent, findParentTElement, forEachChild, getEndX, getEndY, input, removeChild, removeChild
-
Field Details
-
SP_RELATIVE
public static final int SP_RELATIVEMakessetPosition(int, int, boolean)
set the position relative to parent.- See Also:
-
SP_MOVE_CHILDREN
public static final int SP_MOVE_CHILDRENMakessetPosition(int, int, boolean)
move thechildren
alongside this element.- See Also:
-
SP_UPDATE_TOPMOST
public static final int SP_UPDATE_TOPMOSTMakessetPosition(int, int, boolean)
update the parent's topmostchildren
.- See Also:
-
SP_INVOKE_EVENT
public static final int SP_INVOKE_EVENTMakessetPosition(int, int, boolean)
invoke theeMoved
event.- See Also:
-
SP_ALL
public static final int SP_ALLAsetPosition(int, int, boolean)
flag containing all flags.- See Also:
-
SS_UPDATE_TOPMOST
public static final int SS_UPDATE_TOPMOSTMakessetSize(int, int)
update the parent's topmostchildren
.- See Also:
-
SS_INVOKE_EVENT
public static final int SS_INVOKE_EVENTMakessetSize(int, int)
invoke theeResized
event.- See Also:
-
SS_ALL
public static final int SS_ALLAsetSize(int, int)
flag containing all flags.- See Also:
-
x
protected int x -
y
protected int y -
width
protected int width -
height
protected int height -
alpha
protected float alpha -
zOffset
protected float zOffset -
tooltip
@Nullable protected @Nullable net.minecraft.client.gui.tooltip.Tooltip tooltip -
tooltipPositioner
@Nullable protected @Nullable net.minecraft.client.gui.tooltip.TooltipPositioner tooltipPositioner -
eMoved
-
eResized
-
eChildAdded
-
eChildRemoved
-
eParentChanged
-
eContextMenu
-
-
Constructor Details
-
TElement
public TElement(int x, int y, int width, int height)
-
-
Method Details
-
getChildren
Returns theTElementList
containing the list of all children for thisTElement
.- Specified by:
getChildren
in interfaceTParentElement
-
getParent
Returns the parentTParentElement
of thisTElement
.- Specified by:
getParent
in interfaceTParentElement
-
getParentTElement
IfgetParent()
is aTElement
, theTParentElement
will be returned as aTElement
. Null is returned otherwise. -
getParentTScreen
IfgetParent()
is aTScreen
, thatTScreen
will be returned.
If however,getParent()
is aTElement
, then thatTElement
'sTScreen
reference will be returned.
This allows nested children to access their rootTScreen
parent through theirTElement
parent. -
getX
public final int getX()- Specified by:
getX
in interfaceTParentElement
-
getY
public final int getY()- Specified by:
getY
in interfaceTParentElement
-
getWidth
public final int getWidth()- Specified by:
getWidth
in interfaceTParentElement
-
getHeight
public final int getHeight()- Specified by:
getHeight
in interfaceTParentElement
-
move
public final void move(int deltaX, int deltaY) -
moveChildren
public final void moveChildren(int dX, int dY) -
setPosition
public final void setPosition(int x, int y, boolean relativeToParent) -
setPosition
public void setPosition(int x, int y, int flags) -
setSize
public final void setSize(int width, int height) -
setSize
public void setSize(int width, int height, int flags) -
getAlpha
public final float getAlpha() -
setAlpha
public final void setAlpha(float alpha) -
isVisible
public final boolean isVisible() -
isEnabledAndVisible
public final boolean isEnabledAndVisible() -
getTextRenderer
public final net.minecraft.client.font.TextRenderer getTextRenderer() -
getItemRenderer
public final net.minecraft.client.render.item.ItemRenderer getItemRenderer() -
getZIndex
public final float getZIndex()Returns the sum ofgetZOffset()
for thisTElement
, while also taking into account anyTParentElement
s.Please use
setZOffset(float)
to modify the z-offset for thisTElement
.- Specified by:
getZIndex
in interfaceTParentElement
- See Also:
-
getZOffset
public final float getZOffset() -
setZOffset
public void setZOffset(float zOffset) -
isEnabled
public final boolean isEnabled()Description copied from interface:TParentElement
Returnstrue
ifTParentElement.getEnabled()
returnstrue
, andTParentElement.getParent()
'sTParentElement.isEnabled()
also returnstrue
.In other words, this will return
true
if both this element and all of itsTParentElement
s are enabled.- Specified by:
isEnabled
in interfaceTParentElement
-
getEnabled
public boolean getEnabled()Description copied from interface:IEnableStateProvider
Returns true if thisObject
is enabled.- Specified by:
getEnabled
in interfaceIEnableStateProvider
- Specified by:
getEnabled
in interfaceTParentElement
-
isFocusable
public boolean isFocusable() -
isHoverable
public boolean isHoverable() -
isHovered
public final boolean isHovered() -
isFocused
public final boolean isFocused() -
isDragging
public final boolean isDragging() -
isFocusedOrHovered
public final boolean isFocusedOrHovered() -
createContextMenu
A utility method that creates and returns a newTContextMenuPanel
instance for thisTElement
. Use this to create your own custom context menus for thisTElement
.- Returns:
- A
TContextMenuPanel
for thisTElement
, ornull
if thisTElement
does not support context menus.
-
tick
public void tick()Used for periodic updates for thisTElement
. -
render
Description copied from interface:TParentElement
Renders this GUI element on the screen.- Specified by:
render
in interfaceTParentElement
- Parameters:
pencil
- TheTDrawContext
.
-
postRender
-
input
Description copied from interface:TParentElement
An input handler that handles inputs on theTInputContext.InputDiscoveryPhase.MAIN
input phase.- Specified by:
input
in interfaceTParentElement
- Parameters:
inputContext
- TheTInputContext
containing information about a given input.- See Also:
-
getTooltip
@Nullable public final @Nullable net.minecraft.client.gui.tooltip.Tooltip getTooltip()- Specified by:
getTooltip
in interfaceITooltipProvider
-
setTooltip
public void setTooltip(@Nullable @Nullable net.minecraft.client.gui.tooltip.Tooltip tooltip) -
getTooltipPositioner
public final net.minecraft.client.gui.tooltip.TooltipPositioner getTooltipPositioner() -
previous
Returns theTElement
that comes before this one in the hierarchy of parent/child relations.Primarily used for "tab navigation".
-
next
Returns theTElement
that comes after this one in the hierarchy of parent/child relations.Primarily used for "tab navigation".
-
toString
-
canBeAddedTo
Returns true if thisTElement
is okay with being added to a givenTParentElement
.- Parameters:
futureParent
- TheTParentElement
that is being checked.
-