Package com.github.tommyettinger.textra
Class TextraWindow
java.lang.Object
com.badlogic.gdx.scenes.scene2d.Actor
com.badlogic.gdx.scenes.scene2d.Group
com.badlogic.gdx.scenes.scene2d.ui.WidgetGroup
com.badlogic.gdx.scenes.scene2d.ui.Table
com.github.tommyettinger.textra.TextraWindow
- All Implemented Interfaces:
com.badlogic.gdx.scenes.scene2d.utils.Cullable
,com.badlogic.gdx.scenes.scene2d.utils.Layout
- Direct Known Subclasses:
TextraDialog
,TypingWindow
public class TextraWindow
extends com.badlogic.gdx.scenes.scene2d.ui.Table
A table that can be dragged and act as a modal window. The top padding is used as the window's title height.
The preferred size of a window is the preferred size of the title text and the children as laid out by the table. After adding
children to the window, it can be convenient to call WidgetGroup.pack()
to size the window to the size of the children.
-
Nested Class Summary
Nested classes/interfaces inherited from class com.badlogic.gdx.scenes.scene2d.ui.Table
com.badlogic.gdx.scenes.scene2d.ui.Table.Debug, com.badlogic.gdx.scenes.scene2d.ui.Table.DebugRect
-
Field Summary
Modifier and TypeFieldDescriptionprotected boolean
protected boolean
protected int
protected Font
protected TextraLabel
protected com.badlogic.gdx.scenes.scene2d.ui.Table
Fields inherited from class com.badlogic.gdx.scenes.scene2d.ui.Table
backgroundBottom, backgroundLeft, backgroundRight, backgroundTop, debugActorColor, debugCellColor, debugTableColor
-
Constructor Summary
ConstructorDescriptionTextraWindow
(String title, com.badlogic.gdx.scenes.scene2d.ui.Skin skin) TextraWindow
(String title, com.badlogic.gdx.scenes.scene2d.ui.Skin skin, boolean scaleTitleFont) TextraWindow
(String title, com.badlogic.gdx.scenes.scene2d.ui.Skin skin, Font replacementFont) TextraWindow
(String title, com.badlogic.gdx.scenes.scene2d.ui.Skin skin, Font replacementFont, boolean scaleTitleFont) TextraWindow
(String title, com.badlogic.gdx.scenes.scene2d.ui.Skin skin, String styleName) TextraWindow
(String title, com.badlogic.gdx.scenes.scene2d.ui.Skin skin, String styleName, boolean scaleTitleFont) TextraWindow
(String title, com.badlogic.gdx.scenes.scene2d.ui.Skin skin, String styleName, Font replacementFont) TextraWindow
(String title, com.badlogic.gdx.scenes.scene2d.ui.Skin skin, String styleName, Font replacementFont, boolean scaleTitleFont) TextraWindow
(String title, Styles.WindowStyle style) TextraWindow
(String title, Styles.WindowStyle style, boolean scaleTitleFont) TextraWindow
(String title, Styles.WindowStyle style, Font replacementFont) TextraWindow
(String title, Styles.WindowStyle style, Font replacementFont, boolean scaleTitleFont) -
Method Summary
Modifier and TypeMethodDescriptionvoid
draw
(com.badlogic.gdx.graphics.g2d.Batch batch, float parentAlpha) protected void
drawBackground
(com.badlogic.gdx.graphics.g2d.Batch batch, float parentAlpha, float x, float y) protected void
drawStageBackground
(com.badlogic.gdx.graphics.g2d.Batch batch, float parentAlpha, float x, float y, float width, float height) float
int
getStyle()
Returns the window's style.com.badlogic.gdx.scenes.scene2d.ui.Table
com.badlogic.gdx.scenes.scene2d.Actor
hit
(float x, float y, boolean touchable) boolean
boolean
isModal()
boolean
boolean
void
protected TextraLabel
protected TextraLabel
newLabel
(String text, Styles.LabelStyle style) void
setKeepWithinStage
(boolean keepWithinStage) void
setModal
(boolean isModal) void
setMovable
(boolean isMovable) void
setResizable
(boolean isResizable) void
setResizeBorder
(int resizeBorder) void
setStyle
(Styles.WindowStyle style) void
setStyle
(Styles.WindowStyle style, boolean ignored) void
setStyle
(Styles.WindowStyle style, Font font) void
Does nothing unless the titleLabel used here is a TypingLabel; then, this will skip text progression ahead.Methods inherited from class com.badlogic.gdx.scenes.scene2d.ui.Table
add, add, add, add, add, add, add, align, background, background, bottom, center, clearChildren, clip, clip, columnDefaults, debug, debug, debugActor, debugAll, debugCell, debugTable, defaults, drawDebug, drawDebugBounds, getAlign, getBackground, getCell, getCells, getClip, getColumnMinWidth, getColumnPrefWidth, getColumns, getColumnWidth, getMinHeight, getMinWidth, getPadBottom, getPadBottomValue, getPadLeft, getPadLeftValue, getPadRight, getPadRightValue, getPadTop, getPadTopValue, getPadX, getPadY, getPrefHeight, getRow, getRowHeight, getRowMinHeight, getRowPrefHeight, getRows, getSkin, getTableDebug, invalidate, layout, left, pad, pad, pad, pad, padBottom, padBottom, padLeft, padLeft, padRight, padRight, padTop, padTop, removeActor, removeActor, removeActorAt, reset, right, row, setBackground, setBackground, setClip, setDebug, setRound, setSkin, stack, top
Methods inherited from class com.badlogic.gdx.scenes.scene2d.ui.WidgetGroup
childrenChanged, getMaxHeight, getMaxWidth, invalidateHierarchy, needsLayout, pack, setFillParent, setLayoutEnabled, sizeChanged, validate
Methods inherited from class com.badlogic.gdx.scenes.scene2d.Group
act, addActor, addActorAfter, addActorAt, addActorBefore, applyTransform, applyTransform, clear, clear, clearChildren, computeTransform, drawChildren, drawDebugChildren, findActor, getChild, getChildren, getCullingArea, hasChildren, isTransform, localToDescendantCoordinates, resetTransform, resetTransform, setCullingArea, setDebug, setStage, setTransform, swapActor, swapActor, toString
Methods inherited from class com.badlogic.gdx.scenes.scene2d.Actor
addAction, addCaptureListener, addListener, ancestorsVisible, ascendantsVisible, clearActions, clearListeners, clipBegin, clipBegin, clipEnd, fire, firstAscendant, getActions, getCaptureListeners, getColor, getDebug, getHeight, getListeners, getName, getOriginX, getOriginY, getParent, getRight, getRotation, getScaleX, getScaleY, getStage, getTop, getTouchable, getUserObject, getWidth, getX, getX, getY, getY, getZIndex, hasActions, hasKeyboardFocus, hasParent, hasScrollFocus, isAscendantOf, isDescendantOf, isTouchable, isTouchFocusListener, isTouchFocusTarget, isVisible, localToActorCoordinates, localToAscendantCoordinates, localToParentCoordinates, localToScreenCoordinates, localToStageCoordinates, moveBy, notify, parentToLocalCoordinates, positionChanged, remove, removeAction, removeCaptureListener, removeListener, rotateBy, rotationChanged, scaleBy, scaleBy, scaleChanged, screenToLocalCoordinates, setBounds, setColor, setColor, setHeight, setName, setOrigin, setOrigin, setOriginX, setOriginY, setParent, setPosition, setPosition, setRotation, setScale, setScale, setScaleX, setScaleY, setSize, setTouchable, setUserObject, setVisible, setWidth, setX, setX, setY, setY, setZIndex, sizeBy, sizeBy, stageToLocalCoordinates, toBack, toFront
-
Field Details
-
titleLabel
-
titleTable
protected com.badlogic.gdx.scenes.scene2d.ui.Table titleTable -
drawTitleTable
protected boolean drawTitleTable -
edge
protected int edge -
dragging
protected boolean dragging -
font
-
-
Constructor Details
-
TextraWindow
-
TextraWindow
public TextraWindow(String title, com.badlogic.gdx.scenes.scene2d.ui.Skin skin, boolean scaleTitleFont) -
TextraWindow
-
TextraWindow
-
TextraWindow
-
TextraWindow
-
TextraWindow
-
TextraWindow
-
TextraWindow
-
TextraWindow
-
TextraWindow
-
TextraWindow
public TextraWindow(String title, Styles.WindowStyle style, Font replacementFont, boolean scaleTitleFont) - Parameters:
title
- the text that will go in the title barstyle
- a WindowStyle typically pulled from a SkinreplacementFont
- a Font that will be used for at least the title text, in place of the style's fontscaleTitleFont
- if true, this will attempt to change replacementFont to fit the title bar; you may want to copy replacementFont if you need it unscaled elsewhere
-
-
Method Details
-
newLabel
-
newLabel
-
setStyle
-
setStyle
-
setStyle
-
getStyle
Returns the window's style. Modifying the returned style may not have an effect untilsetStyle(WindowStyle)
is called. -
keepWithinStage
public void keepWithinStage() -
draw
public void draw(com.badlogic.gdx.graphics.g2d.Batch batch, float parentAlpha) - Overrides:
draw
in classcom.badlogic.gdx.scenes.scene2d.ui.Table
-
drawStageBackground
protected void drawStageBackground(com.badlogic.gdx.graphics.g2d.Batch batch, float parentAlpha, float x, float y, float width, float height) -
drawBackground
protected void drawBackground(com.badlogic.gdx.graphics.g2d.Batch batch, float parentAlpha, float x, float y) - Overrides:
drawBackground
in classcom.badlogic.gdx.scenes.scene2d.ui.Table
-
hit
@Null public com.badlogic.gdx.scenes.scene2d.Actor hit(float x, float y, boolean touchable) - Overrides:
hit
in classcom.badlogic.gdx.scenes.scene2d.ui.Table
-
isMovable
public boolean isMovable() -
setMovable
public void setMovable(boolean isMovable) -
isModal
public boolean isModal() -
setModal
public void setModal(boolean isModal) -
setKeepWithinStage
public void setKeepWithinStage(boolean keepWithinStage) -
isResizable
public boolean isResizable() -
setResizable
public void setResizable(boolean isResizable) -
getResizeBorder
public int getResizeBorder() -
setResizeBorder
public void setResizeBorder(int resizeBorder) -
isDragging
public boolean isDragging() -
getPrefWidth
public float getPrefWidth()- Specified by:
getPrefWidth
in interfacecom.badlogic.gdx.scenes.scene2d.utils.Layout
- Overrides:
getPrefWidth
in classcom.badlogic.gdx.scenes.scene2d.ui.Table
-
getTitleTable
public com.badlogic.gdx.scenes.scene2d.ui.Table getTitleTable() -
getTitleLabel
-
skipToTheEnd
public void skipToTheEnd()Does nothing unless the titleLabel used here is a TypingLabel; then, this will skip text progression ahead.
-