blob: b7644e99646bfbd3d47c8283826b8cd0c8f64025 [file] [log] [blame]
// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'package:sky/framework/components2/fixed_height_scrollable.dart';
import 'package:sky/framework/fn2.dart';
import 'stock_data.dart';
import 'stock_row.dart';
class Stocklist extends FixedHeightScrollable {
String query;
List<Stock> stocks;
Stocklist({
Object key,
this.stocks,
this.query
}) : super(key: key);
List<UINode> buildItems(int start, int count) {
var filteredStocks = stocks.where((stock) {
return query == null ||
stock.symbol.contains(new RegExp(query, caseSensitive: false));
});
itemCount = filteredStocks.length;
return filteredStocks
.skip(start)
.take(count)
.map((stock) => new StockRow(stock: stock))
.toList(growable: false);
}
}