This crate adds a virtual list widget to egui. Egui has a basic build in virtual list in the ScrollArea widget. This crate has some extra features though:
- Supports items with varying heights
- Heights are calculated lazily and cached, as you scroll further down the list
- Supports custom layouts, so you could place multiple items in a single row
- Check the Gallery Example
- Allows for adding items at the top without the scroll position changing
- Check the Chat Example
There are some limitations though:
- If you want to support a crazy amounts of items (1000000+ items), where you can instantly jump anywhere in the list, I recommend using egui's built in ScrollArea instead.
- Horizontal scrolling is not supported yet, but it should be easy to add if needed.
If you want to build a infinite scroll list, I recommend using the egui_infinite_scroll crate instead, which is using this crate internally.