build method

  1. @override
Widget build(
  1. 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"),
          ],
        )
      ],
    ),
  );
}