public abstract class AbstractSelectorComponent<T,C extends AbstractSelectorComponent.SelectorComponentContext<T,I,C>,I extends Nameable & Matchable & Enableable & Selectable & Itemable<T>> extends AbstractComponent<C>
Modifier and Type | Class and Description |
---|---|
protected static class |
AbstractSelectorComponent.BaseSelectorComponentContext<T,I extends Nameable & Matchable & Itemable<T>,C extends AbstractSelectorComponent.SelectorComponentContext<T,I,C>>
Base implementation of a
AbstractSelectorComponent.SelectorComponentContext . |
static class |
AbstractSelectorComponent.ItemState<I extends Matchable>
Class keeping item state.
|
static interface |
AbstractSelectorComponent.SelectorComponentContext<T,I extends Nameable & Matchable & Itemable<T>,C extends AbstractSelectorComponent.SelectorComponentContext<T,I,C>>
Context interface on a selector component sharing content.
|
Modifier and Type | Field and Description |
---|---|
protected String |
name |
OPERATION_BACKSPACE, OPERATION_CHAR, OPERATION_DOWN, OPERATION_EXIT, OPERATION_SELECT, OPERATION_UP
Constructor and Description |
---|
AbstractSelectorComponent(org.jline.terminal.Terminal terminal,
String name,
List<I> items,
boolean exitSelects,
Comparator<I> comparator) |
Modifier and Type | Method and Description |
---|---|
protected void |
bindKeyMap(org.jline.keymap.KeyMap<String> keyMap)
Bind key map.
|
Function<T,String> |
getItemMapper()
Gets an item mapper.
|
protected List<I> |
getItems()
Gets items.
|
protected boolean |
read(org.jline.keymap.BindingReader bindingReader,
org.jline.keymap.KeyMap<String> keyMap,
C context)
Read input.
|
protected C |
runInternal(C context)
Run internal logic called from public run method.
|
void |
setDefaultExpose(I defaultExpose)
Sets default expose item when component start.
|
void |
setItemMapper(Function<T,String> itemMapper)
Sets an item mapper.
|
void |
setMaxItems(int maxItems)
Set max items to show.
|
addPostRunHandler, addPreRunHandler, getTemplateExecutor, getTerminal, getThisContext, hasTty, loop, render, renderTemplateResource, run, runPostRunHandlers, runPreRunHandlers, setPrintResults, setRenderer, setResourceLoader, setTemplateExecutor, setTemplateLocation
protected final String name
public AbstractSelectorComponent(org.jline.terminal.Terminal terminal, String name, List<I> items, boolean exitSelects, Comparator<I> comparator)
public void setMaxItems(int maxItems)
maxItems
- max itemspublic void setItemMapper(Function<T,String> itemMapper)
itemMapper
- the item mapperpublic void setDefaultExpose(I defaultExpose)
defaultExpose
- the default itemprotected void bindKeyMap(org.jline.keymap.KeyMap<String> keyMap)
AbstractComponent
bindKeyMap
in class AbstractComponent<C extends AbstractSelectorComponent.SelectorComponentContext<T,I,C>>
protected C runInternal(C context)
AbstractComponent
runInternal
in class AbstractComponent<C extends AbstractSelectorComponent.SelectorComponentContext<T,I,C>>
context
- the contextprotected boolean read(org.jline.keymap.BindingReader bindingReader, org.jline.keymap.KeyMap<String> keyMap, C context)
AbstractComponent
read
in class AbstractComponent<C extends AbstractSelectorComponent.SelectorComponentContext<T,I,C>>
bindingReader
- the binding readerkeyMap
- the key mapcontext
- the contextCopyright © 2024. All rights reserved.