public TvList(ISkin skin, IViewport boxModel, ListState <TItem> data, Action <ITvListOptions <TItem> > optionsAction = null) : base(skin, boxModel, data) { _options = new TvListOptions <TItem>(); optionsAction?.Invoke(_options); OnItemClicked = new CommandChain <TItem>(); _styleProvider = new TvListStyleProvider <TItem>(skin.ColorManager); _styleProvider.UseSkin(skin); _itemsCache = new TvListItemCache <TItem>(State.Columns, _styleProvider); State.SetCache(_itemsCache); }
public TvListItemCache(TvListColumnSpec <TItem>[] columns, TvListStyleProvider <TItem> styleProvider) { _cachedItems = new Dictionary <int, TvListItem>(); _columns = columns; _styleProvider = styleProvider; }