| 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/widgets/basic.dart'; | 5 import 'package:sky/widgets/basic.dart'; |
| 6 import 'package:sky/widgets/checkbox.dart'; | 6 import 'package:sky/widgets/checkbox.dart'; |
| 7 import 'package:sky/widgets/switch.dart'; | 7 import 'package:sky/widgets/dialog.dart'; |
| 8 import 'package:sky/widgets/flat_button.dart'; | 8 import 'package:sky/widgets/flat_button.dart'; |
| 9 import 'package:sky/widgets/dialog.dart'; | |
| 10 import 'package:sky/widgets/icon_button.dart'; | 9 import 'package:sky/widgets/icon_button.dart'; |
| 11 import 'package:sky/widgets/material.dart'; | 10 import 'package:sky/widgets/material.dart'; |
| 12 import 'package:sky/widgets/menu_item.dart'; | 11 import 'package:sky/widgets/menu_item.dart'; |
| 13 import 'package:sky/widgets/navigator.dart'; | 12 import 'package:sky/widgets/navigator.dart'; |
| 14 import 'package:sky/widgets/scaffold.dart'; | 13 import 'package:sky/widgets/scaffold.dart'; |
| 14 import 'package:sky/widgets/scrollable_viewport.dart'; |
| 15 import 'package:sky/widgets/switch.dart'; |
| 15 import 'package:sky/widgets/tool_bar.dart'; | 16 import 'package:sky/widgets/tool_bar.dart'; |
| 16 | 17 |
| 17 import 'stock_types.dart'; | 18 import 'stock_types.dart'; |
| 18 | 19 |
| 19 typedef void SettingsUpdater({ | 20 typedef void SettingsUpdater({ |
| 20 StockMode optimism, | 21 StockMode optimism, |
| 21 BackupMode backup | 22 BackupMode backup |
| 22 }); | 23 }); |
| 23 | 24 |
| 24 class StockSettings extends StatefulComponent { | 25 class StockSettings extends StatefulComponent { |
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 82 onPressed: navigator.pop), | 83 onPressed: navigator.pop), |
| 83 center: new Text('Settings') | 84 center: new Text('Settings') |
| 84 ); | 85 ); |
| 85 } | 86 } |
| 86 | 87 |
| 87 Widget buildSettingsPane() { | 88 Widget buildSettingsPane() { |
| 88 // TODO(ianh): Once we have the gesture API hooked up, fix https://github.co
m/domokit/mojo/issues/281 | 89 // TODO(ianh): Once we have the gesture API hooked up, fix https://github.co
m/domokit/mojo/issues/281 |
| 89 // (whereby tapping the widgets below causes both the widget and the menu it
em to fire their callbacks) | 90 // (whereby tapping the widgets below causes both the widget and the menu it
em to fire their callbacks) |
| 90 return new Material( | 91 return new Material( |
| 91 type: MaterialType.canvas, | 92 type: MaterialType.canvas, |
| 92 child: new Container( | 93 child: new ScrollableViewport( |
| 93 padding: const EdgeDims.symmetric(vertical: 20.0), | 94 child: new Container( |
| 94 child: new Block([ | 95 padding: const EdgeDims.symmetric(vertical: 20.0), |
| 95 new MenuItem( | 96 child: new Block([ |
| 96 icon: 'action/thumb_up', | 97 new MenuItem( |
| 97 onPressed: () => _confirmOptimismChange(), | 98 icon: 'action/thumb_up', |
| 98 children: [ | 99 onPressed: () => _confirmOptimismChange(), |
| 99 new Flexible(child: new Text('Everything is awesome')), | 100 children: [ |
| 100 new Checkbox(value: optimism == StockMode.optimistic, onChanged: _
handleOptimismChanged) | 101 new Flexible(child: new Text('Everything is awesome')), |
| 101 ] | 102 new Checkbox(value: optimism == StockMode.optimistic, onChanged:
_handleOptimismChanged) |
| 102 ), | 103 ] |
| 103 new MenuItem( | 104 ), |
| 104 icon: 'action/backup', | 105 new MenuItem( |
| 105 onPressed: () { _handleBackupChanged(!(backup == BackupMode.enabled)
); }, | 106 icon: 'action/backup', |
| 106 children: [ | 107 onPressed: () { _handleBackupChanged(!(backup == BackupMode.enable
d)); }, |
| 107 new Flexible(child: new Text('Back up stock list to the cloud')), | 108 children: [ |
| 108 new Switch(value: backup == BackupMode.enabled, onChanged: _handle
BackupChanged) | 109 new Flexible(child: new Text('Back up stock list to the cloud'))
, |
| 109 ] | 110 new Switch(value: backup == BackupMode.enabled, onChanged: _hand
leBackupChanged) |
| 110 ), | 111 ] |
| 111 ]) | 112 ), |
| 113 ]) |
| 114 ) |
| 112 ) | 115 ) |
| 113 ); | 116 ); |
| 114 } | 117 } |
| 115 | 118 |
| 116 Widget build() { | 119 Widget build() { |
| 117 List<Widget> layers = [ | 120 List<Widget> layers = [ |
| 118 new Scaffold( | 121 new Scaffold( |
| 119 toolbar: buildToolBar(), | 122 toolbar: buildToolBar(), |
| 120 body: buildSettingsPane() | 123 body: buildSettingsPane() |
| 121 ) | 124 ) |
| (...skipping 14 matching lines...) Expand all Loading... |
| 136 _handleOptimismChanged(true); | 139 _handleOptimismChanged(true); |
| 137 navigator.pop(); | 140 navigator.pop(); |
| 138 } | 141 } |
| 139 ), | 142 ), |
| 140 ] | 143 ] |
| 141 )); | 144 )); |
| 142 } | 145 } |
| 143 return new Stack(layers); | 146 return new Stack(layers); |
| 144 } | 147 } |
| 145 } | 148 } |
| OLD | NEW |