xGenPDF_UI static method

Future xGenPDF_UI(
  1. void parentState(
    1. void ()
    ),
  2. BuildContext context,
  3. Future<List<String?>?> getUrls_API(),
  4. XFDataItem obj_Parent, {
  5. Future<Uint8List?> getBytesDoc_API()?,
  6. String? waiterMessage,
  7. bool? isBusy_ParentPage,
  8. List<String?>? emailsCli,
  9. String? email_Body,
  10. String? email_Subject,
  11. List<String>? liAddons_FilesPath,
  12. String? pagePDF_title(
    1. String link
    )?,
  13. bool saveObjBeforeView = true,
  14. Future onSaveObj()?,
})

Implementation

static Future xGenPDF_UI(
  void Function(void Function()) parentState,
  BuildContext context,
  Future<List<String?>?> Function() getUrls_API,
  XFDataItem obj_Parent, {
  Future<Uint8List?> Function()? getBytesDoc_API,
  String? waiterMessage,
  bool? isBusy_ParentPage,
  List<String?>? emailsCli,
  String? email_Body,
  String? email_Subject,
  List<String>? liAddons_FilesPath,
  String? Function(String link)? pagePDF_title,
  bool saveObjBeforeView = true,
  Future Function()? onSaveObj,
}) async {
  if (saveObjBeforeView) {
    parentState(() {
      waiterMessage = "Sto Preparando il Documento da Visualizzare";
      isBusy_ParentPage = true;
    });
    var x = await xDialog(context, BTN_Label_YES: "Salva", BTNno_Visible: false, BTN_Label_NO: "", title: "Hai modificato i Dati, per vedere il Documento salva i dati.", onPressed: () {
      Navigator.pop(context, true);
    });
    if (x != null && x) {
      await onSaveObj!();
      await xCMD_GenPDF_Page(parentState, context, getUrls_API, obj_Parent, getBytesDoc_API: getBytesDoc_API, email_Body: email_Body, email_Subject: email_Subject, emailsCli: emailsCli, isBusy_ParentPage: isBusy_ParentPage, liAddons_FilesPath: liAddons_FilesPath, waiterMessage: waiterMessage);
    }
  } else {
    await xCMD_GenPDF_Page(parentState, context, getUrls_API, obj_Parent, getBytesDoc_API: getBytesDoc_API, email_Body: email_Body, email_Subject: email_Subject, emailsCli: emailsCli, isBusy_ParentPage: isBusy_ParentPage, liAddons_FilesPath: liAddons_FilesPath, waiterMessage: waiterMessage);
  }
}