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 '../fn.dart'; | 5 import '../fn.dart'; |
6 | 6 |
7 // TODO(eseidel): This should use package:. | 7 // TODO(eseidel): This should use package:. |
8 const String kAssetBase = '/packages/sky/assets/material-design-icons'; | 8 const String kAssetBase = '/packages/sky/assets/material-design-icons'; |
9 | 9 |
10 class Icon extends Component { | 10 class Icon extends Component { |
11 int size; | 11 int size; |
12 String type; | 12 String type; |
13 | 13 |
14 Icon({ | 14 Icon({ |
15 String key, | 15 String key, |
16 this.size, | 16 this.size, |
17 this.type: '' | 17 this.type: '' |
18 }) : super(key: key); | 18 }) : super(key: key); |
19 | 19 |
20 Node build() { | 20 UINode build() { |
21 String category = ''; | 21 String category = ''; |
22 String subtype = ''; | 22 String subtype = ''; |
23 List<String> parts = type.split('/'); | 23 List<String> parts = type.split('/'); |
24 if (parts.length == 2) { | 24 if (parts.length == 2) { |
25 category = parts[0]; | 25 category = parts[0]; |
26 subtype = parts[1]; | 26 subtype = parts[1]; |
27 } | 27 } |
28 | 28 |
29 return new Image(width: size, height: size, | 29 return new Image(width: size, height: size, |
30 src: '${kAssetBase}/${category}/2x_web/ic_${subtype}_${size}dp.png'); | 30 src: '${kAssetBase}/${category}/2x_web/ic_${subtype}_${size}dp.png'); |
31 } | 31 } |
32 } | 32 } |
OLD | NEW |