build method
- dynamic context
override
Implementation
@override
pw.Widget build(dynamic context) {
scale = prefs.getInt('scale') ?? 1;
timeScaleFactor = scale == 3 ? 2 : 6;
return pw.Container(
//margin: const pw.EdgeInsets.only(top: 2 * PdfPageFormat.mm),
padding: const pw.EdgeInsets.symmetric(
horizontal: 3 * PdfPageFormat.mm, vertical: 3 * PdfPageFormat.mm),
decoration: const pw.BoxDecoration(
border:
pw.Border(bottom: pw.BorderSide(width: 1.0, color: PdfColors.grey)),
),
child: pw.Row(
children: [
pw.Container(
width: PdfPageFormat.cm * 3,
margin: const pw.EdgeInsets.only(
right: 3 * PdfPageFormat.mm, left: PdfPageFormat.mm * 2),
child: pw.FittedBox(
child: pw.Flexible(
child: pw.SvgImage(
svg: SvgStrings.fetosense_icon,
fit: pw.BoxFit.contain,
),
),
),
),
pw.Column(
mainAxisAlignment: pw.MainAxisAlignment.start,
crossAxisAlignment: pw.CrossAxisAlignment.start,
children: [
HeaderData(
title: "Hospital Name",
content: data.organizationName ?? ""),
HeaderData(
title: "Doctor Name", content: data.doctorName ?? ""),
HeaderData(title: "DATE", content: data.createdOn!.format()),
HeaderData(
title: "TIME", content: data.createdOn!.format('hh:mm a')),
]),
pw.Column(
mainAxisAlignment: pw.MainAxisAlignment.start,
crossAxisAlignment: pw.CrossAxisAlignment.start,
children: [
HeaderData(title: "NAME", content: data.motherName ?? ""),
HeaderData(
title: "AGE",
content: data.age != null ? "${data.age} Years" : ""),
HeaderData(title: "GEST AGE", content: "${data.gAge} Weeks"),
HeaderData(
title: "DURATION",
content: "${data.lengthOfTest! ~/ 60} Minutes" ?? ""),
]),
pw.Column(
mainAxisAlignment: pw.MainAxisAlignment.start,
crossAxisAlignment: pw.CrossAxisAlignment.start,
children: [
HeaderData(title: "MOTHER ID", content: data.motherId!),
HeaderData(title: "TEST ID", content: data.documentId ?? ""),
HeaderData(
title: "X-Axis", content: "${timeScaleFactor * 10} SEC/DIV"),
HeaderData(title: "Y-Axis", content: "20 BPM/DIV"),
],
)
],
),
);
}