Module com.googlecode.lanterna
Package com.googlecode.lanterna.gui2
-
Interface Summary Interface Description AsynchronousTextGUIThread Extended interface of TextGUIThread for implementations that uses a separate thread for all GUI event processing and updating.BasePane BasePane is the base container in a Text GUI.BasePaneListener<T extends BasePane> Border Main interface for different border classes, with additional methods to help lanterna figure out the size and offset of components wrapped by borders.Border.BorderRenderer Button.ButtonRenderer Helper interface that doesn't add any new methods but makes coding new button renderers a little bit more clearButton.Listener Listener interface that can be used to catch user events on the buttonCheckBox.Listener Listener interface that can be used to catch user events on the check boxCheckBoxList.Listener Listener interface that can be attached to theCheckBoxList
in order to be notified on user actionsComboBox.Listener Listener interface that can be used to catch user events on the combo boxComponent This is the main interface defining a component in Lanterna, although you will probably not implement this directly but rather extend theAbstractComponent
or another one of the sub-classes instead to avoid implementing most of the methods in this interface.ComponentRenderer<T extends Component> This interface defines a renderer for a component, an external class that does the sizing and rendering.Composite A Composite is a Container that contains only one (or zero) component.Container Container is a component that contains a collection of child components.InputFilter This interface can be used to programmatically intercept input from the user and decide if the input should be passed on to the interactable.Interactable This interface marks a component as able to receive keyboard input from the user.InteractableRenderer<T extends Component & Interactable> Extended interface for component renderers used with interactable components.LayoutData Empty interface to use for values that can be used as a layout meta-data on components.LayoutManager A layout manager is a class that takes an area of usable space and a list of components to fit on that space.RadioBoxList.Listener Listener interface that can be attached to theRadioBoxList
in order to be notified on user actionsTextBox.TextBoxRenderer Helper interface that doesn't add any new methods but makes coding new text box renderers a little bit more clearTextBox.TextChangeListener Listener interface for when theTextBox
content has changed.TextGUI This is the base interface for advanced text GUIs supported in Lanterna.TextGUI.Listener Listener interface for TextGUI, firing on events related to the overall GUITextGUIElement This interface is the base part in the Lanterna Text GUI component hierarchyTextGUIGraphics TextGraphics implementation used by TextGUI when doing any drawing operation.TextGUIThread Class that represents the thread this is expected to run the event/input/update loop for theTextGUI
.TextGUIThread.ExceptionHandler This interface defines an exception handler, that is used for looking at exceptions that occurs during the main event loop of the TextGUIThread.TextGUIThreadFactory Factory class for creatingTextGUIThread
objects.Window Window is a base unit in the TextGUI system, it represents a collection of components grouped together, usually surrounded by a border and a title.WindowBasedTextGUI Extension of the TextGUI interface, this is intended as the base interface for any TextGUI that intends to make use of the Window class.WindowDecorationRenderer Interface that defines a class that draws window decorations, i.e.WindowListener ExtendedBasePaneListener
forWindow
that exposes additional events that are specific to windowsWindowManager Window manager is a class that is plugged in to aWindowBasedTextGUI
to manage the position and placement of windows.WindowPostRenderer Classes implementing this interface can be used along with DefaultWindowManagerTextGUI to put some extra processing after a window has been rendered. -
Class Summary Class Description AbsoluteLayout Layout manager that places components where they are manually specified to be and sizes them to the size they are manually assigned to.AbstractBasePane<T extends BasePane> This abstract implementation ofBasePane
has the common code shared by all different concrete implementations.AbstractBasePane.EmptyMenuBar AbstractBorder Abstract implementation ofBorder
interface that has some of the methods filled out.AbstractComponent<T extends Component> AbstractComponent provides some good default behaviour for aComponent
, all components in Lanterna extends from this class in some way.AbstractComposite<T extends Container> This abstract implementation contains common code for the differentComposite
implementations.AbstractInteractableComponent<T extends AbstractInteractableComponent<T>> Default implementation of Interactable that extends from AbstractComponent.AbstractListBox<V,T extends AbstractListBox<V,T>> Base class for several list box implementations, this will handle things like list of items and the scrollbar.AbstractListBox.DefaultListBoxRenderer<V,T extends AbstractListBox<V,T>> The default renderer forAbstractListBox
and all its subclasses.AbstractListBox.ListItemRenderer<V,T extends AbstractListBox<V,T>> The default list item renderer class, this can be extended and customized it needed.AbstractTextGUI This abstract implementation of TextGUI contains some basic management of the underlying Screen and other common code that can be shared between different implementations.AbstractTextGUIThread Abstract implementation ofTextGUIThread
with common logic for both available concrete implementations.AbstractWindow Abstract Window has most of the code requiring for a window to function, all concrete window implementations extends from this in one way or another.ActionListBox This class is a list box implementation that displays a number of items that has actions associated with them.AnimatedLabel This is a special label that contains not just a single text to display but a number of frames that are cycled through.AnimatedLabel.AnimationTimerTask BasicWindow Simple AbstractWindow implementation that you can use as a building block when creating new windows without having to create new classes.BorderLayout BorderLayout imitates the BorderLayout class from AWT, allowing you to add a center component with optional components around it in top, bottom, left and right locations.Borders This class containers a couple of border implementation and utility methods for instantiating them.Borders.AbstractBorderRenderer Borders.DoubleLine Borders.DoubleLineRenderer Borders.SingleLine Borders.SingleLineRenderer Borders.StandardBorder Button Simple labeled button that the user can trigger by pressing the Enter or the Spacebar key on the keyboard when the component is in focus.Button.BorderedButtonRenderer Button.DefaultButtonRenderer This is the default button renderer that is used if you don't override anything.Button.FlatButtonRenderer Alternative button renderer that displays buttons with just the label and minimal decorationCheckBox The checkbox component looks like a regular checkbox that you can find in modern graphics user interfaces, a label and a space that the user can toggle on and off by using enter or space keys.CheckBox.CheckBoxRenderer Helper interface that doesn't add any new methods but makes coding new check box renderers a little bit more clearCheckBox.DefaultCheckBoxRenderer The default renderer that is used unless overridden.CheckBoxList<V> This is a list box implementation where each item has its own checked state that can be toggled on and offCheckBoxList.CheckBoxListItemRenderer<V> Default renderer for this component which is used unless overridden.ComboBox<V> This is a simple combo box implementation that allows the user to select one out of multiple items through a drop-down menu.ComboBox.ComboBoxRenderer<V> Helper interface that doesn't add any new methods but makes coding new combo box renderers a little bit more clearComboBox.DefaultComboBoxRenderer<V> This class is the default renderer implementation which will be used unless overridden.DefaultTextGUIGraphics Created by Martin on 2017-08-11.DefaultWindowDecorationRenderer Default window decoration renderer that is used unless overridden with another decoration renderer.DefaultWindowManager The default window manager implementation used by Lanterna.EmptySpace Simple component which draws a solid color over its area.EmptyWindowDecorationRenderer Implementation of WindowDecorationRenderer that is doesn't render any window decorationsFatWindowDecorationRenderer GridLayout This emulates the behaviour of the GridLayout in SWT (as opposed to the one in AWT/Swing).GridLayout.GridLayoutData GUIBackdrop Special component that is by default displayed as the background of a text gui unless you override it with something else.ImageComponent InteractableLookupMap This class is used to keep a 'map' of the usable area and note where all the interact:ables are.Label Label is a simple read-only text display component.LinearLayout Simple layout manager the puts all components on a single line, either horizontally or vertically.LinearLayout.LinearLayoutData LocalizedString Set of predefined localized string.
All this strings are localized by usingLocalizedUIBundle
.
Changing the locale by callingLocale.setDefault(Locale)
.MenuPopupWindow This class is aWindow
implementation that automatically sets some common settings that you'd want on specifically popup windows with menu items.MultiWindowTextGUI This is the main Text GUI implementation built into Lanterna, supporting multiple tiled windows and a dynamic background area that can be fully customized.Panel This class is the basic building block for creating user interfaces, being the standard implementation ofContainer
that supports multiple children.Panels Utility class for quickly bunching up components in a panel, arranged in a particular patternProgressBar This GUI element gives a visual indication of how far a process of some sort has progressed at any given time.ProgressBar.DefaultProgressBarRenderer Default implementation of the progress bar GUI component renderer.ProgressBar.LargeProgressBarRenderer This progress bar renderer implementation takes slightly more space (three rows) and draws a slightly more complicates progress bar with fixed measurers to mark 25%, 50% and 75%.RadioBoxList<V> The list box will display a number of items, of which one and only one can be marked as selected.RadioBoxList.RadioBoxListItemRenderer<V> Default renderer for this component which is used unless overridden.SameTextGUIThread ThisTextGUIThread
implementation is assuming the GUI event thread will be the same as the thread that creates theTextGUI
objects.SameTextGUIThread.Factory Default factory class forSameTextGUIThread
, you need to pass this to theTextGUI
constructor if you want it to use this classScrollBar Classic scrollbar that can be used to display where inside a larger component a view is showing.ScrollBar.DefaultScrollBarRenderer Default renderer forScrollBar
which will be used unless overridden.ScrollBar.ScrollBarRenderer Helper class for making newScrollBar
renderers a little bit cleanerSeparateTextGUIThread Default implementation of TextGUIThread, this class runs the GUI event processing on a dedicated thread.SeparateTextGUIThread.Factory Factory class for creating SeparateTextGUIThread objectsSeparator Static non-interactive component that is typically rendered as a single line.Separator.DefaultSeparatorRenderer This is the default separator renderer that is used if you don't override anything.Separator.SeparatorRenderer Helper interface that doesn't add any new methods but makes coding new button renderers a little bit more clearSplitPanel TextBox This component keeps a text content that is editable by the user.TextBox.DefaultTextBoxRenderer This is the default text box renderer that is used if you don't override anything.Window.Hint Window hints are meta-data stored along with the window that can be used to give the GUI system some ideas of how this window wants to be treated.WindowList WindowListenerAdapter Adapter class forWindowListener
to make it easier to create listeners without having to implement every interface method.WindowShadowRenderer This WindowPostRenderer implementation draws a shadow under the window -
Enum Summary Enum Description AsynchronousTextGUIThread.State Enum representing the states of the GUI thread life-cycleBorderLayout.Location This type is what you use as the layout data for components added to a panel usingBorderLayout
for its layout manager.Borders.BorderStyle Direction Enum for distinguishing between horizontal and vertical directions.GridLayout.Alignment The enum is used to specify where in a grid cell a component should be placed, in the case that the preferred size of the component is smaller than the space in the cell.Interactable.FocusChangeDirection When focus has changed, which direction.Interactable.Result Enum to represent the various results coming out of the handleKeyStroke methodLinearLayout.Alignment This enum type will decide the alignment of a component on the counter-axis, meaning the horizontal alignment on verticalLinearLayout
s and vertical alignment on horizontalLinearLayout
s.LinearLayout.GrowPolicy This enum type will what to do with a component if the container has extra space to offer.TextBox.Style Enum value to force aTextBox
to be either single line or multi line.