Separate floor and ceiling into widgets with painters
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com>
This commit is contained in:
+34
-14
@@ -557,27 +557,33 @@ class Background extends StatelessWidget {
|
|||||||
super.key,
|
super.key,
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return const Stack(
|
||||||
|
textDirection: TextDirection.ltr,
|
||||||
|
children: [
|
||||||
|
Ceiling(),
|
||||||
|
Floor(),
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class Ceiling extends StatelessWidget {
|
||||||
|
const new({super.key});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return LayoutBuilder(
|
return LayoutBuilder(
|
||||||
builder: (context, constraints) => Stack(
|
builder: (context, constraints) => CustomPaint(
|
||||||
textDirection: TextDirection.ltr,
|
size: constraints.biggest,
|
||||||
children: [
|
painter: CeilingPainter(),
|
||||||
CustomPaint(
|
|
||||||
size: constraints.biggest,
|
|
||||||
painter: Ceiling(),
|
|
||||||
),
|
|
||||||
CustomPaint(
|
|
||||||
size: constraints.biggest,
|
|
||||||
painter: Floor(),
|
|
||||||
),
|
|
||||||
],
|
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class Ceiling extends CustomPainter {
|
class CeilingPainter extends CustomPainter {
|
||||||
@override
|
@override
|
||||||
void paint(Canvas canvas, Size size) {
|
void paint(Canvas canvas, Size size) {
|
||||||
final Rect rect = Offset.zero & size;
|
final Rect rect = Offset.zero & size;
|
||||||
@@ -610,7 +616,21 @@ class Ceiling extends CustomPainter {
|
|||||||
bool shouldRebuildSemantics(covariant oldDelegate) => false;
|
bool shouldRebuildSemantics(covariant oldDelegate) => false;
|
||||||
}
|
}
|
||||||
|
|
||||||
class Floor extends CustomPainter {
|
class Floor extends StatelessWidget {
|
||||||
|
const new({super.key});
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return LayoutBuilder(
|
||||||
|
builder: (context, constraints) => CustomPaint(
|
||||||
|
size: constraints.biggest,
|
||||||
|
painter: FloorPainter(),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class FloorPainter extends CustomPainter {
|
||||||
@override
|
@override
|
||||||
void paint(Canvas canvas, Size size) {
|
void paint(Canvas canvas, Size size) {
|
||||||
final Rect rect = Offset.zero & size;
|
final Rect rect = Offset.zero & size;
|
||||||
|
|||||||
Reference in New Issue
Block a user