/* Tibisay Movil Copyright (C) 2013 Antonio Araujo (aaraujo@cenditel.gob.ve), Jose Ruiz (jruiz@cenditel.gob.ve), Fundacion Centro Nacional de Desarrollo e Investigacion en Tecnologias Libres - CENDITEL. La Fundación CENDITEL concede permiso para usar, copiar, distribuir y/o modificar este programa, reconociendo el derecho que la humanidad posee al libre acceso al conocimiento, bajo los términos de la licencia de software GPL versión 2.0 de la Free Software Foundation. Este programa se distribuye con la esperanza de que sea util, pero SIN NINGUNA GARANTIA; tampoco las implicitas garantias de MERCANTILIDAD o ADECUACION A UN PROPOSITO PARTICULAR. Para mayor información sobre los términos de la licencia ver el archivo llamado "gpl-2.0.txt" en ingles. */ package ve.gob.cenditel.tibisaymovil; import android.app.Activity; import android.app.Dialog; import android.text.Editable; import android.text.TextWatcher; import android.view.Window; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; public class PasswordConfirmationDialog extends Dialog implements TextWatcher { private PasswordConfirmationView viewHolder; public PasswordConfirmationDialog(Activity activity, int titleId) { super(activity); this.viewHolder = new PasswordConfirmationView(activity, titleId); } public void setAcceptListener(android.view.View.OnClickListener listener) { this.viewHolder.accept.setOnClickListener(listener); } public String getPassword() { return this.viewHolder.password.getText().toString(); } @Override public void afterTextChanged(Editable s) { if (this.viewHolder.password.length() > 0 && this.viewHolder.password.getText().toString().equals( this.viewHolder.confirmation.getText().toString())) { this.viewHolder.accept.setEnabled(true); } else { this.viewHolder.accept.setEnabled(false); } } @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) {} @Override public void onTextChanged(CharSequence s, int start, int before, int count) {} private class PasswordConfirmationView { public EditText password; public EditText confirmation; public Button accept; public TextView title; public PasswordConfirmationView(Activity activity, int titleId) { setOwnerActivity(activity); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.password_confirmation); this.title = (TextView) findViewById(R.id.title); this.title.setText(titleId); this.password = (EditText) findViewById(R.id.password); this.confirmation = (EditText) findViewById(R.id.confirmation); this.accept = (Button) findViewById(R.id.button_accept); this.password.addTextChangedListener(PasswordConfirmationDialog.this); this.confirmation.addTextChangedListener(PasswordConfirmationDialog.this); } } }