OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 import 'package:sky/framework/app.dart'; | 5 import 'package:sky/framework/app.dart'; |
6 import 'package:sky/framework/editing2/input.dart'; | 6 import 'package:sky/framework/editing2/input.dart'; |
7 import 'package:sky/framework/rendering/box.dart'; | 7 import 'package:sky/framework/rendering/box.dart'; |
| 8 import 'package:sky/framework/rendering/paragraph.dart'; |
8 import 'package:sky/framework/theme2/colors.dart' as colors; | 9 import 'package:sky/framework/theme2/colors.dart' as colors; |
| 10 import 'package:sky/framework/theme2/typography.dart' as typography; |
9 import 'package:sky/framework/widgets/drawer.dart'; | 11 import 'package:sky/framework/widgets/drawer.dart'; |
10 import 'package:sky/framework/widgets/drawer_header.dart'; | 12 import 'package:sky/framework/widgets/drawer_header.dart'; |
11 import 'package:sky/framework/widgets/floating_action_button.dart'; | 13 import 'package:sky/framework/widgets/floating_action_button.dart'; |
12 import 'package:sky/framework/widgets/icon.dart'; | 14 import 'package:sky/framework/widgets/icon.dart'; |
13 import 'package:sky/framework/widgets/icon_button.dart'; | 15 import 'package:sky/framework/widgets/icon_button.dart'; |
14 import 'package:sky/framework/widgets/menu_divider.dart'; | 16 import 'package:sky/framework/widgets/menu_divider.dart'; |
15 import 'package:sky/framework/widgets/menu_item.dart'; | 17 import 'package:sky/framework/widgets/menu_item.dart'; |
16 import 'package:sky/framework/widgets/modal_overlay.dart'; | 18 import 'package:sky/framework/widgets/modal_overlay.dart'; |
17 import 'package:sky/framework/widgets/popup_menu.dart'; | 19 import 'package:sky/framework/widgets/popup_menu.dart'; |
18 import 'package:sky/framework/widgets/radio.dart'; | 20 import 'package:sky/framework/widgets/radio.dart'; |
19 import 'package:sky/framework/widgets/scaffold.dart'; | 21 import 'package:sky/framework/widgets/scaffold.dart'; |
20 import 'package:sky/framework/widgets/tool_bar.dart'; | 22 import 'package:sky/framework/widgets/tool_bar.dart'; |
21 import 'package:sky/framework/widgets/ui_node.dart'; | 23 import 'package:sky/framework/widgets/ui_node.dart'; |
22 import 'package:sky/framework/widgets/wrappers.dart'; | 24 import 'package:sky/framework/widgets/wrappers.dart'; |
23 | 25 |
24 import 'stock_data.dart'; | 26 import 'stock_data.dart'; |
25 import 'stock_list.dart'; | 27 import 'stock_list.dart'; |
26 import 'stock_menu.dart'; | 28 import 'stock_menu.dart'; |
27 | 29 |
28 enum StockMode { optimistic, pessimistic } | 30 enum StockMode { optimistic, pessimistic } |
29 | 31 |
30 class StocksApp extends App { | 32 class StocksApp extends App { |
31 | 33 |
32 // static final Style _titleStyle = new Style(''' | |
33 // ${typography.white.title};'''); | |
34 | |
35 List<Stock> _stocks = []; | 34 List<Stock> _stocks = []; |
36 | 35 |
37 StocksApp({ RenderView renderViewOverride }) : super(renderViewOverride: rende
rViewOverride) { | 36 StocksApp({ RenderView renderViewOverride }) : super(renderViewOverride: rende
rViewOverride) { |
38 // if (debug) | 37 // if (debug) |
39 // new Timer(new Duration(seconds: 1), dumpState); | 38 // new Timer(new Duration(seconds: 1), dumpState); |
40 new StockDataFetcher((StockData data) { | 39 new StockDataFetcher((StockData data) { |
41 setState(() { | 40 setState(() { |
42 data.appendTo(_stocks); | 41 data.appendTo(_stocks); |
43 }); | 42 }); |
44 }); | 43 }); |
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
151 children: [new Text('Help & Feedback')]) | 150 children: [new Text('Help & Feedback')]) |
152 ] | 151 ] |
153 ); | 152 ); |
154 } | 153 } |
155 | 154 |
156 UINode buildToolBar() { | 155 UINode buildToolBar() { |
157 return new ToolBar( | 156 return new ToolBar( |
158 left: new IconButton( | 157 left: new IconButton( |
159 icon: 'navigation/menu_white', | 158 icon: 'navigation/menu_white', |
160 onGestureTap: (_) => _drawerController.toggle()), | 159 onGestureTap: (_) => _drawerController.toggle()), |
161 center: new Text('Stocks'), | 160 center: new Text('Stocks', style: typography.white.title), |
162 right: [ | 161 right: [ |
163 new IconButton( | 162 new IconButton( |
164 icon: 'action/search_white', | 163 icon: 'action/search_white', |
165 onGestureTap: _handleSearchBegin), | 164 onGestureTap: _handleSearchBegin), |
166 new IconButton( | 165 new IconButton( |
167 icon: 'navigation/more_vert_white', | 166 icon: 'navigation/more_vert_white', |
168 onGestureTap: _handleMenuShow) | 167 onGestureTap: _handleMenuShow) |
169 ], | 168 ], |
170 backgroundColor: colors.Purple[500] | 169 backgroundColor: colors.Purple[500] |
171 ); | 170 ); |
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
214 } | 213 } |
215 | 214 |
216 void main() { | 215 void main() { |
217 print("starting stocks app!"); | 216 print("starting stocks app!"); |
218 App app = new StocksApp(); | 217 App app = new StocksApp(); |
219 UINodeAppView.appView.onFrame = () { | 218 UINodeAppView.appView.onFrame = () { |
220 // uncomment this for debugging: | 219 // uncomment this for debugging: |
221 // app.appView.debugDumpRenderTree(); | 220 // app.appView.debugDumpRenderTree(); |
222 }; | 221 }; |
223 } | 222 } |
OLD | NEW |