Module com.googlecode.lanterna
Package com.googlecode.lanterna.gui2
package com.googlecode.lanterna.gui2
-
ClassDescriptionLayout 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 of
BasePane
has the common code shared by all different concrete implementations.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.This abstract implementation of TextGUI contains some basic management of the underlying Screen and other common code that can be shared between different implementations.Abstract implementation ofTextGUIThread
with common logic for both available concrete implementations.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.This class is a list box implementation that displays a number of items that has actions associated with them.This is a special label that contains not just a single text to display but a number of frames that are cycled through.Extended interface of TextGUIThread for implementations that uses a separate thread for all GUI event processing and updating.Enum representing the states of the GUI thread life-cycleBasePane is the base container in a Text GUI.BasePaneListener<T extends BasePane>Simple AbstractWindow implementation that you can use as a building block when creating new windows without having to create new classes.Main interface for different border classes, with additional methods to help lanterna figure out the size and offset of components wrapped by borders.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.This type is what you use as the layout data for components added to a panel usingBorderLayout
for its layout manager.This class containers a couple of border implementation and utility methods for instantiating them.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.Helper interface that doesn't add any new methods but makes coding new button renderers a little bit more clearThis is the default button renderer that is used if you don't override anything.Alternative button renderer that displays buttons with just the label and minimal decorationListener interface that can be used to catch user events on the buttonThe 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.Helper interface that doesn't add any new methods but makes coding new check box renderers a little bit more clearThe default renderer that is used unless overridden.Listener interface that can be used to catch user events on the check boxCheckBoxList<V>This is a list box implementation where each item has its own checked state that can be toggled on and offDefault renderer for this component which is used unless overridden.Listener interface that can be attached to theCheckBoxList
in order to be notified on user actionsComboBox<V>This is a simple combo box implementation that allows the user to select one out of multiple items through a drop-down menu.Helper interface that doesn't add any new methods but makes coding new combo box renderers a little bit more clearThis class is the default renderer implementation which will be used unless overridden.Listener interface that can be used to catch user events on the combo boxThis 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.A Composite is a Container that contains only one (or zero) component.Container is a component that contains a collection of child components.Created by Martin on 2017-08-11.Default window decoration renderer that is used unless overridden with another decoration renderer.The default window manager implementation used by Lanterna.Enum for distinguishing between horizontal and vertical directions.Simple component which draws a solid color over its area.Implementation of WindowDecorationRenderer that is doesn't render any window decorationsThis emulates the behaviour of the GridLayout in SWT (as opposed to the one in AWT/Swing).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.Special component that is by default displayed as the background of a text gui unless you override it with something else.This interface can be used to programmatically intercept input from the user and decide if the input should be passed on to the interactable.This interface marks a component as able to receive keyboard input from the user.When focus has changed, which direction.Enum to represent the various results coming out of the handleKeyStroke methodThis class is used to keep a 'map' of the usable area and note where all the interact:ables are.Extended interface for component renderers used with interactable components.Label is a simple read-only text display component.Empty interface to use for values that can be used as a layout meta-data on components.A layout manager is a class that takes an area of usable space and a list of components to fit on that space.Simple layout manager the puts all components on a single line, either horizontally or vertically.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.This enum type will what to do with a component if the container has extra space to offer.Set of predefined localized string.
All this strings are localized by usingLocalizedUIBundle
.
Changing the locale by callingLocale.setDefault(Locale)
.This class is aWindow
implementation that automatically sets some common settings that you'd want on specifically popup windows with menu items.This is the main Text GUI implementation built into Lanterna, supporting multiple tiled windows and a dynamic background area that can be fully customized.This class is the basic building block for creating user interfaces, being the standard implementation ofContainer
that supports multiple children.Utility class for quickly bunching up components in a panel, arranged in a particular patternThis GUI element gives a visual indication of how far a process of some sort has progressed at any given time.Default implementation of the progress bar GUI component renderer.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.Listener interface that can be attached to theRadioBoxList
in order to be notified on user actionsDefault renderer for this component which is used unless overridden.ThisTextGUIThread
implementation is assuming the GUI event thread will be the same as the thread that creates theTextGUI
objects.Default factory class forSameTextGUIThread
, you need to pass this to theTextGUI
constructor if you want it to use this classClassic scrollbar that can be used to display where inside a larger component a view is showing.Default renderer forScrollBar
which will be used unless overridden.Helper class for making newScrollBar
renderers a little bit cleanerDefault implementation of TextGUIThread, this class runs the GUI event processing on a dedicated thread.Factory class for creating SeparateTextGUIThread objectsStatic non-interactive component that is typically rendered as a single line.This is the default separator renderer that is used if you don't override anything.Helper interface that doesn't add any new methods but makes coding new button renderers a little bit more clearThis component keeps a text content that is editable by the user.This is the default text box renderer that is used if you don't override anything.Enum value to force aTextBox
to be either single line or multi line.Helper interface that doesn't add any new methods but makes coding new text box renderers a little bit more clearListener interface for when theTextBox
content has changed.This is the base interface for advanced text GUIs supported in Lanterna.Listener interface for TextGUI, firing on events related to the overall GUIThis interface is the base part in the Lanterna Text GUI component hierarchyTextGraphics implementation used by TextGUI when doing any drawing operation.Class that represents the thread this is expected to run the event/input/update loop for theTextGUI
.This interface defines an exception handler, that is used for looking at exceptions that occurs during the main event loop of the TextGUIThread.Factory class for creatingTextGUIThread
objects.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.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.Extension of the TextGUI interface, this is intended as the base interface for any TextGUI that intends to make use of the Window class.Interface that defines a class that draws window decorations, i.e.ExtendedBasePaneListener
forWindow
that exposes additional events that are specific to windowsAdapter class forWindowListener
to make it easier to create listeners without having to implement every interface method.Window manager is a class that is plugged in to aWindowBasedTextGUI
to manage the position and placement of windows.Classes implementing this interface can be used along with DefaultWindowManagerTextGUI to put some extra processing after a window has been rendered.This WindowPostRenderer implementation draws a shadow under the window