Anvil::Widgets::ListPopup(T)
Gefilterte Auswahlliste über der Eingabezeile — Slash-Kommandos, Dateivervollständigung, alles dieser Art.
Hält nur den Zustand und liefert Zeilen; wann sie aufgeht und was die Auswahl bedeutet, entscheidet die App.
Constructors
new(items : Array(T), *, max_visible : Int32 = 8, label : T -> String, description : T -> String | Nil = nil, filter : Array(T), String -> Array(T) | Nil = nil, wrap_around : Bool = true)
label und description sagen, wie ein Eintrag zu Text wird — so
bleibt das Popup unabhängig davon, was es anzeigt.
filter bestimmt, was auf eine Eingabe passt. Die Vorgabe ist eine
Teilzeichenkette ohne Rücksicht auf Groß- und Kleinschreibung; eine App
mit eigener Vorstellung (Präfixe, Fuzzy-Suche, eigene Sortierung) gibt
ihre eigene mit, statt dass das Popup alle Fälle zu kennen versucht.
wrap_around sagt, ob die Auswahl am Ende der Liste oben weitermacht.
Instance methods
current
Sourceitems
Sourcelines(width : Int32, marker_style : Text::Style = Text::Style.new(fg: Text::Palette::ACCENT), selected_style : Text::Style = Text::Style.new(reverse: true), normal_style : Text::Style = Text::Style.new(dim: true), separator_style : Text::Style = Text::Style.new(fg: Text::Palette::MUTED)) : Array(Text::StyledLine)
Sourcemove_down
Sourcemove_up
Sourceopen?
Sourcequery
Sourceselected
Sourcesize
Sourcetop
Sourcevisible
Source