| 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 |