flutter/examples/fn2/container.dart
Collin Jackson fef65fc431 Implement RenderImage and Image for Sky
This also fixes a bug that was preventing markNeedsLayout from working

R=abarth@chromium.org, eseidel@chromium.org, abarth, eseidel

Review URL: https://codereview.chromium.org/1160013004
2015-06-03 15:17:12 -07:00

52 lines
1.6 KiB
Dart

// Copyright 2015 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'dart:sky' as sky;
import 'package:sky/framework/fn2.dart';
import 'package:sky/framework/rendering/box.dart';
import '../lib/solid_color_box.dart';
class Rectangle extends RenderNodeWrapper {
RenderSolidColorBox root;
RenderSolidColorBox createNode() =>
new RenderSolidColorBox(color, desiredSize: new sky.Size(40.0, 130.0));
final int color;
Rectangle(this.color, { Object key }) : super(key: key);
}
class ContainerApp extends App {
UINode build() {
return new EventListenerNode(
new BlockContainer(children: [
new Container(
padding: new EdgeDims.all(10.0),
margin: new EdgeDims.all(10.0),
desiredSize: new sky.Size(double.INFINITY, 100.0),
decoration: new BoxDecoration(backgroundColor: const sky.Color(0xFF00FF00)),
child: new BlockContainer(
children: [
new Container(
decoration: new BoxDecoration(backgroundColor: const sky.Color(0xFFFFFF00)),
desiredSize: new sky.Size(double.INFINITY, 20.0)
),
new Image(src: "https://www.dartlang.org/logos/dart-logo.png",
size: new sky.Size(300.0, 300.0),
key: 1
),
])),
]),
onPointerDown: _handlePointerDown);
}
void _handlePointerDown(sky.PointerEvent event) {
print("_handlePointerDown");
}
}
void main() {
new ContainerApp();
}