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

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

Issue 1166153002: Add a basic popup menu implementation to stocks2 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 6 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
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/fn2.dart'; 5 import 'package:sky/framework/fn2.dart';
6 import 'package:sky/framework/components2/popup_menu.dart'; 6 import 'package:sky/framework/components2/popup_menu.dart';
7 import 'package:sky/framework/components2/checkbox.dart'; 7 import 'package:sky/framework/components2/checkbox.dart';
8 import 'package:sky/framework/theme/view_configuration.dart'; 8 import 'package:sky/framework/theme/view_configuration.dart';
9 9
10 class StockMenu extends Component { 10 class StockMenu extends Component {
11 static final Style _style = new Style(''' 11 // static final Style _style = new Style('''
12 position: absolute; 12 // position: absolute;
13 right: 8px; 13 // right: 8px;
14 top: ${8 + kStatusBarHeight}px;'''); 14 // top: ${8 + kStatusBarHeight}px;''');
15 15
16 PopupMenuController controller; 16 PopupMenuController controller;
17 17
18 StockMenu({Object key, this.controller, this.autorefresh: false, this.onAutore freshChanged}) : super(key: key); 18 StockMenu({Object key, this.controller, this.autorefresh: false, this.onAutore freshChanged}) : super(key: key);
19 19
20 final bool autorefresh; 20 final bool autorefresh;
21 final ValueChanged onAutorefreshChanged; 21 final ValueChanged onAutorefreshChanged;
22 22
23 static FlexBoxParentData _flex1 = new FlexBoxParentData()..flex = 1;
24
25 UINode build() { 23 UINode build() {
26 var checkbox = new Checkbox( 24 var checkbox = new Checkbox(
27 checked: this.autorefresh, 25 checked: this.autorefresh,
28 onChanged: this.onAutorefreshChanged 26 onChanged: this.onAutorefreshChanged
29 ); 27 );
30 28
31 return new StyleNode( 29 return new PopupMenu(
32 new PopupMenu( 30 controller: controller,
33 controller: controller, 31 items: [
34 items: [ 32 [new Text('Add stock')],
35 [new Text('Add stock')], 33 [new Text('Remove stock')],
36 [new Text('Remove stock')], 34 // [new FlexExpandingChild(new Text('Autorefresh')), checkbox],
37 [new ParentDataNode(new Text('Autorefresh'), _flex1), checkbox], 35 ],
38 ], 36 level: 4
39 level: 4),
40 _style
41 ); 37 );
42 } 38 }
43 } 39 }
OLDNEW
« no previous file with comments | « sky/examples/stocks2/lib/stock_app.dart ('k') | sky/sdk/lib/framework/components2/checkbox.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698