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

Side by Side Diff: sky/sdk/example/widgets/sector.dart

Issue 1218293017: Deploy TaskDescription to the rest of our demos (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
« no previous file with comments | « sky/sdk/example/rendering/interactive_flex.dart ('k') | sky/sdk/lib/mojo/activity.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 'dart:math' as math; 5 import 'dart:math' as math;
6 6
7 import 'package:sky/rendering/box.dart'; 7 import 'package:sky/rendering/box.dart';
8 import 'package:sky/rendering/flex.dart'; 8 import 'package:sky/rendering/flex.dart';
9 import 'package:sky/rendering/sky_binding.dart'; 9 import 'package:sky/rendering/sky_binding.dart';
10 import 'package:sky/widgets/basic.dart'; 10 import 'package:sky/widgets/basic.dart';
11 import 'package:sky/widgets/material.dart'; 11 import 'package:sky/widgets/material.dart';
12 import 'package:sky/widgets/raised_button.dart'; 12 import 'package:sky/widgets/raised_button.dart';
13 import 'package:sky/widgets/scaffold.dart'; 13 import 'package:sky/widgets/scaffold.dart';
14 import 'package:sky/widgets/task_description.dart';
14 import 'package:sky/widgets/theme.dart'; 15 import 'package:sky/widgets/theme.dart';
15 import 'package:sky/widgets/tool_bar.dart'; 16 import 'package:sky/widgets/tool_bar.dart';
16 import 'package:sky/widgets/widget.dart'; 17 import 'package:sky/widgets/widget.dart';
17 18
18 import '../rendering/sector_layout.dart'; 19 import '../rendering/sector_layout.dart';
19 20
20 RenderBox initCircle() { 21 RenderBox initCircle() {
21 return new RenderBoxToRenderSectorAdapter( 22 return new RenderBoxToRenderSectorAdapter(
22 innerRadius: 25.0, 23 innerRadius: 25.0,
23 child: new RenderSectorRing(padding: 0.0) 24 child: new RenderSectorRing(padding: 0.0)
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 bool enabledRemove = false; 65 bool enabledRemove = false;
65 void updateEnabledState() { 66 void updateEnabledState() {
66 setState(() { 67 setState(() {
67 var ring = (sectors.child as RenderSectorRing); 68 var ring = (sectors.child as RenderSectorRing);
68 SectorDimensions currentSize = ring.getIntrinsicDimensions(const SectorCon straints(), ring.deltaRadius); 69 SectorDimensions currentSize = ring.getIntrinsicDimensions(const SectorCon straints(), ring.deltaRadius);
69 enabledAdd = currentSize.deltaTheta < kTwoPi; 70 enabledAdd = currentSize.deltaTheta < kTwoPi;
70 enabledRemove = ring.firstChild != null; 71 enabledRemove = ring.firstChild != null;
71 }); 72 });
72 } 73 }
73 74
75 Widget buildBody() {
76 return new Material(
77 type: MaterialType.canvas,
78 child: new Flex([
79 new Container(
80 padding: new EdgeDims.symmetric(horizontal: 8.0, vertical: 25.0),
81 child: new Flex([
82 new RaisedButton(
83 enabled: enabledAdd,
84 child: new ShrinkWrapWidth(
85 child: new Flex([
86 new Container(
87 padding: new EdgeDims.all(4.0),
88 margin: new EdgeDims.only(right: 10.0),
89 child: new WidgetToRenderBoxAdapter(sectorAddIcon)
90 ),
91 new Text('ADD SECTOR'),
92 ])
93 ),
94 onPressed: addSector
95 ),
96 new RaisedButton(
97 enabled: enabledRemove,
98 child: new ShrinkWrapWidth(
99 child: new Flex([
100 new Container(
101 padding: new EdgeDims.all(4.0),
102 margin: new EdgeDims.only(right: 10.0),
103 child: new WidgetToRenderBoxAdapter(sectorRemoveIcon)
104 ),
105 new Text('REMOVE SECTOR'),
106 ])
107 ),
108 onPressed: removeSector
109 )
110 ],
111 justifyContent: FlexJustifyContent.spaceAround
112 )
113 ),
114 new Flexible(
115 child: new Container(
116 margin: new EdgeDims.all(8.0),
117 decoration: new BoxDecoration(
118 border: new Border.all(new BorderSide(color: new Color(0xFF00000 0)))
119 ),
120 padding: new EdgeDims.all(8.0),
121 child: new WidgetToRenderBoxAdapter(sectors)
122 )
123 ),
124 ],
125 direction: FlexDirection.vertical,
126 justifyContent: FlexJustifyContent.spaceBetween
127 )
128 );
129 }
130
74 Widget build() { 131 Widget build() {
75 return new Theme( 132 return new Theme(
76 data: new ThemeData.light(), 133 data: new ThemeData.light(),
77 child: new Scaffold( 134 child: new TaskDescription(
78 toolbar: new ToolBar( 135 label: 'Sector Layout',
79 center: new Text('Sector Layout in a Widget Tree')), 136 child: new Scaffold(
80 body: new Material( 137 toolbar: new ToolBar(
81 type: MaterialType.canvas, 138 center: new Text('Sector Layout in a Widget Tree')
82 child: new Flex([ 139 ),
83 new Container( 140 body: buildBody()
84 padding: new EdgeDims.symmetric(horizontal: 8.0, vertical: 25.0) ,
85 child: new Flex([
86 new RaisedButton(
87 enabled: enabledAdd,
88 child: new ShrinkWrapWidth(
89 child: new Flex([
90 new Container(
91 padding: new EdgeDims.all(4.0),
92 margin: new EdgeDims.only(right: 10.0),
93 child: new WidgetToRenderBoxAdapter(sectorAddIcon)
94 ),
95 new Text('ADD SECTOR'),
96 ])
97 ),
98 onPressed: addSector
99 ),
100 new RaisedButton(
101 enabled: enabledRemove,
102 child: new ShrinkWrapWidth(
103 child: new Flex([
104 new Container(
105 padding: new EdgeDims.all(4.0),
106 margin: new EdgeDims.only(right: 10.0),
107 child: new WidgetToRenderBoxAdapter(sectorRemoveIcon )
108 ),
109 new Text('REMOVE SECTOR'),
110 ])
111 ),
112 onPressed: removeSector
113 )
114 ],
115 justifyContent: FlexJustifyContent.spaceAround
116 )
117 ),
118 new Flexible(
119 child: new Container(
120 margin: new EdgeDims.all(8.0),
121 decoration: new BoxDecoration(
122 border: new Border.all(new BorderSide(color: new Color(0xFF0 00000)))
123 ),
124 padding: new EdgeDims.all(8.0),
125 child: new WidgetToRenderBoxAdapter(sectors)
126 )
127 ),
128 ],
129 direction: FlexDirection.vertical,
130 justifyContent: FlexJustifyContent.spaceBetween
131 )
132 ) 141 )
133 ) 142 )
134 ); 143 );
135 } 144 }
136 } 145 }
137 146
138 void main() { 147 void main() {
139 runApp(new SectorApp()); 148 runApp(new SectorApp());
140 SkyBinding.instance.onFrame = () { 149 SkyBinding.instance.onFrame = () {
141 // uncomment this for debugging: 150 // uncomment this for debugging:
142 // SkyBinding.instance.debugDumpRenderTree(); 151 // SkyBinding.instance.debugDumpRenderTree();
143 }; 152 };
144 } 153 }
OLDNEW
« no previous file with comments | « sky/sdk/example/rendering/interactive_flex.dart ('k') | sky/sdk/lib/mojo/activity.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698