Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(183)

Side by Side Diff: sky/examples/stocks2/lib/stock_list.dart

Issue 1218593002: Move sky/examples to sky/sdk/lib/example, and code changes to support that change. Fixes T277. (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 import 'package:sky/widgets/fixed_height_scrollable.dart';
6 import 'package:sky/widgets/basic.dart';
7
8 import 'stock_data.dart';
9 import 'stock_row.dart';
10
11 class Stocklist extends FixedHeightScrollable {
12
13 Stocklist({
14 String key,
15 this.stocks,
16 this.query
17 }) : super(itemHeight: StockRow.kHeight, key: key);
18
19 String query;
20 List<Stock> stocks;
21
22 void syncFields(Stocklist source) {
23 query = source.query;
24 stocks = source.stocks;
25 super.syncFields(source);
26 }
27
28 List<Widget> buildItems(int start, int count) {
29 var filteredStocks = stocks.where((stock) {
30 return query == null ||
31 stock.symbol.contains(new RegExp(query, caseSensitive: false));
32 });
33 itemCount = filteredStocks.length;
34 return filteredStocks
35 .skip(start)
36 .take(count)
37 .map((stock) => new StockRow(stock: stock))
38 .toList(growable: false);
39 }
40 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698