diff --git a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/DialogAskLivelloPosizione.java b/app/src/main/java/it/integry/integrywmsnative/view/dialogs/DialogAskLivelloPosizione.java deleted file mode 100644 index ee3e1769..00000000 --- a/app/src/main/java/it/integry/integrywmsnative/view/dialogs/DialogAskLivelloPosizione.java +++ /dev/null @@ -1,162 +0,0 @@ -package it.integry.integrywmsnative.view.dialogs; - -import android.app.Dialog; -import android.content.Context; - -import android.graphics.Color; -import android.graphics.drawable.ColorDrawable; -import android.text.Editable; -import android.text.TextWatcher; -import android.view.LayoutInflater; -import android.view.View; -import android.widget.TextView; - -import androidx.fragment.app.FragmentActivity; - -import com.google.android.material.textfield.TextInputLayout; - -import it.integry.integrywmsnative.R; -import it.integry.integrywmsnative.core.expansion.RunnableArgs; -import it.integry.integrywmsnative.core.model.MtbDepoPosizione; -import it.integry.integrywmsnative.core.utility.UtilityDialog; -import it.integry.integrywmsnative.core.utility.UtilityFocus; -import it.integry.integrywmsnative.core.utility.UtilityPosizione; - -public class DialogAskLivelloPosizione { - - - private Context mContext; - private MtbDepoPosizione mtbDepoPosizione; - - private Dialog mDialog; - - private RunnableArgs onComplete; - private RunnableArgs onFailed; - - private TextInputLayout livelloTextInputLayout; - - private boolean completedFLow = false; - - public static void make(FragmentActivity activity, MtbDepoPosizione mtbDepoPosizione, boolean canAbort, RunnableArgs onComplete, RunnableArgs onFailed) { - activity.runOnUiThread(() -> { - new DialogAskLivelloPosizione(activity, mtbDepoPosizione, canAbort, onComplete, onFailed).mDialog.show(); - }); - } - - - - public DialogAskLivelloPosizione(Context context, MtbDepoPosizione mtbDepoPosizione, boolean canAbort, RunnableArgs onComplete, RunnableArgs onFailed) { - mContext = context; - this.mtbDepoPosizione = mtbDepoPosizione; - this.onComplete = onComplete; - this.onFailed = onFailed; - - LayoutInflater inflater = (LayoutInflater) context.getSystemService( Context.LAYOUT_INFLATER_SERVICE ); - View currentView = inflater.inflate(R.layout.dialog_ask_livello_posizione, null, false); - - mDialog = new Dialog(mContext); - mDialog.setContentView(currentView); - mDialog.setCanceledOnTouchOutside(false); - mDialog.setCancelable(false); - mDialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); - - UtilityDialog.setTo90PercentWidth(mContext, mDialog); - - mDialog.setOnDismissListener(dialog -> { - if(!completedFLow) onComplete.run(null); - }); - - mDialog.setOnShowListener(dialog -> { - - if(!canAbort) currentView.findViewById(R.id.button_abort).setVisibility(View.GONE); - - - currentView.findViewById(R.id.button_confirm).setOnClickListener(v -> { - String levelNumber = ((TextView)currentView.findViewById(R.id.level_number)).getText().toString(); - onLevelConfirm(levelNumber); - }); - - currentView.findViewById(R.id.button_abort).setOnClickListener(v -> { - onLevelAbort(); - }); - - livelloTextInputLayout = currentView.findViewById(R.id.level_number_layout); - - - UtilityFocus.focusTextBox(mContext, livelloTextInputLayout.getEditText()); - livelloTextInputLayout.getEditText().addTextChangedListener(new TextWatcher() { - @Override - public void beforeTextChanged(CharSequence s, int start, int count, int after) { - - } - - @Override - public void onTextChanged(CharSequence s, int start, int before, int count) { - if(livelloTextInputLayout.getEditText().getText() != null) { - validateLevel(livelloTextInputLayout.getEditText().getText().toString()); - } else resetLevelError(); - } - - @Override - public void afterTextChanged(Editable s) { - - } - }); - - }); - - - } - - - private void onLevelConfirm(String levelString) { - - String newPosizione = mtbDepoPosizione.getPosizione().substring(0, mtbDepoPosizione.getPosizione().length()-1); - newPosizione += levelString; - - MtbDepoPosizione foundPosizione = UtilityPosizione.getFromCache(newPosizione); - - if(foundPosizione != null) { - resetLevelError(); - - completedFLow = true; - onComplete.run(foundPosizione); - mDialog.dismiss(); - - - } else { - setLevelError(mContext.getResources().getString(R.string.not_valid)); - } - } - - - private void validateLevel(String levelString) { - String newPosizione = mtbDepoPosizione.getPosizione().substring(0, mtbDepoPosizione.getPosizione().length()-1); - newPosizione += levelString; - - if(UtilityPosizione.getFromCache(newPosizione) != null) { - resetLevelError(); - } else setLevelError(mContext.getResources().getString(R.string.not_valid)); - } - - private void setLevelError(String message){ - livelloTextInputLayout.setErrorEnabled(true); - livelloTextInputLayout.setError(message); - livelloTextInputLayout.setErrorIconDrawable(null); - } - - private void resetLevelError() { - livelloTextInputLayout.setError(null); - } - - - private void onLevelAbort() { - completedFLow = true; - onComplete.run(null); - mDialog.dismiss(); - } - - -} - -