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

Side by Side Diff: sky/sdk/lib/widgets/checkbox.dart

Issue 1207373005: Add some dartdoc comments (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
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:sky' as sky; 5 import 'dart:sky' as sky;
6 6
7 import 'package:sky/widgets/theme.dart'; 7 import 'package:sky/widgets/theme.dart';
8 8
9 import 'basic.dart'; 9 import 'basic.dart';
10 import 'toggleable.dart'; 10 import 'toggleable.dart';
11 export 'toggleable.dart' show ValueChanged; 11 export 'toggleable.dart' show ValueChanged;
12 12
13 const double _kMidpoint = 0.5; 13 const double _kMidpoint = 0.5;
14 const sky.Color _kLightUncheckedColor = const sky.Color(0x8A000000); 14 const sky.Color _kLightUncheckedColor = const sky.Color(0x8A000000);
15 const sky.Color _kDarkUncheckedColor = const sky.Color(0xB2FFFFFF); 15 const sky.Color _kDarkUncheckedColor = const sky.Color(0xB2FFFFFF);
16 const double _kEdgeSize = 20.0; 16 const double _kEdgeSize = 20.0;
17 const double _kEdgeRadius = 1.0; 17 const double _kEdgeRadius = 1.0;
18 18
19 /// A material design checkbox
20 ///
21 /// The checkbox itself does not maintain any state. Instead, when the state of
22 /// the checkbox changes, the component calls the `onChange` callback. Most
23 /// components that use a checkbox will listen for the `onChange` callback and
24 /// rebuild the checkbox with a new `value` to update the visual appearance of
25 /// the checkbox.
26 ///
27 /// <https://www.google.com/design/spec/components/lists-controls.html#lists-con trols-types-of-list-controls>
19 class Checkbox extends Toggleable { 28 class Checkbox extends Toggleable {
20 29
30 /// Constructs a checkbox
31 ///
32 /// * `value` determines whether the checkbox is checked.
33 /// * `onChanged` is called whenever the state of the checkbox should change.
21 Checkbox({ 34 Checkbox({
22 String key, 35 String key,
23 bool value, 36 bool value,
24 ValueChanged onChanged 37 ValueChanged onChanged
25 }) : super(key: key, value: value, onChanged: onChanged); 38 }) : super(key: key, value: value, onChanged: onChanged);
26 39
27 Size get size => const Size(_kEdgeSize + 2.0, _kEdgeSize + 2.0); 40 Size get size => const Size(_kEdgeSize + 2.0, _kEdgeSize + 2.0);
28 41
29 void customPaintCallback(sky.Canvas canvas, Size size) { 42 void customPaintCallback(sky.Canvas canvas, Size size) {
30 ThemeData themeData = Theme.of(this); 43 ThemeData themeData = Theme.of(this);
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
78 => new Point(p1.x * (1.0 - t) + p2.x * t, p1.y * (1.0 - t) + p2.y * t); 91 => new Point(p1.x * (1.0 - t) + p2.x * t, p1.y * (1.0 - t) + p2.y * t);
79 sky.Point drawStart = lerp(start, mid, 1.0 - t); 92 sky.Point drawStart = lerp(start, mid, 1.0 - t);
80 sky.Point drawEnd = lerp(mid, end, t); 93 sky.Point drawEnd = lerp(mid, end, t);
81 path.moveTo(drawStart.x, drawStart.y); 94 path.moveTo(drawStart.x, drawStart.y);
82 path.lineTo(mid.x, mid.y); 95 path.lineTo(mid.x, mid.y);
83 path.lineTo(drawEnd.x, drawEnd.y); 96 path.lineTo(drawEnd.x, drawEnd.y);
84 canvas.drawPath(path, paint); 97 canvas.drawPath(path, paint);
85 } 98 }
86 } 99 }
87 } 100 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698