Implementato nuovo dialog per la creazione/apertura di una UL

This commit is contained in:
2019-03-22 10:06:26 +01:00
parent d26483aa3e
commit d433d1a22c
4 changed files with 138 additions and 60 deletions

View File

@@ -1,9 +1,13 @@
package it.integry.integrywmsnative.view.dialogs.scan_or_create_lu;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.Context;
import androidx.databinding.DataBindingUtil;
import androidx.appcompat.app.AlertDialog;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.text.SpannableString;
import android.view.LayoutInflater;
import android.view.View;
@@ -33,7 +37,7 @@ public class DialogScanOrCreateLU {
private Context currentContext;
private AlertDialog currentAlert;
private Dialog mDialog;
private DialogScanOrCreateLuBinding mBinding;
@@ -42,12 +46,12 @@ public class DialogScanOrCreateLU {
private MtbColt currentMtbColt;
public static AlertDialog make(final Context context, RunnableArgs<MtbColt> onDialogDismiss) {
return new DialogScanOrCreateLU(context, false, onDialogDismiss).currentAlert;
public static Dialog make(final Context context, RunnableArgs<MtbColt> onDialogDismiss) {
return new DialogScanOrCreateLU(context, false, onDialogDismiss).mDialog;
}
public static AlertDialog make(final Context context, boolean disableCreation, RunnableArgs<MtbColt> onDialogDismiss) {
return new DialogScanOrCreateLU(context, disableCreation, onDialogDismiss).currentAlert;
public static Dialog make(final Context context, boolean disableCreation, RunnableArgs<MtbColt> onDialogDismiss) {
return new DialogScanOrCreateLU(context, disableCreation, onDialogDismiss).mDialog;
}
private DialogScanOrCreateLU(Context context, boolean disableCreation, RunnableArgs<MtbColt> onDialogDismiss) {
@@ -62,11 +66,11 @@ public class DialogScanOrCreateLU {
if(disableCreation) mBinding.dialogScanOrCreateLuCreationLayout.setVisibility(View.GONE);
final AlertDialog.Builder alertDialog = new AlertDialog.Builder(context)
.setView(mBinding.getRoot());
currentAlert = alertDialog.create();
currentAlert.setCanceledOnTouchOutside(false);
mDialog = new Dialog(context);
mDialog.setContentView(mBinding.getRoot());
mDialog.setCanceledOnTouchOutside(false);
// mDialog.setCancelable(false);
mDialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
init(onDialogDismiss);
initBarcode(context);
@@ -93,7 +97,7 @@ public class DialogScanOrCreateLU {
.setOnScanSuccessfull(onScanSuccessfull)
.setOnScanFailed(ex -> UtilityExceptions.defaultException(context, ex, false)));
currentAlert.setOnDismissListener(dialog -> {
mDialog.setOnDismissListener(dialog -> {
BarcodeManager.removeCallback(barcodeIstanceID);
BarcodeManager.enable();
if(currentMtbColt == null) {
@@ -244,7 +248,7 @@ public class DialogScanOrCreateLU {
private void sendMtbColt(MtbColt mtbColtToSend, ProgressDialog progressDialog) {
currentMtbColt = mtbColtToSend;
progressDialog.dismiss();
currentAlert.dismiss();
mDialog.dismiss();
mOnDialogDismiss.run(mtbColtToSend);
}