mirror of
https://github.com/flutter/flutter
synced 2024-10-14 04:02:56 +00:00
Update paths in sky_home.dart
I also removed the leading /, so it is now possible to use shelldb start sky/sky_home to test. Also fixed touch_demo.dart and sector layout to work and not crash. R=ianh@google.com Review URL: https://codereview.chromium.org/1177343002.
This commit is contained in:
parent
ad1305c35b
commit
27ec875ab7
|
@ -4,18 +4,22 @@
|
|||
|
||||
import 'dart:math';
|
||||
import 'dart:sky';
|
||||
|
||||
import 'package:sky/framework/app.dart';
|
||||
import 'package:sky/framework/rendering/box.dart';
|
||||
import 'package:sky/framework/rendering/object.dart';
|
||||
import 'package:sky/framework/rendering/paragraph.dart';
|
||||
import 'package:sky/framework/rendering/stack.dart';
|
||||
import 'package:sky/framework/theme2/colors.dart';
|
||||
|
||||
// Material design colors. :p
|
||||
List<int> colors = [
|
||||
0xFF009688,
|
||||
0xFFFFC107,
|
||||
0xFF9C27B0,
|
||||
0xFF03A9F4,
|
||||
0xFF673AB7,
|
||||
0xFFCDDC39,
|
||||
List<Color> colors = [
|
||||
Teal[500],
|
||||
Amber[500],
|
||||
Purple[500],
|
||||
LightBlue[500],
|
||||
DeepPurple[500],
|
||||
Lime[500],
|
||||
];
|
||||
|
||||
class Dot {
|
||||
|
@ -24,7 +28,7 @@ class Dot {
|
|||
double y = 0.0;
|
||||
double radius = 0.0;
|
||||
|
||||
Dot({int color}) : _paint = new Paint()..color = color;
|
||||
Dot({ Color color }) : _paint = new Paint()..color = color;
|
||||
|
||||
void update(PointerEvent event) {
|
||||
x = event.x;
|
||||
|
@ -45,7 +49,7 @@ class RenderTouchDemo extends RenderBox {
|
|||
void handleEvent(Event event, BoxHitTestEntry entry) {
|
||||
switch (event.type) {
|
||||
case 'pointerdown':
|
||||
int color = colors[event.pointer.remainder(colors.length)];
|
||||
Color color = colors[event.pointer.remainder(colors.length)];
|
||||
dots[event.pointer] = new Dot(color: color)..update(event);
|
||||
break;
|
||||
case 'pointerup':
|
||||
|
@ -66,14 +70,23 @@ class RenderTouchDemo extends RenderBox {
|
|||
}
|
||||
|
||||
void paint(RenderObjectDisplayList canvas) {
|
||||
dots.forEach((_, Dot dot) {
|
||||
Paint white = new Paint()..color = const Color(0xFFFFFFFF);
|
||||
canvas.drawRect(new Rect.fromSize(size), white);
|
||||
for (Dot dot in dots.values)
|
||||
dot.paint(canvas);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
AppView app;
|
||||
|
||||
void main() {
|
||||
app = new AppView(new RenderTouchDemo());
|
||||
var para = new RenderParagraph(text: "Touch me!");
|
||||
var stack = new RenderStack(children: [
|
||||
new RenderTouchDemo(),
|
||||
para,
|
||||
]);
|
||||
// Make the paragraph not fill the whole screen so it doesn't eat events.
|
||||
para.parentData..top = 40.0
|
||||
..left = 20.0;
|
||||
app = new AppView(stack);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue