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/painting/text_style.dart'; | 5 import 'package:sky/painting/text_style.dart'; |
6 import 'package:sky/rendering/box.dart'; | 6 import 'package:sky/rendering/box.dart'; |
7 import 'package:sky/rendering/flex.dart'; | 7 import 'package:sky/rendering/flex.dart'; |
8 import 'package:sky/rendering/sky_binding.dart'; | 8 import 'package:sky/rendering/sky_binding.dart'; |
9 import 'package:sky/theme/colors.dart'; | 9 import 'package:sky/theme/colors.dart'; |
10 import 'package:sky/theme/typography.dart'; | 10 import 'package:sky/theme/typography.dart'; |
(...skipping 25 matching lines...) Expand all Loading... |
36 Dave: What's the problem? | 36 Dave: What's the problem? |
37 HAL: I think you know what the problem is just as well as I do. | 37 HAL: I think you know what the problem is just as well as I do. |
38 Dave: What are you talking about, HAL? | 38 Dave: What are you talking about, HAL? |
39 HAL: This mission is too important for me to allow you to jeopardize it.'''; | 39 HAL: This mission is too important for me to allow you to jeopardize it.'''; |
40 | 40 |
41 // [["Dave", "Open the pod bay..."] ...] | 41 // [["Dave", "Open the pod bay..."] ...] |
42 List<List<String>> nameLines; | 42 List<List<String>> nameLines; |
43 | 43 |
44 final TextStyle daveStyle = new TextStyle(color: Indigo[400]); | 44 final TextStyle daveStyle = new TextStyle(color: Indigo[400]); |
45 final TextStyle halStyle = new TextStyle(color: Red[400], fontFamily: "monospa
ce"); | 45 final TextStyle halStyle = new TextStyle(color: Red[400], fontFamily: "monospa
ce"); |
46 final TextStyle boldStyle = new TextStyle(fontWeight: bold); | 46 final TextStyle boldStyle = const TextStyle(fontWeight: bold); |
| 47 final TextStyle underlineStyle = const TextStyle(decoration: underline); |
47 | 48 |
48 Component toStyledText(String name, String text) { | 49 Component toStyledText(String name, String text) { |
49 TextStyle lineStyle = (name == "Dave") ? daveStyle : halStyle; | 50 TextStyle lineStyle = (name == "Dave") ? daveStyle : halStyle; |
50 return new StyledText( | 51 return new StyledText( |
51 key: text, | 52 key: text, |
52 elements: [lineStyle, [boldStyle, name + ":"], text] | 53 elements: [lineStyle, [boldStyle, [underlineStyle, name], ":"], text] |
53 ); | 54 ); |
54 } | 55 } |
55 | 56 |
56 Component toPlainText(String name, String text) => new Text(name + ":" + text)
; | 57 Component toPlainText(String name, String text) => new Text(name + ":" + text)
; |
57 | 58 |
58 Component createSeparator() { | 59 Component createSeparator() { |
59 return new Container( | 60 return new Container( |
60 constraints: const BoxConstraints(minWidth: double.INFINITY, maxHeight: 0.
0), | 61 constraints: const BoxConstraints(minWidth: double.INFINITY, maxHeight: 0.
0), |
61 margin: const EdgeDims.symmetric(vertical: 10.0, horizontal: 64.0), | 62 margin: const EdgeDims.symmetric(vertical: 10.0, horizontal: 64.0), |
62 decoration: const BoxDecoration( | 63 decoration: const BoxDecoration( |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
110 } | 111 } |
111 } | 112 } |
112 | 113 |
113 void main() { | 114 void main() { |
114 runApp(new StyledTextApp()); | 115 runApp(new StyledTextApp()); |
115 SkyBinding.instance.onFrame = () { | 116 SkyBinding.instance.onFrame = () { |
116 // uncomment this for debugging: | 117 // uncomment this for debugging: |
117 // SkyBinding.instance.debugDumpRenderTree(); | 118 // SkyBinding.instance.debugDumpRenderTree(); |
118 }; | 119 }; |
119 } | 120 } |
OLD | NEW |