Example usage for com.google.gwt.user.client Timer Timer

List of usage examples for com.google.gwt.user.client Timer Timer

Introduction

In this page you can find the example usage for com.google.gwt.user.client Timer Timer.

Prototype

Timer

Source Link

Usage

From source file:com.automaster.client.ui.paineis.dialogs.editar.cadastronovo.EditarNovoEmail.java

public EditarNovoEmail(final TreeMap<String, ArrayList<TreeMap<String, String>>> clienteEdicao,
        final ListGrid listEmailEditarCliente, final ListGrid emailBuscarCliente) {

    //GWT.log("Editar Novo Endereo");
    setTitle("Novo Email");
    setWidth(500);//from ww  w  . j av a 2  s . c  om
    setHeight(280);
    setShowMinimizeButton(false);
    setIsModal(true);
    setShowModalMask(true);
    centerInPage();
    setLayoutAlign(Alignment.CENTER);

    final DynamicForm formEditarNovoEmail = new DynamicForm();
    formEditarNovoEmail.setAutoFocus(true);

    Label label = new Label("<strong><h3>Cadastrar Novo Email</h3></strong>");
    label.setAlign(Alignment.CENTER);
    label.setStyleName(scClassName);

    final TextItem itemDescricao = new TextItem();
    itemDescricao.setTitle("Descrio");
    itemDescricao.setName("descricao");
    itemDescricao.setKeyPressFilter("[a-zA-Z?? [0-9]");
    itemDescricao.setCharacterCasing(CharacterCasing.UPPER);
    itemDescricao.setRequired(true);
    itemDescricao.setWidth(300);
    LengthRangeValidator tamanhoDescricao = new LengthRangeValidator();
    tamanhoDescricao.setMin(3);
    itemDescricao.setValidators(tamanhoDescricao);

    RegExpValidator emailValidator = new RegExpValidator();
    emailValidator.setExpression("^([a-zA-Z0-9_.\\-+])+@(([a-zA-Z0-9\\-])+\\.)+[a-zA-Z0-9]{2,4}$");
    emailValidator.setErrorMessage("Campo invlido! Ex: nome@dominio.com");

    final TextItem itemEmail = new TextItem();
    itemEmail.setTitle("Email");
    itemEmail.setName("email");
    itemEmail.setRequired(true);
    itemEmail.setWidth(300);
    itemEmail.setValidators(emailValidator);

    formEditarNovoEmail.setFields(itemDescricao, itemEmail);

    HLayout hButoes = new HLayout();
    hButoes.setWidth(200);
    hButoes.setMembersMargin(3);
    hButoes.setLayoutAlign(Alignment.CENTER);
    IButton cadastrar = new IButton("Cadastrar");
    IButton limpar = new IButton("Limpar");
    hButoes.setMargin(5);
    hButoes.addMember(cadastrar);
    hButoes.addMember(limpar);

    addCloseClickHandler(new CloseClickHandler() {

        @Override
        public void onCloseClick(CloseClickEvent event) {
            destroy();
        }
    });

    cadastrar.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {

            if (formEditarNovoEmail.validate()) {
                contador = 0;
                final Window janelaCarregando = new Window();
                janelaCarregando.setShowTitle(false);
                janelaCarregando.setWidth(100);
                janelaCarregando.setHeight(50);
                janelaCarregando.setShowEdges(false);
                janelaCarregando.setShowCloseButton(false);
                janelaCarregando.setShowMinimizeButton(false);
                janelaCarregando.setIsModal(true);
                janelaCarregando.setShowModalMask(true);
                janelaCarregando.centerInPage();
                janelaCarregando.setLayoutAlign(Alignment.CENTER);
                final Label mensagem = new Label("Carregando..");
                mensagem.setHeight(16);

                new Timer() {
                    public void run() {

                        if (contador != 100) {
                            //destroy();
                            contador += 1 + (int) (5 * Math.random());
                            schedule(1 + (int) (50 * Math.random()));
                            mensagem.setContents("Carregando: " + contador + "%");
                            //GWT.log("!=100: "+contador);
                            janelaCarregando.addItem(mensagem);
                            janelaCarregando.setAnimateTime(1200);
                            janelaCarregando.animateShow(AnimationEffect.FADE);

                            if (contador >= 100) {
                                mensagem.setContents("Carregando: 100%");
                                //GWT.log("chave C: "+clienteEdicao.firstKey());
                                TreeMap<String, String> editarNovoEmail = new TreeMap<String, String>();
                                //editarNovoEndereco.put("codEndereco", "");
                                editarNovoEmail.put("codCliente", clienteEdicao.firstKey());
                                editarNovoEmail.put("descricaoEmail", itemDescricao.getValueAsString());
                                editarNovoEmail.put("email", itemEmail.getValueAsString());

                                Info.dbService.cadastrarNovoEmail(editarNovoEmail,
                                        new AsyncCallback<Boolean>() {

                                            @Override
                                            public void onFailure(Throwable caught) {
                                                throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                                            }

                                            @Override
                                            public void onSuccess(Boolean emailAdicionado) {
                                                if (emailAdicionado == true) {
                                                    Info.dbService
                                                            .buscarUltimoEmail(new AsyncCallback<Integer>() {

                                                                @Override
                                                                public void onFailure(Throwable caught) {
                                                                    throw new UnsupportedOperationException(
                                                                            "Not supported yet. Busca Ultimo End adicionado"); //To change body of generated methods, choose Tools | Templates.
                                                                }

                                                                @Override
                                                                public void onSuccess(Integer codUltimoEmail) {
                                                                    if (codUltimoEmail != 0) {

                                                                        ArrayList<TreeMap<String, String>> clienteDadosAtualizados = clienteEdicao
                                                                                .get(clienteEdicao.firstKey());
                                                                        TreeMap<String, String> editarNovoEndereco = new TreeMap<String, String>();
                                                                        editarNovoEndereco.put("nomeCliente",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("nomeCliente"));
                                                                        editarNovoEndereco.put("dataAdesao",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("dataAdesao"));
                                                                        editarNovoEndereco.put("tipoCliente",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("tipoCliente"));
                                                                        editarNovoEndereco.put("codUnidade",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codUnidade"));
                                                                        editarNovoEndereco.put("nomeUnidade",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("nomeUnidade"));
                                                                        editarNovoEndereco.put("codEndereco",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codEndereco"));
                                                                        editarNovoEndereco.put("codCliente",
                                                                                clienteEdicao.firstKey());
                                                                        editarNovoEndereco.put(
                                                                                "descricaoEndereco",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("descricaoEndereco"));
                                                                        editarNovoEndereco.put("logradouro",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("logradouro"));
                                                                        editarNovoEndereco.put("numeroEndereco",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("numeroEndereco"));
                                                                        editarNovoEndereco.put("bairro",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("bairro"));
                                                                        editarNovoEndereco.put("codCidade",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codCidade"));
                                                                        editarNovoEndereco.put("nomeCidade",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("nomeCidade"));
                                                                        editarNovoEndereco.put("codEstado",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codEstado"));
                                                                        editarNovoEndereco.put("estadoUf",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("estadoUf"));
                                                                        editarNovoEndereco.put("cep",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("cep"));
                                                                        editarNovoEndereco.put(
                                                                                "referenciaEndereco",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("referenciaEndereco"));
                                                                        editarNovoEndereco.put("codFone",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codFone"));
                                                                        editarNovoEndereco.put("descricaoFone",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("descricaoFone"));
                                                                        editarNovoEndereco.put("numeroFone",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("numeroFone"));
                                                                        editarNovoEndereco.put("codEmail",
                                                                                String.valueOf(codUltimoEmail));
                                                                        editarNovoEndereco.put("descricaoEmail",
                                                                                itemDescricao
                                                                                        .getValueAsString());
                                                                        editarNovoEndereco.put("email",
                                                                                itemEmail.getValueAsString());
                                                                        editarNovoEndereco.put("codUsuario",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codUsuario"));
                                                                        editarNovoEndereco.put("usuario",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("usuario"));
                                                                        editarNovoEndereco.put("senha",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("senha"));
                                                                        editarNovoEndereco.put("ativoUsuario",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("ativoUuario"));
                                                                        editarNovoEndereco.put("codGrupo",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codGrupo"));
                                                                        editarNovoEndereco.put("nomeGrupo",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("nomeGrupo"));
                                                                        editarNovoEndereco.put("codEmpresa",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codEmpresa"));
                                                                        editarNovoEndereco.put("cnpj",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("cnpj"));
                                                                        editarNovoEndereco.put("dataAbertura",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("dataAbertura"));
                                                                        editarNovoEndereco.put("responsavel",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("responsavel"));
                                                                        editarNovoEndereco.put("cargo",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("cargo"));
                                                                        editarNovoEndereco.put("codPessoa",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codPessoa"));
                                                                        editarNovoEndereco.put("cpf",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("cpf"));
                                                                        editarNovoEndereco.put("dataNasc",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("dataNasc"));
                                                                        editarNovoEndereco.put("profissao",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("profissao"));
                                                                        editarNovoEndereco.put("trabalhoPessoa",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("trabalhoPessoa"));
                                                                        clienteDadosAtualizados
                                                                                .add(editarNovoEndereco);
                                                                        clienteEdicao.put(
                                                                                clienteEdicao.firstKey(),
                                                                                clienteDadosAtualizados);
                                                                        //GWT.log("Cliente Edio: "+clienteEdicao);
                                                                        //GWT.log("Ultimo Email: "+codUltimoEmail);
                                                                        Record novoEmail = new Record();
                                                                        novoEmail.setAttribute("codigo",
                                                                                String.valueOf(codUltimoEmail));
                                                                        novoEmail.setAttribute("descricao",
                                                                                itemDescricao
                                                                                        .getValueAsString());
                                                                        novoEmail.setAttribute("email",
                                                                                itemEmail.getValueAsString());

                                                                        listEmailEditarCliente
                                                                                .addData(novoEmail);
                                                                        emailBuscarCliente.addData(novoEmail);
                                                                        SC.say("Novo Email cadastrado com sucesso");
                                                                    } else {
                                                                        SC.warn("Erro ao buscar ultimo email cadastrado");
                                                                    }
                                                                }
                                                            });
                                                } else {
                                                    GWT.log("Erro ao inserir novo email!");
                                                }
                                            }
                                        });
                                janelaCarregando.addItem(mensagem);
                                janelaCarregando.setAnimateTime(1200);
                                janelaCarregando.animateHide(AnimationEffect.FADE);
                                contador = 100;
                                janelaCarregando.destroy();
                            }
                        } else {
                            contador = 0;
                        }

                    }
                }.schedule(50);
                //GWT.log(novoEnd.getAttribute("cidade"));
                destroy();
            }

        }
    });

    limpar.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            itemDescricao.clearValue();
            itemEmail.clearValue();
            formEditarNovoEmail.focusInItem(itemDescricao);
        }
    });

    addItem(label);
    addItem(formEditarNovoEmail);
    addItem(hButoes);

}

From source file:com.automaster.client.ui.paineis.dialogs.editar.cadastronovo.EditarNovoEndereco.java

public EditarNovoEndereco(final TreeMap<String, ArrayList<TreeMap<String, String>>> clienteEdicao,
        final ListGrid listEnderecoEditarCliente, final ListGrid enderecosTabBuscaCliente) {
    //GWT.log("Editar Novo Endereo");
    setTitle("Novo Endereo");
    setWidth(500);/*from   ww w.  jav  a  2s.  c om*/
    setHeight(500);
    setShowMinimizeButton(false);
    setIsModal(true);
    setShowModalMask(true);
    centerInPage();
    //setMargin(5);
    setLayoutAlign(Alignment.CENTER);

    final DynamicForm formNovoEndereco = new DynamicForm();
    formNovoEndereco.setAutoFocus(true);
    Label label = new Label("<h3>Cadastrar Novo Endereo</h3>");
    label.setAlign(Alignment.CENTER);
    label.setStyleName(scClassName);
    //criando radioGroup que o usurio escolhe o tipo de cliente a ser cadastrado
    final TextItem itemDescricao = new TextItem();
    itemDescricao.setTitle("Descrio");
    itemDescricao.setName("descricao");
    itemDescricao.setKeyPressFilter("[a-zA-Z?? [0-9]");
    if (listEnderecoEditarCliente.getRecordList().isEmpty()) {
        itemDescricao.setValue("ENDEREO DE COBRANA");
        itemDescricao.disable();
    }
    itemDescricao.setRequired(true);
    itemDescricao.setCharacterCasing(CharacterCasing.UPPER);
    itemDescricao.setWidth(300);

    LengthRangeValidator tamanhoTextItem = new LengthRangeValidator();
    tamanhoTextItem.setMin(3);

    final TextItem itemLogradouro = new TextItem("Logradouro");
    //itemLogradouro.setTitleOrientation(TitleOrientation.TOP);
    itemLogradouro.setKeyPressFilter("[a-zA-Z?? [0-9]");
    itemLogradouro.setCharacterCasing(CharacterCasing.UPPER);
    itemLogradouro.setRequired(true);
    itemLogradouro.setWidth(300);
    itemLogradouro.setValidators(tamanhoTextItem);

    final TextItem itemNumero = new TextItem("N");
    itemNumero.setKeyPressFilter("[a-zA-Z[0-9]");
    //itemNumero.setTitleOrientation(TitleOrientation.TOP);
    itemNumero.setCharacterCasing(CharacterCasing.UPPER);
    itemNumero.setRequired(true);
    itemNumero.setWidth(50);

    final TextItem itemBairro = new TextItem("Bairro");
    itemBairro.setKeyPressFilter("[a-zA-Z?? [0-9]");
    itemBairro.setCharacterCasing(CharacterCasing.UPPER);
    itemBairro.setRequired(true);
    itemBairro.setValidators(tamanhoTextItem);
    itemBairro.setWidth(300);

    itemEstado.setTitle("Estado");
    itemEstado.setName("estado");
    itemEstado.setWidth(300);
    itemEstado.setRequired(true);

    Info.dbService.buscarTodosEstados(new AsyncCallback<ArrayList<TreeMap<String, String>>>() {

        @Override
        public void onFailure(Throwable caught) {
            throw new UnsupportedOperationException(
                    "Erro ao Listar os Estados, entre em contato com Administrador!");
        }

        @Override
        public void onSuccess(ArrayList<TreeMap<String, String>> result) {
            LinkedHashMap<String, String> valueMapEst = new LinkedHashMap<String, String>();
            for (TreeMap<String, String> est : result) {
                valueMapEst.put(est.get("codEstado"), est.get("uf"));
                //com.google.gwt.core.shared.GWT.log(est.get("codEstado") + " " + est.get("uf"));
            }
            //com.google.gwt.core.shared.GWT.log("antes do required PF");
            itemEstado.setValueMap(valueMapEst);

        }
    });

    itemEstado.setDefaultValue(true);
    itemEstado.setValue("14");

    Info.dbService.buscarCidadePorEstado(Integer.parseInt(itemEstado.getValueAsString()),
            new AsyncCallback<ArrayList<TreeMap<String, String>>>() {

                @Override
                public void onFailure(Throwable caught) {
                    throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                }

                @Override
                public void onSuccess(ArrayList<TreeMap<String, String>> result) {

                    LinkedHashMap<String, String> valueMapCid = new LinkedHashMap<String, String>();
                    for (TreeMap<String, String> est : result) {
                        valueMapCid.put(est.get("codCidade"), est.get("nome"));

                    }
                    itemCidade.setValueMap(valueMapCid);
                    itemCidade.setValue("2418");

                }

            });
    itemCidade.setWidth(300);
    itemCidade.setAddUnknownValues(false);
    itemCidade.setDefaultToFirstOption(true);

    itemEstado.addChangeHandler(new ChangeHandler() {

        @Override
        public void onChange(ChangeEvent event) {
            String selectedItem = (String) event.getValue();

            Info.dbService.buscarCidadePorEstado(Integer.parseInt(selectedItem),
                    new AsyncCallback<ArrayList<TreeMap<String, String>>>() {

                        @Override
                        public void onFailure(Throwable caught) {
                            throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                        }

                        @Override
                        public void onSuccess(ArrayList<TreeMap<String, String>> result) {

                            LinkedHashMap<String, String> valueMapCid = new LinkedHashMap<String, String>();
                            for (TreeMap<String, String> est : result) {
                                valueMapCid.put(est.get("codCidade"), est.get("nome"));
                            }
                            itemCidade.setValueMap(valueMapCid);

                        }

                    });
        }
    });

    itemCidade.setRequired(true);

    LengthRangeValidator tamanhoCep = new LengthRangeValidator();
    tamanhoCep.setMin(9);

    final TextItem itemCep = new TextItem("CEP");
    itemCep.setMask("#####-###");
    itemCep.setMaskSaveLiterals(true);
    itemCep.setCharacterCasing(CharacterCasing.UPPER);
    itemCep.setValidators(tamanhoCep);
    itemCep.setRequired(true);

    final TextAreaItem itemReferencia = new TextAreaItem();
    itemReferencia.setTitle("Referncia");
    itemReferencia.setValidators(tamanhoTextItem);
    itemReferencia.setWidth(300);
    itemReferencia.setHeight(100);
    itemReferencia.setValue("");

    addCloseClickHandler(new CloseClickHandler() {

        @Override
        public void onCloseClick(CloseClickEvent event) {
            destroy();
        }
    });

    HLayout hButoes = new HLayout();
    hButoes.setWidth(200);
    hButoes.setMembersMargin(3);
    hButoes.setLayoutAlign(Alignment.CENTER);
    IButton cadastrar = new IButton("Cadastrar");
    IButton limpar = new IButton("Limpar");
    hButoes.addMember(cadastrar);
    hButoes.addMember(limpar);

    cadastrar.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {

            if (formNovoEndereco.validate()) {

                contador = 0;
                final Window janelaCarregando = new Window();
                janelaCarregando.setShowTitle(false);
                janelaCarregando.setWidth(100);
                janelaCarregando.setHeight(50);
                janelaCarregando.setShowEdges(false);
                janelaCarregando.setShowCloseButton(false);
                janelaCarregando.setShowMinimizeButton(false);
                janelaCarregando.setIsModal(true);
                janelaCarregando.setShowModalMask(true);
                janelaCarregando.centerInPage();
                janelaCarregando.setLayoutAlign(Alignment.CENTER);
                final Label mensagem = new Label("Carregando..");
                mensagem.setHeight(16);

                new Timer() {
                    public void run() {

                        if (contador != 100) {
                            //destroy();
                            contador += 1 + (int) (5 * Math.random());
                            schedule(1 + (int) (50 * Math.random()));
                            mensagem.setContents("Carregando: " + contador + "%");
                            //GWT.log("!=100: "+contador);
                            janelaCarregando.addItem(mensagem);
                            janelaCarregando.setAnimateTime(1200);
                            janelaCarregando.animateShow(AnimationEffect.FADE);

                            if (contador >= 100) {
                                mensagem.setContents("Carregando: 100%");

                                //GWT.log("chave C: "+clienteEdicao.firstKey());
                                TreeMap<String, String> editarNovoEndereco = new TreeMap<String, String>();
                                //editarNovoEndereco.put("codEndereco", "");
                                editarNovoEndereco.put("codCliente", clienteEdicao.firstKey());
                                editarNovoEndereco.put("descricaoEndereco", itemDescricao.getValueAsString());
                                editarNovoEndereco.put("logradouro", itemLogradouro.getValueAsString());
                                editarNovoEndereco.put("numeroEndereco", itemNumero.getValueAsString());
                                editarNovoEndereco.put("bairro", itemBairro.getValueAsString());
                                editarNovoEndereco.put("codCidade", itemCidade.getValueAsString());
                                editarNovoEndereco.put("nomeCidade", itemCidade.getDisplayValue());
                                editarNovoEndereco.put("codEstado", itemEstado.getValueAsString());
                                editarNovoEndereco.put("estadoUf", itemEstado.getDisplayValue());
                                editarNovoEndereco.put("cep", itemCep.getValueAsString());
                                editarNovoEndereco.put("referenciaEndereco", itemReferencia.getValueAsString());

                                Info.dbService.cadastrarNovoEndereco(editarNovoEndereco,
                                        new AsyncCallback<Boolean>() {

                                            @Override
                                            public void onFailure(Throwable caught) {
                                                throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                                            }

                                            @Override
                                            public void onSuccess(Boolean enderecoAdicionado) {
                                                if (enderecoAdicionado == true) {
                                                    Info.dbService
                                                            .buscarUltimoEndereco(new AsyncCallback<Integer>() {

                                                                @Override
                                                                public void onFailure(Throwable caught) {
                                                                    throw new UnsupportedOperationException(
                                                                            "Not supported yet. Busca Ultimo End adicionado"); //To change body of generated methods, choose Tools | Templates.
                                                                }

                                                                @Override
                                                                public void onSuccess(
                                                                        Integer codUltimoEndereco) {
                                                                    if (codUltimoEndereco != 0) {

                                                                        ArrayList<TreeMap<String, String>> clienteDadosAtualizados = clienteEdicao
                                                                                .get(clienteEdicao.firstKey());
                                                                        TreeMap<String, String> editarNovoEndereco = new TreeMap<String, String>();
                                                                        editarNovoEndereco.put("nomeCliente",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("nomeCliente"));
                                                                        editarNovoEndereco.put("dataAdesao",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("dataAdesao"));
                                                                        editarNovoEndereco.put("tipoCliente",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("tipoCliente"));
                                                                        editarNovoEndereco.put("codUnidade",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codUnidade"));
                                                                        editarNovoEndereco.put("nomeUnidade",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("nomeUnidade"));
                                                                        editarNovoEndereco.put("codEndereco",
                                                                                String.valueOf(
                                                                                        codUltimoEndereco));
                                                                        editarNovoEndereco.put("codCliente",
                                                                                clienteEdicao.firstKey());
                                                                        editarNovoEndereco.put(
                                                                                "descricaoEndereco",
                                                                                itemDescricao
                                                                                        .getValueAsString());
                                                                        editarNovoEndereco.put("logradouro",
                                                                                itemLogradouro
                                                                                        .getValueAsString());
                                                                        editarNovoEndereco.put("numeroEndereco",
                                                                                itemNumero.getValueAsString());
                                                                        editarNovoEndereco.put("bairro",
                                                                                itemBairro.getValueAsString());
                                                                        editarNovoEndereco.put("codCidade",
                                                                                itemCidade.getValueAsString());
                                                                        editarNovoEndereco.put("nomeCidade",
                                                                                itemCidade.getDisplayValue());
                                                                        editarNovoEndereco.put("codEstado",
                                                                                itemEstado.getValueAsString());
                                                                        editarNovoEndereco.put("estadoUf",
                                                                                itemEstado.getDisplayValue());
                                                                        editarNovoEndereco.put("cep",
                                                                                itemCep.getValueAsString());
                                                                        editarNovoEndereco.put(
                                                                                "referenciaEndereco",
                                                                                itemReferencia
                                                                                        .getValueAsString());
                                                                        editarNovoEndereco.put("codFone",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codFone"));
                                                                        editarNovoEndereco.put("descricaoFone",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("descricaoFone"));
                                                                        editarNovoEndereco.put("numeroFone",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("numeroFone"));
                                                                        editarNovoEndereco.put("descricaoEmail",
                                                                                null);
                                                                        editarNovoEndereco.put("codEmail",
                                                                                null);
                                                                        editarNovoEndereco.put("email", null);
                                                                        editarNovoEndereco.put("codUsuario",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codUsuario"));
                                                                        editarNovoEndereco.put("usuario",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("usuario"));
                                                                        editarNovoEndereco.put("senha",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("senha"));
                                                                        editarNovoEndereco.put("ativoUsuario",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("ativoUuario"));
                                                                        editarNovoEndereco.put("codGrupo",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codGrupo"));
                                                                        editarNovoEndereco.put("nomeGrupo",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("nomeGrupo"));
                                                                        editarNovoEndereco.put("codEmpresa",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codEmpresa"));
                                                                        editarNovoEndereco.put("cnpj",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("cnpj"));
                                                                        editarNovoEndereco.put("dataAbertura",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("dataAbertura"));
                                                                        editarNovoEndereco.put("responsavel",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("responsavel"));
                                                                        editarNovoEndereco.put("cargo",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("cargo"));
                                                                        editarNovoEndereco.put("codPessoa",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codPessoa"));
                                                                        editarNovoEndereco.put("cpf",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("cpf"));
                                                                        editarNovoEndereco.put("dataNasc",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("dataNasc"));
                                                                        editarNovoEndereco.put("profissao",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("profissao"));
                                                                        editarNovoEndereco.put("trabalhoPessoa",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("trabalhoPessoa"));
                                                                        clienteDadosAtualizados
                                                                                .add(editarNovoEndereco);
                                                                        clienteEdicao.put(
                                                                                clienteEdicao.firstKey(),
                                                                                clienteDadosAtualizados);
                                                                        //GWT.log(""+clienteEdicao);
                                                                        //GWT.log(""+codUltimoEndereco);
                                                                        Record novoEnd = new Record();
                                                                        novoEnd.setAttribute("codigo", String
                                                                                .valueOf(codUltimoEndereco));
                                                                        novoEnd.setAttribute("descricao",
                                                                                itemDescricao
                                                                                        .getValueAsString());
                                                                        novoEnd.setAttribute("logradouro",
                                                                                itemLogradouro
                                                                                        .getValueAsString());
                                                                        novoEnd.setAttribute("numero",
                                                                                itemNumero.getValueAsString());
                                                                        novoEnd.setAttribute("bairro",
                                                                                itemBairro.getValueAsString());
                                                                        novoEnd.setAttribute("cep",
                                                                                itemCep.getValueAsString());
                                                                        novoEnd.setAttribute("cidadeCod",
                                                                                itemCidade.getValueAsString());
                                                                        novoEnd.setAttribute("cidade",
                                                                                itemCidade.getDisplayValue());
                                                                        novoEnd.setAttribute("estadoCod",
                                                                                itemEstado.getValueAsString());
                                                                        novoEnd.setAttribute("estado",
                                                                                itemEstado.getDisplayValue());
                                                                        novoEnd.setAttribute("referencia",
                                                                                itemReferencia
                                                                                        .getValueAsString());

                                                                        listEnderecoEditarCliente
                                                                                .addData(novoEnd);
                                                                        enderecosTabBuscaCliente
                                                                                .addData(novoEnd);
                                                                        SC.say("Novo endereo cadastrado com sucesso");
                                                                    } else {
                                                                        SC.warn("Erro ao buscar ultimo endereo cadastrado");
                                                                    }
                                                                }
                                                            });
                                                } else {
                                                    GWT.log("Erro ao inserir o novo endereo!");
                                                }
                                            }
                                        });
                                janelaCarregando.addItem(mensagem);
                                janelaCarregando.setAnimateTime(1200);
                                janelaCarregando.animateHide(AnimationEffect.FADE);
                                contador = 100;
                                janelaCarregando.destroy();
                            }
                        } else {
                            contador = 0;
                        }

                    }
                }.schedule(50);
                //GWT.log(novoEnd.getAttribute("cidade"));
                destroy();
            }
        }
    });

    limpar.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            if (!listEnderecoEditarCliente.getRecordList().isEmpty()) {
                itemDescricao.clearValue();
            }
            itemLogradouro.clearValue();
            itemNumero.clearValue();
            itemBairro.clearValue();
            itemCep.clearValue();
            itemReferencia.clearValue();
            formNovoEndereco.focusInItem(itemLogradouro);
        }
    });

    formNovoEndereco.setFields(itemDescricao, itemLogradouro, itemNumero, itemBairro, itemEstado, itemCidade,
            itemCep, itemReferencia);

    addItem(label);
    addItem(formNovoEndereco);
    addItem(hButoes);

}

From source file:com.automaster.client.ui.paineis.dialogs.editar.cadastronovo.EditarNovoPadraoLigacao.java

public EditarNovoPadraoLigacao(final ListGrid listPadLig,
        final ArrayList<TreeMap<String, String>> dadosVeiculoCopia) {

    final Window windowAux = this;
    setTitle("Novo Padro de Ligao");
    setWidth(500);/*from   w  w w.  j  a v  a 2 s . com*/
    setHeight(400);
    setShowMinimizeButton(false);
    setIsModal(true);
    setShowModalMask(true);
    centerInPage();
    setLayoutAlign(Alignment.CENTER);

    Label label = new Label("<strong><h3>Cadastrar Novo Padro de Ligao</h3></strong>");
    label.setAlign(Alignment.CENTER);
    label.setStyleName(scClassName);

    final DynamicForm formNovoPadLig = new DynamicForm();
    formNovoPadLig.setAutoFocus(true);

    final TextItem corFio = new TextItem();
    corFio.setTitle("Cor do Fio");
    corFio.setName("corFio");
    corFio.setHint("<nbr>*</nbr>");
    corFio.setKeyPressFilter("[a-zA-Z? [0-9]");
    corFio.setRequired(true);
    corFio.setWidth(230);
    corFio.setCharacterCasing(CharacterCasing.UPPER);
    LengthRangeValidator tamanhoNome = new LengthRangeValidator();
    tamanhoNome.setMin(2);
    corFio.setValidators(tamanhoNome);

    final SelectItem sinal = new SelectItem();
    sinal.setTitle("Sinal");
    sinal.setName("sinal");
    LinkedHashMap<String, String> sn = new LinkedHashMap<>();
    sn.put("true", "Positivo");
    sn.put("false", "Negativo");
    sinal.setValueMap(sn);
    sinal.setHint("<nbr>*</nbr>");
    sinal.setRequired(true);
    sinal.setWidth(226);

    final SelectItem padVeic = new SelectItem();
    padVeic.setTitle("Padro do Veculo");
    padVeic.setName("padVeic");
    LinkedHashMap<String, String> padV = new LinkedHashMap<>();
    padV.put("true", "Ligado");
    padV.put("false", "Desligado");
    padVeic.setValueMap(padV);
    padVeic.setHint("<nbr>*</nbr>");
    padVeic.setRequired(true);
    padVeic.setWidth(226);

    final SelectItem funcao = new SelectItem();
    funcao.setTitle("Funo");
    funcao.setName("funcao");
    LinkedHashMap<String, String> fun = new LinkedHashMap<>();
    fun.put("true", "entrada");
    fun.put("false", "saida");
    funcao.setValueMap(fun);
    funcao.setHint("<nbr>*</nbr>");
    funcao.setRequired(true);
    funcao.setWidth(226);

    final SelectItem ativo = new SelectItem();
    ativo.setTitle("Ativo");
    ativo.setName("ativo");
    LinkedHashMap<String, String> at = new LinkedHashMap<>();
    at.put("true", "Sim");
    at.put("false", "No");
    ativo.setValueMap(at);
    ativo.setHint("<nbr>*</nbr>");
    ativo.setRequired(true);
    ativo.setWidth(226);

    final TextAreaItem descricao = new TextAreaItem();
    descricao.setTitle("Descrio");
    descricao.setHeight(100);
    descricao.setWidth(226);
    descricao.setValue("");

    HLayout hButoes = new HLayout();
    hButoes.setWidth(200);
    hButoes.setMembersMargin(3);
    hButoes.setLayoutAlign(Alignment.CENTER);
    IButton cadastrar = new IButton("Cadastrar");
    IButton limpar = new IButton("Limpar");
    hButoes.setMargin(5);
    hButoes.addMember(cadastrar);
    hButoes.addMember(limpar);

    addCloseClickHandler(new CloseClickHandler() {

        @Override
        public void onCloseClick(CloseClickEvent event) {
            windowAux.destroy();
        }
    });
    formNovoPadLig.setTitleOrientation(TitleOrientation.TOP);
    formNovoPadLig.setItems(corFio, sinal, padVeic, funcao, ativo, descricao);

    HLayout hform = new HLayout();
    hform.setWidth(470);
    hform.setMembersMargin(3);
    hform.setLayoutAlign(Alignment.CENTER);
    hform.addMember(formNovoPadLig);

    cadastrar.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {

            if (formNovoPadLig.validate()) {
                contador = 0;
                final Window janelaCarregando = new Window();
                janelaCarregando.setShowTitle(false);
                janelaCarregando.setWidth(100);
                janelaCarregando.setHeight(50);
                janelaCarregando.setShowEdges(false);
                janelaCarregando.setShowCloseButton(false);
                janelaCarregando.setShowMinimizeButton(false);
                janelaCarregando.setIsModal(true);
                janelaCarregando.setShowModalMask(true);
                janelaCarregando.centerInPage();
                janelaCarregando.setLayoutAlign(Alignment.CENTER);
                final Label mensagem = new Label("Carregando..");
                mensagem.setHeight(16);

                new Timer() {
                    public void run() {

                        if (contador != 100) {

                            contador += 1 + (int) (5 * Math.random());
                            schedule(1 + (int) (50 * Math.random()));
                            mensagem.setContents("Carregando: " + contador + "%");
                            janelaCarregando.addItem(mensagem);
                            janelaCarregando.setAnimateTime(1200);
                            janelaCarregando.animateShow(AnimationEffect.FADE);

                            if (contador >= 100) {
                                mensagem.setContents("Carregando: 100%");
                                TreeMap<String, String> novoPadraoLigacao = new TreeMap<String, String>();
                                //GWT.log("Linha 1"+descricao.getValue());
                                novoPadraoLigacao.put("codVeiculo", dadosVeiculoCopia.get(0).get("codVeiculo"));
                                novoPadraoLigacao.put("corFio", corFio.getValueAsString());
                                novoPadraoLigacao.put("sinalPad", sinal.getValueAsString());
                                novoPadraoLigacao.put("padraoLd", padVeic.getValueAsString());
                                novoPadraoLigacao.put("funcaoPad", funcao.getValueAsString());
                                novoPadraoLigacao.put("ativoPad", ativo.getValueAsString());
                                novoPadraoLigacao.put("descricaoPad", descricao.getValueAsString());
                                //GWT.log("Linha 2");
                                Info.dbService.cadastrarPadraoLigacao(novoPadraoLigacao,
                                        new AsyncCallback<Boolean>() {

                                            @Override
                                            public void onFailure(Throwable caught) {
                                                throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                                            }

                                            @Override
                                            public void onSuccess(Boolean novoPadraoLig) {
                                                if (novoPadraoLig == true) {
                                                    Info.dbService.buscarUltimoPadraoLigacao(
                                                            new AsyncCallback<Integer>() {

                                                                @Override
                                                                public void onFailure(Throwable caught) {
                                                                    throw new UnsupportedOperationException(
                                                                            "Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                                                                }

                                                                @Override
                                                                public void onSuccess(Integer ultimoCodPadLig) {
                                                                    if (ultimoCodPadLig > 0) {

                                                                        TreeMap<String, String> veiculo = new TreeMap<String, String>();
                                                                        //GWT.log("Linha 3");
                                                                        veiculo.put("codInstalador",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("codInstalador"));
                                                                        veiculo.put("nomeInstalador",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("nomeInstalador"));
                                                                        veiculo.put("codVeiculoInd", "null");
                                                                        veiculo.put("placaIndicador",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("placaIndicador"));
                                                                        veiculo.put("codParcela",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("codParcela"));
                                                                        veiculo.put("valorParcela",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("valorParcela"));
                                                                        veiculo.put("numeroParcela",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("numeroParcela"));
                                                                        veiculo.put("codTc", dadosVeiculoCopia
                                                                                .get(0).get("codTc"));
                                                                        veiculo.put("descricaoTc",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("descricaoTc"));
                                                                        veiculo.put("codVeiculo",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("codVeiculo"));
                                                                        veiculo.put("placaVeiculo",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("placaVeiculo"));
                                                                        veiculo.put("chassi", dadosVeiculoCopia
                                                                                .get(0).get("chassi"));
                                                                        veiculo.put("fabricante",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("fabricante"));
                                                                        veiculo.put("modelo", dadosVeiculoCopia
                                                                                .get(0).get("modelo"));
                                                                        veiculo.put("cor", dadosVeiculoCopia
                                                                                .get(0).get("cor"));
                                                                        veiculo.put("ano", dadosVeiculoCopia
                                                                                .get(0).get("ano"));
                                                                        veiculo.put("dataAdesao",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("dataAdesao"));
                                                                        veiculo.put("ativoVeic",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("ativoVeic"));
                                                                        veiculo.put("desconto",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("desconto"));
                                                                        veiculo.put("codEquipamento",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("codEquipamento"));
                                                                        veiculo.put("idEquipamento",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("idEquipamento"));
                                                                        veiculo.put("codModeloEquipamento",
                                                                                dadosVeiculoCopia.get(0).get(
                                                                                        "codModeloEquipamento"));
                                                                        veiculo.put("descricaoModelo",
                                                                                dadosVeiculoCopia.get(0).get(
                                                                                        "descricaoModelo"));
                                                                        veiculo.put("fabricanteMod",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("fabricanteMod"));
                                                                        veiculo.put("codPlano",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("codPlano"));
                                                                        veiculo.put("descricaoPlano",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("descricaoPlano"));
                                                                        veiculo.put("valorPlano",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("valorPlano"));
                                                                        veiculo.put("codCidade",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("codCidade"));
                                                                        veiculo.put("cidadeNome",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("cidadeNome"));
                                                                        veiculo.put("codEstado",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("codEstado"));
                                                                        veiculo.put("estadoNome",
                                                                                dadosVeiculoCopia.get(0)
                                                                                        .get("estadoNome"));
                                                                        veiculo.put("codPad", String
                                                                                .valueOf(ultimoCodPadLig));
                                                                        veiculo.put("corFio",
                                                                                corFio.getValueAsString());
                                                                        veiculo.put("padraoLd",
                                                                                padVeic.getValueAsString());
                                                                        veiculo.put("sinalPad",
                                                                                sinal.getValueAsString());
                                                                        veiculo.put("funcaoPad",
                                                                                funcao.getValueAsString());
                                                                        veiculo.put("ativoPad",
                                                                                ativo.getValueAsString());
                                                                        //GWT.log("Linha 4");
                                                                        veiculo.put("descricaoPad",
                                                                                descricao.getValueAsString());
                                                                        //GWT.log("Linha 5");
                                                                        veiculo.put("codPes", null);
                                                                        veiculo.put("nomePes", null);
                                                                        veiculo.put("telefonePes", null);
                                                                        veiculo.put("descricaoPes", null);
                                                                        //GWT.log("Linha 6");
                                                                        // Adicionando o novo padro de ligao no DadosVeiculosCopia
                                                                        dadosVeiculoCopia.add(veiculo);

                                                                        Record padLigacao = new Record();
                                                                        //GWT.log("Linha 7");
                                                                        padLigacao.setAttribute("codPad", String
                                                                                .valueOf(ultimoCodPadLig));
                                                                        padLigacao.setAttribute("corFio",
                                                                                ((corFio == null)
                                                                                        ? "Sem informao"
                                                                                        : corFio.getValueAsString()));
                                                                        padLigacao.setAttribute("sinalPad",
                                                                                ((sinal == null)
                                                                                        ? "Sem informao"
                                                                                        : ((sinal
                                                                                                .getValueAsString()
                                                                                                .equalsIgnoreCase(
                                                                                                        "true")) ? "Positivo"
                                                                                                                : "Negativo")));
                                                                        padLigacao.setAttribute("padraoLd",
                                                                                ((padVeic == null)
                                                                                        ? "Sem informao"
                                                                                        : ((padVeic
                                                                                                .getValueAsString()
                                                                                                .equalsIgnoreCase(
                                                                                                        "true")) ? "Ligado"
                                                                                                                : "Desligado")));
                                                                        padLigacao.setAttribute("funcaoPad",
                                                                                ((funcao == null)
                                                                                        ? "Sem informao"
                                                                                        : ((funcao
                                                                                                .getValueAsString()
                                                                                                .equalsIgnoreCase(
                                                                                                        "true")) ? "Entrada"
                                                                                                                : "Saida")));
                                                                        padLigacao.setAttribute("ativoPad",
                                                                                ((ativo == null)
                                                                                        ? "Sem informao"
                                                                                        : ((ativo
                                                                                                .getValueAsString()
                                                                                                .equalsIgnoreCase(
                                                                                                        "true")) ? "Sim"
                                                                                                                : "No")));
                                                                        padLigacao.setAttribute("descricaoPad",
                                                                                ((descricao == null)
                                                                                        ? "Sem informao"
                                                                                        : descricao
                                                                                                .getValueAsString()));
                                                                        // GWT.log("Linha 8");
                                                                        listPadLig.addData(padLigacao);
                                                                        SC.say("Novo padro de ligao adionado com sucesso!");
                                                                    } else {
                                                                        SC.warn("ERRO ao buscar o ltimo padro de ligao cadastrado");
                                                                    }
                                                                }
                                                            });
                                                } else {
                                                    SC.warn("ERRO ao inserir novo padro de ligao");
                                                }
                                            }
                                        });
                                janelaCarregando.addItem(mensagem);
                                janelaCarregando.setAnimateTime(1200);
                                janelaCarregando.animateHide(AnimationEffect.FADE);
                                contador = 100;
                                janelaCarregando.destroy();
                            }
                        } else {
                            contador = 0;
                        }

                    }
                }.schedule(50);
                windowAux.destroy();
            }
        }
    });

    limpar.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            corFio.clearValue();
            sinal.clearValue();
            padVeic.clearValue();
            funcao.clearValue();
            ativo.clearValue();
            descricao.clearValue();
            formNovoPadLig.focusInItem(corFio);
        }
    });

    addItem(label);
    addItem(hform);
    addItem(hButoes);

}

From source file:com.automaster.client.ui.paineis.dialogs.editar.cadastronovo.EditarNovoTelefone.java

public EditarNovoTelefone(final TreeMap<String, ArrayList<TreeMap<String, String>>> clienteEdicao,
        final ListGrid listTelEditarCliente, final ListGrid telefoneBuscarCliente) {
    //GWT.log("Editar Novo Endereo");
    setTitle("Novo Telefone");
    setWidth(500);//  w w w  .jav  a2 s.  c o  m
    setHeight(280);
    setShowMinimizeButton(false);
    setIsModal(true);
    setShowModalMask(true);
    centerInPage();
    //setMargin(5);
    setLayoutAlign(Alignment.CENTER);

    Label label = new Label("<strong><h3>Cadastrar Novo Telefone</h3></strong>");
    label.setAlign(Alignment.CENTER);
    label.setStyleName(scClassName);

    final DynamicForm formEditarNovoTelefone = new DynamicForm();
    formEditarNovoTelefone.setAutoFocus(true);

    final TextItem itemDescricaoTel = new TextItem();
    itemDescricaoTel.setTitle("Descrio");
    itemDescricaoTel.setName("descricao");
    itemDescricaoTel.setKeyPressFilter("[a-zA-Z?? [0-9]");
    itemDescricaoTel.setCharacterCasing(CharacterCasing.UPPER);
    itemDescricaoTel.setRequired(true);
    itemDescricaoTel.setWidth(300);
    LengthRangeValidator tamanhoDescricao = new LengthRangeValidator();
    tamanhoDescricao.setMin(3);
    itemDescricaoTel.setValidators(tamanhoDescricao);

    final TextItem itemTelefone = new TextItem();
    itemTelefone.setTitle("Nmero");
    itemTelefone.setName("numero");
    itemTelefone.setRequired(true);
    itemTelefone.setMask("(##)#####-####");
    itemTelefone.setWidth(300);
    //itemTelefone.setMaskSaveLiterals(true);
    //validador para tamanho do campo Nmero de telefone
    LengthRangeValidator tamanhoTelefone = new LengthRangeValidator();
    tamanhoTelefone.setMin(11);
    itemTelefone.setValidators(tamanhoTelefone);

    formEditarNovoTelefone.setFields(itemDescricaoTel, itemTelefone);

    HLayout hButoes = new HLayout();
    hButoes.setWidth(200);
    hButoes.setMembersMargin(3);
    hButoes.setLayoutAlign(Alignment.CENTER);
    IButton cadastrar = new IButton("Cadastrar");
    IButton limpar = new IButton("Limpar");
    hButoes.setMargin(5);
    hButoes.addMember(cadastrar);
    hButoes.addMember(limpar);

    addCloseClickHandler(new CloseClickHandler() {

        @Override
        public void onCloseClick(CloseClickEvent event) {
            destroy();
        }
    });
    //GWT.log("antes do clique");
    cadastrar.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            if (formEditarNovoTelefone.validate()) {
                contador = 0;
                final Window janelaCarregando = new Window();
                janelaCarregando.setShowTitle(false);
                janelaCarregando.setWidth(100);
                janelaCarregando.setHeight(50);
                janelaCarregando.setShowEdges(false);
                janelaCarregando.setShowCloseButton(false);
                janelaCarregando.setShowMinimizeButton(false);
                janelaCarregando.setIsModal(true);
                janelaCarregando.setShowModalMask(true);
                janelaCarregando.centerInPage();
                janelaCarregando.setLayoutAlign(Alignment.CENTER);
                final Label mensagem = new Label("Carregando..");
                mensagem.setHeight(16);

                new Timer() {
                    public void run() {

                        if (contador != 100) {
                            //destroy();
                            contador += 1 + (int) (5 * Math.random());
                            schedule(1 + (int) (50 * Math.random()));
                            mensagem.setContents("Carregando: " + contador + "%");
                            //GWT.log("!=100: "+contador);
                            janelaCarregando.addItem(mensagem);
                            janelaCarregando.setAnimateTime(1200);
                            janelaCarregando.animateShow(AnimationEffect.FADE);

                            if (contador >= 100) {
                                mensagem.setContents("Carregando: 100%");

                                //GWT.log("chave C: "+clienteEdicao.firstKey());
                                TreeMap<String, String> editarNovoTelefone = new TreeMap<String, String>();
                                //editarNovoEndereco.put("codEndereco", "");
                                editarNovoTelefone.put("codCliente", clienteEdicao.firstKey());
                                editarNovoTelefone.put("descricaoTelefone",
                                        itemDescricaoTel.getValueAsString());
                                editarNovoTelefone.put("numero", (String) itemTelefone.getValue());

                                Info.dbService.cadastrarNovoTelefone(editarNovoTelefone,
                                        new AsyncCallback<Boolean>() {

                                            @Override
                                            public void onFailure(Throwable caught) {
                                                throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                                            }

                                            @Override
                                            public void onSuccess(Boolean enderecoAdicionado) {
                                                if (enderecoAdicionado == true) {
                                                    Info.dbService
                                                            .buscarUltimoFone(new AsyncCallback<Integer>() {

                                                                @Override
                                                                public void onFailure(Throwable caught) {
                                                                    throw new UnsupportedOperationException(
                                                                            "Not supported yet. Busca Ultimo End adicionado"); //To change body of generated methods, choose Tools | Templates.
                                                                }

                                                                @Override
                                                                public void onSuccess(Integer codUltimoFone) {
                                                                    if (codUltimoFone != 0) {

                                                                        ArrayList<TreeMap<String, String>> clienteDadosAtualizados = clienteEdicao
                                                                                .get(clienteEdicao.firstKey());
                                                                        TreeMap<String, String> editarNovoEndereco = new TreeMap<String, String>();
                                                                        editarNovoEndereco.put("nomeCliente",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("nomeCliente"));
                                                                        editarNovoEndereco.put("dataAdesao",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("dataAdesao"));
                                                                        editarNovoEndereco.put("tipoCliente",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("tipoCliente"));
                                                                        editarNovoEndereco.put("codUnidade",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codUnidade"));
                                                                        editarNovoEndereco.put("nomeUnidade",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("nomeUnidade"));
                                                                        editarNovoEndereco.put("codEndereco",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codEndereco"));
                                                                        editarNovoEndereco.put("codCliente",
                                                                                clienteEdicao.firstKey());
                                                                        editarNovoEndereco.put(
                                                                                "descricaoEndereco",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("descricaoEndereco"));
                                                                        editarNovoEndereco.put("logradouro",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("logradouro"));
                                                                        editarNovoEndereco.put("numeroEndereco",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("numeroEndereco"));
                                                                        editarNovoEndereco.put("bairro",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("bairro"));
                                                                        editarNovoEndereco.put("codCidade",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codCidade"));
                                                                        editarNovoEndereco.put("nomeCidade",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("nomeCidade"));
                                                                        editarNovoEndereco.put("codEstado",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codEstado"));
                                                                        editarNovoEndereco.put("estadoUf",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("estadoUf"));
                                                                        editarNovoEndereco.put("cep",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("cep"));
                                                                        editarNovoEndereco.put(
                                                                                "referenciaEndereco",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("referenciaEndereco"));
                                                                        editarNovoEndereco.put("codFone",
                                                                                String.valueOf(codUltimoFone));
                                                                        editarNovoEndereco.put("descricaoFone",
                                                                                itemDescricaoTel
                                                                                        .getValueAsString());
                                                                        editarNovoEndereco.put("numeroFone",
                                                                                itemTelefone
                                                                                        .getValueAsString());
                                                                        editarNovoEndereco.put("descricaoEmail",
                                                                                null);
                                                                        editarNovoEndereco.put("codEmail",
                                                                                null);
                                                                        editarNovoEndereco.put("email", null);
                                                                        editarNovoEndereco.put("codUsuario",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codUsuario"));
                                                                        editarNovoEndereco.put("usuario",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("usuario"));
                                                                        editarNovoEndereco.put("senha",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("senha"));
                                                                        editarNovoEndereco.put("ativoUsuario",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("ativoUuario"));
                                                                        editarNovoEndereco.put("codGrupo",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codGrupo"));
                                                                        editarNovoEndereco.put("nomeGrupo",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("nomeGrupo"));
                                                                        editarNovoEndereco.put("codEmpresa",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codEmpresa"));
                                                                        editarNovoEndereco.put("cnpj",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("cnpj"));
                                                                        editarNovoEndereco.put("dataAbertura",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("dataAbertura"));
                                                                        editarNovoEndereco.put("responsavel",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("responsavel"));
                                                                        editarNovoEndereco.put("cargo",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("cargo"));
                                                                        editarNovoEndereco.put("codPessoa",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("codPessoa"));
                                                                        editarNovoEndereco.put("cpf",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("cpf"));
                                                                        editarNovoEndereco.put("dataNasc",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("dataNasc"));
                                                                        editarNovoEndereco.put("profissao",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("profissao"));
                                                                        editarNovoEndereco.put("trabalhoPessoa",
                                                                                clienteDadosAtualizados.get(0)
                                                                                        .get("trabalhoPessoa"));
                                                                        clienteDadosAtualizados
                                                                                .add(editarNovoEndereco);
                                                                        clienteEdicao.put(
                                                                                clienteEdicao.firstKey(),
                                                                                clienteDadosAtualizados);
                                                                        //GWT.log("Cliente Edio: "+clienteEdicao);
                                                                        //GWT.log("Ultimo Fone: "+codUltimoFone);
                                                                        Record novoTel = new Record();
                                                                        novoTel.setAttribute("codigo",
                                                                                String.valueOf(codUltimoFone));
                                                                        novoTel.setAttribute("descricao",
                                                                                itemDescricaoTel
                                                                                        .getValueAsString());
                                                                        novoTel.setAttribute("numero", Info
                                                                                .formataTelefone(itemTelefone
                                                                                        .getValueAsString()));

                                                                        listTelEditarCliente.addData(novoTel);
                                                                        telefoneBuscarCliente.addData(novoTel);
                                                                        SC.say("Novo endereo cadastrado com sucesso");
                                                                    } else {
                                                                        SC.warn("Erro ao buscar ultimo endereo cadastrado");
                                                                    }
                                                                }
                                                            });
                                                } else {
                                                    GWT.log("Erro ao inserir novo telefone!");
                                                }
                                            }
                                        });
                                janelaCarregando.addItem(mensagem);
                                janelaCarregando.setAnimateTime(1200);
                                janelaCarregando.animateHide(AnimationEffect.FADE);
                                contador = 100;
                                janelaCarregando.destroy();
                            }
                        } else {
                            contador = 0;
                        }

                    }
                }.schedule(50);
                //GWT.log(novoEnd.getAttribute("cidade"));
                destroy();
            }

        }
    });

    limpar.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            itemDescricaoTel.clearValue();
            itemTelefone.clearValue();
            formEditarNovoTelefone.focusInItem(itemDescricaoTel);
        }
    });

    addItem(label);
    addItem(formEditarNovoTelefone);
    addItem(hButoes);
}

From source file:com.automaster.client.ui.paineis.dialogs.editar.cadastronovo.EditarNovoUsuario.java

public EditarNovoUsuario(final TreeMap<String, ArrayList<TreeMap<String, String>>> clienteEdicao,
        final ListGrid listUserEditarCliente, final ListGrid UsuarioTabBuscaCliente) {
    //GWT.log("Editar Novo Endereo");
    setTitle("Novo Usurio");
    setWidth(500);//from w w w.j  a  v  a 2  s.  c om
    setHeight(280);
    setShowMinimizeButton(false);
    setIsModal(true);
    setShowModalMask(true);
    centerInPage();
    setLayoutAlign(Alignment.CENTER);

    final DynamicForm formEditarNovoUsuario = new DynamicForm();
    formEditarNovoUsuario.setAutoFocus(true);

    Label label = new Label("<strong><h3>Cadastrar Novo Usurio</h3></strong>");
    label.setAlign(Alignment.CENTER);
    label.setStyleName(scClassName);

    final TextItem itemCampoUser = new TextItem();
    itemCampoUser.setName("usuario");
    itemCampoUser.setTitle("Usurio");
    itemCampoUser.setWidth(300);
    itemCampoUser.setRequired(true);
    itemCampoUser.setKeyPressFilter("[a-zA-Z.[0-9]");

    RegExpValidator usuarioValidator = new RegExpValidator();
    usuarioValidator.setExpression("^(([a-zA-Z0-9\\-])+\\.)+[a-zA-Z0-9]");
    usuarioValidator.setErrorMessage("Campo invlido! Ex: nome.sobrenome");

    itemCampoUser.setValidators(usuarioValidator);

    final PasswordItem itemSenha = new PasswordItem();
    itemSenha.setName("senha");
    itemSenha.setTitle("Senha");
    itemSenha.setWidth(300);
    itemSenha.setRequired(true);
    itemSenha.setKeyPressFilter("[@$%*&%,;a-zA-Z.[0-9]");

    formEditarNovoUsuario.setFields(itemCampoUser, itemSenha);

    HLayout hButoes = new HLayout();
    hButoes.setWidth(200);
    hButoes.setMembersMargin(3);
    hButoes.setLayoutAlign(Alignment.CENTER);
    IButton cadastrar = new IButton("Cadastrar");
    IButton limpar = new IButton("Limpar");
    hButoes.setMargin(5);
    hButoes.addMember(cadastrar);
    hButoes.addMember(limpar);

    addCloseClickHandler(new CloseClickHandler() {

        @Override
        public void onCloseClick(CloseClickEvent event) {
            destroy();
        }
    });

    cadastrar.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {

            Info.dbService.buscarPorNomeUsuario(itemCampoUser.getValueAsString(),
                    new AsyncCallback<TreeMap<String, Object>>() {

                        @Override
                        public void onFailure(Throwable caught) {
                            throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                        }

                        @Override
                        public void onSuccess(TreeMap<String, Object> result) {
                            if (result == null) {
                                if (formEditarNovoUsuario.validate()) {
                                    contador = 0;
                                    final Window janelaCarregando = new Window();
                                    janelaCarregando.setShowTitle(false);
                                    janelaCarregando.setWidth(100);
                                    janelaCarregando.setHeight(50);
                                    janelaCarregando.setShowEdges(false);
                                    janelaCarregando.setShowCloseButton(false);
                                    janelaCarregando.setShowMinimizeButton(false);
                                    janelaCarregando.setIsModal(true);
                                    janelaCarregando.setShowModalMask(true);
                                    janelaCarregando.centerInPage();
                                    janelaCarregando.setLayoutAlign(Alignment.CENTER);
                                    final Label mensagem = new Label("Carregando..");
                                    mensagem.setHeight(16);

                                    new Timer() {
                                        public void run() {

                                            if (contador != 100) {
                                                //destroy();
                                                contador += 1 + (int) (5 * Math.random());
                                                schedule(1 + (int) (50 * Math.random()));
                                                mensagem.setContents("Carregando: " + contador + "%");
                                                //GWT.log("!=100: "+contador);
                                                janelaCarregando.addItem(mensagem);
                                                janelaCarregando.setAnimateTime(1200);
                                                janelaCarregando.animateShow(AnimationEffect.FADE);

                                                if (contador >= 100) {
                                                    mensagem.setContents("Carregando: 100%");
                                                    //GWT.log("chave C: "+clienteEdicao.firstKey());
                                                    TreeMap<String, String> editarNovoUsuario = new TreeMap<String, String>();
                                                    //editarNovoEndereco.put("codEndereco", "");
                                                    editarNovoUsuario.put("codCliente",
                                                            clienteEdicao.firstKey());
                                                    editarNovoUsuario.put("usuario",
                                                            itemCampoUser.getValueAsString());
                                                    editarNovoUsuario.put("senha",
                                                            itemSenha.getValueAsString());

                                                    Info.dbService.cadastrarUsuario(editarNovoUsuario,
                                                            new AsyncCallback<Boolean>() {

                                                                @Override
                                                                public void onFailure(Throwable caught) {
                                                                    throw new UnsupportedOperationException(
                                                                            "Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                                                                }

                                                                @Override
                                                                public void onSuccess(
                                                                        Boolean enderecoAdicionado) {
                                                                    if (enderecoAdicionado == true) {
                                                                        Info.dbService.buscarUltimoUsuario(
                                                                                new AsyncCallback<TreeMap<String, String>>() {

                                                                                    @Override
                                                                                    public void onFailure(
                                                                                            Throwable caught) {
                                                                                        throw new UnsupportedOperationException(
                                                                                                "Not supported yet. Busca Ultimo End adicionado"); //To change body of generated methods, choose Tools | Templates.
                                                                                    }

                                                                                    @Override
                                                                                    public void onSuccess(
                                                                                            TreeMap<String, String> ultimoUsuario) {
                                                                                        if (ultimoUsuario != null) {

                                                                                            ArrayList<TreeMap<String, String>> clienteDadosAtualizados = clienteEdicao
                                                                                                    .get(clienteEdicao
                                                                                                            .firstKey());
                                                                                            TreeMap<String, String> editarNovoEndereco = new TreeMap<String, String>();
                                                                                            editarNovoEndereco
                                                                                                    .put("nomeCliente",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("nomeCliente"));
                                                                                            editarNovoEndereco
                                                                                                    .put("dataAdesao",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("dataAdesao"));
                                                                                            editarNovoEndereco
                                                                                                    .put("tipoCliente",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("tipoCliente"));
                                                                                            editarNovoEndereco
                                                                                                    .put("codUnidade",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("codUnidade"));
                                                                                            editarNovoEndereco
                                                                                                    .put("nomeUnidade",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("nomeUnidade"));
                                                                                            editarNovoEndereco
                                                                                                    .put("codEndereco",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("codEndereco"));
                                                                                            editarNovoEndereco
                                                                                                    .put("codCliente",
                                                                                                            clienteEdicao
                                                                                                                    .firstKey());
                                                                                            editarNovoEndereco
                                                                                                    .put("descricaoEndereco",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("descricaoEndereco"));
                                                                                            editarNovoEndereco
                                                                                                    .put("logradouro",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("logradouro"));
                                                                                            editarNovoEndereco
                                                                                                    .put("numeroEndereco",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("numeroEndereco"));
                                                                                            editarNovoEndereco
                                                                                                    .put("bairro",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("bairro"));
                                                                                            editarNovoEndereco
                                                                                                    .put("codCidade",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("codCidade"));
                                                                                            editarNovoEndereco
                                                                                                    .put("nomeCidade",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("nomeCidade"));
                                                                                            editarNovoEndereco
                                                                                                    .put("codEstado",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("codEstado"));
                                                                                            editarNovoEndereco
                                                                                                    .put("estadoUf",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("estadoUf"));
                                                                                            editarNovoEndereco
                                                                                                    .put("cep",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("cep"));
                                                                                            editarNovoEndereco
                                                                                                    .put("referenciaEndereco",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("referenciaEndereco"));
                                                                                            editarNovoEndereco
                                                                                                    .put("codFone",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("codFone"));
                                                                                            editarNovoEndereco
                                                                                                    .put("descricaoFone",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("descricaoFone"));
                                                                                            editarNovoEndereco
                                                                                                    .put("numeroFone",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("numeroFone"));
                                                                                            editarNovoEndereco
                                                                                                    .put("descricaoEmail",
                                                                                                            null);
                                                                                            editarNovoEndereco
                                                                                                    .put("codEmail",
                                                                                                            null);
                                                                                            editarNovoEndereco
                                                                                                    .put("email",
                                                                                                            null);
                                                                                            editarNovoEndereco
                                                                                                    .put("codUsuario",
                                                                                                            ultimoUsuario
                                                                                                                    .get("codUsuario"));
                                                                                            editarNovoEndereco
                                                                                                    .put("usuario",
                                                                                                            ultimoUsuario
                                                                                                                    .get("usuario"));
                                                                                            editarNovoEndereco
                                                                                                    .put("senha",
                                                                                                            ultimoUsuario
                                                                                                                    .get("senha"));
                                                                                            editarNovoEndereco
                                                                                                    .put("ativoUsuario",
                                                                                                            ultimoUsuario
                                                                                                                    .get("ativo"));
                                                                                            editarNovoEndereco
                                                                                                    .put("codGrupo",
                                                                                                            ultimoUsuario
                                                                                                                    .get("codGrupo"));
                                                                                            editarNovoEndereco
                                                                                                    .put("nomeGrupo",
                                                                                                            ultimoUsuario
                                                                                                                    .get("nomeGrupo"));
                                                                                            editarNovoEndereco
                                                                                                    .put("codEmpresa",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("codEmpresa"));
                                                                                            editarNovoEndereco
                                                                                                    .put("cnpj",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("cnpj"));
                                                                                            editarNovoEndereco
                                                                                                    .put("dataAbertura",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("dataAbertura"));
                                                                                            editarNovoEndereco
                                                                                                    .put("responsavel",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("responsavel"));
                                                                                            editarNovoEndereco
                                                                                                    .put("cargo",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("cargo"));
                                                                                            editarNovoEndereco
                                                                                                    .put("codPessoa",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("codPessoa"));
                                                                                            editarNovoEndereco
                                                                                                    .put("cpf",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("cpf"));
                                                                                            editarNovoEndereco
                                                                                                    .put("dataNasc",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("dataNasc"));
                                                                                            editarNovoEndereco
                                                                                                    .put("profissao",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("profissao"));
                                                                                            editarNovoEndereco
                                                                                                    .put("trabalhoPessoa",
                                                                                                            clienteDadosAtualizados
                                                                                                                    .get(0)
                                                                                                                    .get("trabalhoPessoa"));
                                                                                            clienteDadosAtualizados
                                                                                                    .add(editarNovoEndereco);
                                                                                            clienteEdicao.put(
                                                                                                    clienteEdicao
                                                                                                            .firstKey(),
                                                                                                    clienteDadosAtualizados);
                                                                                            //GWT.log("Cliente Edio: "+clienteEdicao);
                                                                                            //GWT.log("Ultimo Fone: "+ultimoUsuario.get("codUsuario"));
                                                                                            Record novoUsuario = new Record();
                                                                                            novoUsuario
                                                                                                    .setAttribute(
                                                                                                            "codigo",
                                                                                                            ultimoUsuario
                                                                                                                    .get("codUsuario"));
                                                                                            novoUsuario
                                                                                                    .setAttribute(
                                                                                                            "usuario",
                                                                                                            itemCampoUser
                                                                                                                    .getValueAsString());
                                                                                            novoUsuario
                                                                                                    .setAttribute(
                                                                                                            "senha",
                                                                                                            itemSenha
                                                                                                                    .getValueAsString());
                                                                                            novoUsuario
                                                                                                    .setAttribute(
                                                                                                            "statusCod",
                                                                                                            ultimoUsuario
                                                                                                                    .get("ativo"));
                                                                                            novoUsuario
                                                                                                    .setAttribute(
                                                                                                            "status",
                                                                                                            ((ultimoUsuario
                                                                                                                    .get("ativo")
                                                                                                                    .equalsIgnoreCase(
                                                                                                                            "t")) ? "Ativo"
                                                                                                                                    : "Bloqueado"));
                                                                                            novoUsuario
                                                                                                    .setAttribute(
                                                                                                            "codGrupo",
                                                                                                            ultimoUsuario
                                                                                                                    .get("codGrupo"));
                                                                                            novoUsuario
                                                                                                    .setAttribute(
                                                                                                            "grupo",
                                                                                                            ultimoUsuario
                                                                                                                    .get("nomeGrupo"));

                                                                                            listUserEditarCliente
                                                                                                    .addData(
                                                                                                            novoUsuario);
                                                                                            UsuarioTabBuscaCliente
                                                                                                    .addData(
                                                                                                            novoUsuario);
                                                                                            SC.say("Novo usurio cadastrado com sucesso");
                                                                                        } else {
                                                                                            SC.warn("Erro ao buscar ultimo usurio cadastrado");
                                                                                        }
                                                                                    }
                                                                                });
                                                                    } else {
                                                                        GWT.log("Erro ao inserir novo usurio!");
                                                                    }
                                                                }
                                                            });
                                                    janelaCarregando.addItem(mensagem);
                                                    janelaCarregando.setAnimateTime(1200);
                                                    janelaCarregando.animateHide(AnimationEffect.FADE);
                                                    contador = 100;
                                                    janelaCarregando.destroy();
                                                }
                                            } else {
                                                contador = 0;
                                            }

                                        }
                                    }.schedule(50);
                                    //GWT.log(novoEnd.getAttribute("cidade"));
                                    destroy();
                                }

                            } else {

                                SC.say("Usurio: " + itemCampoUser.getValueAsString() + " j existe");
                                itemCampoUser.clearValue();
                                //itemSenha.clearValue();
                                formEditarNovoUsuario.focusInItem(itemCampoUser);

                            }
                        }
                    });

        }
    });

    limpar.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            itemCampoUser.clearValue();
            itemSenha.clearValue();
            formEditarNovoUsuario.focusInItem(itemCampoUser);
        }
    });

    addItem(label);
    addItem(formEditarNovoUsuario);
    addItem(hButoes);
}

From source file:com.automaster.client.ui.paineis.dialogs.editar.EditarCliente.java

public EditarCliente(final TreeMap<String, ArrayList<TreeMap<String, String>>> clienteEdicao,
        final ListGrid enderecosTabBuscaCliente, final ListGrid telefonesTabBuscaCliente,
        final ListGrid emailsTabBuscaCliente, final ListGrid usuariosTabBuscaCliente,
        final ListGrid dadosClienteTabBuscaCliente) {
    //GWT.log(""+emailsTabBuscaCliente.getRecords().length);
    clienteEdicaoAuxiliar = clienteEdicao.get(clienteEdicao.firstKey());
    //Setando itens de configurao da Window EditarCliente
    final Window windAux = this;
    setTitle("Editar Cliente");
    setWidth(1200);/*w w w.j  a v a 2  s .  c om*/
    setHeight100();
    setShowMinimizeButton(false);
    setShowCloseButton(false);
    setIsModal(true);
    setShowModalMask(true);
    centerInPage();
    setLayoutAlign(Alignment.CENTER);
    addCloseClickHandler(new CloseClickHandler() {

        @Override
        public void onCloseClick(CloseClickEvent event) {

            SC.warn("todas as alteraes j foram feitas!", new BooleanCallback() {

                @Override
                public void execute(Boolean value) {
                    if (value) {
                        windAux.destroy();
                    }
                }
            });
            //GWT.log(""+clienteEdicao);
        }
    });
    //criando o Vlayout que ir armazenar o painelNovoCliente
    HLayout painelPai = new HLayout();
    painelPai.setWidth100();
    painelPai.setHeight100();
    painelPai.setAlign(Alignment.CENTER);
    //Criando o painel que ir armazenar to tab, sections e butoes
    VLayout painelNovoCliente = new VLayout();
    painelNovoCliente.setMembersMargin(15);
    painelNovoCliente.setWidth(1000);
    painelNovoCliente.setDefaultLayoutAlign(Alignment.CENTER);
    //criando o painel que ir armazenar os botoes cadastrar e limpar
    HLayout painelBotoes = new HLayout();
    painelBotoes.setMembersMargin(15);
    painelBotoes.setAlign(Alignment.CENTER);
    //criando o formulrio que armazena os itens de cadastro PF
    final DynamicForm formEditarCliente = new DynamicForm();
    formEditarCliente.setWidth100();
    formEditarCliente.setLayoutAlign(Alignment.CENTER);
    formEditarCliente.setAutoFocus(true);
    //criando radioGroup que o usurio escolhe o tipo de cliente a ser cadastrado
    final SelectItem unidade = new SelectItem();
    unidade.setTitle("Unidade");
    unidade.setName("unidade");
    unidade.setHint("<nbr>*</nbr>");

    Info.dbService.buscarTodasUnidades(codigoUnidade, new AsyncCallback<ArrayList<TreeMap<String, String>>>() {

        @Override
        public void onFailure(Throwable caught) {
            throw new UnsupportedOperationException(
                    "Erro ao Listar as Unidades, entre em contato com Administrador!");
        }

        @Override
        public void onSuccess(ArrayList<TreeMap<String, String>> result) {
            if (result != null) {
                LinkedHashMap<String, String> valueMapUnid = new LinkedHashMap<String, String>();

                for (TreeMap<String, String> unid : result) {
                    //valueMapUnid.put(unid.get("codUnidade"), unid.get("nome"));
                    valueMapUnid.put(unid.get("codUnidade"), unid.get("nome"));

                }
                unidade.setValueMap(valueMapUnid);
            }
        }

    });
    unidade.setDefaultValue(clienteEdicaoAuxiliar.get(0).get("codUnidade"));
    unidade.setRequired(true);
    unidade.setWidth(400);

    final DateItem datadeAdesao = new DateItem();
    datadeAdesao.setTitle("Data de Adeso.");
    datadeAdesao.setName("dataAdesao");
    datadeAdesao.setUseTextField(true);
    datadeAdesao.setHint("<nbr>*</nbr>");
    datadeAdesao.setUseMask(true);
    datadeAdesao.setDateFormatter(DateDisplayFormat.TOEUROPEANSHORTDATE);
    datadeAdesao.setRequired(true);
    datadeAdesao.setWidth(400);
    datadeAdesao.setValue(new Date(Long.parseLong(clienteEdicaoAuxiliar.get(0).get("dataAdesao"))));
    datadeAdesao.setDisabled(true);

    final RadioGroupItem tipoPessoa = new RadioGroupItem();
    tipoPessoa.setTitle("Tipo de Pessoa");
    LinkedHashMap<String, String> tp = new LinkedHashMap<>();
    tp.put("1", "Pessoa Fsica");
    tp.put("2", "Pessoa Jurdica");
    tipoPessoa.setValueMap(tp);
    tipoPessoa.setRequired(true);
    tipoPessoa.setValue(clienteEdicaoAuxiliar.get(0).get("tipoCliente"));
    tipoPessoa.setAlign(Alignment.CENTER);
    tipoPessoa.setDisabled(true);
    //criando os itens que a seo dados pessoais do formulrio
    final TextItem nomeRazaoSocial = new TextItem();
    nomeRazaoSocial.setName("nome");
    nomeRazaoSocial.setTitle("Nome");
    nomeRazaoSocial.setRequired(true);
    LengthRangeValidator tamanhoNome = new LengthRangeValidator();
    tamanhoNome.setMin(3);
    nomeRazaoSocial.setValidators(tamanhoNome);
    nomeRazaoSocial.setHint("<nbr>*</nbr>");
    nomeRazaoSocial.setKeyPressFilter("[a-zA-Z? ]");
    nomeRazaoSocial.setCharacterCasing(CharacterCasing.UPPER);
    nomeRazaoSocial.setWidth(400);
    nomeRazaoSocial.setValue(clienteEdicaoAuxiliar.get(0).get("nomeCliente"));

    final TextItem cpfCnpj = new TextItem();
    cpfCnpj.setName("cpf");
    cpfCnpj.setTitle("CPF");
    cpfCnpj.setMask("###.###.###-##");
    cpfCnpj.setRequired(true);
    cpfCnpj.setHint("<nbr>*</nbr>");
    //cpfCnpj.setHint("Somente Nmeros [0-9.]");
    cpfCnpj.setKeyPressFilter("<nbr>*</nbr>");
    cpfCnpj.setWidth(400);
    cpfCnpj.setValue((clienteEdicaoAuxiliar.get(0).get("tipoCliente").equalsIgnoreCase("1"))
            ? clienteEdicaoAuxiliar.get(0).get("cpf")
            : clienteEdicaoAuxiliar.get(0).get("cnpj"));

    final DateItem dataNascAbertura = new DateItem();
    dataNascAbertura.setTitle("Data de Nasc.");
    dataNascAbertura.setName("dataNasc");
    dataNascAbertura.setUseTextField(true);
    dataNascAbertura.setHint("<nbr>*</nbr>");
    dataNascAbertura.setUseMask(true);
    dataNascAbertura.setDateFormatter(DateDisplayFormat.TOEUROPEANSHORTDATE);
    dataNascAbertura.setRequired(true);
    dataNascAbertura.setWidth(400);
    Date dataFinal;
    if (clienteEdicaoAuxiliar.get(0).get("tipoCliente").equalsIgnoreCase("1")) {
        dataFinal = new Date(Long.parseLong(clienteEdicaoAuxiliar.get(0).get("dataNasc")));
    } else {
        dataFinal = new Date(Long.parseLong(clienteEdicaoAuxiliar.get(0).get("dataAbertura")));
    }
    dataNascAbertura.setValue(dataFinal);
    //
    final TextItem profissaoResponsavel = new TextItem();
    profissaoResponsavel.setName("profissao");
    profissaoResponsavel.setTitle("Profisso");
    profissaoResponsavel.setHint("<nbr>*</nbr>");
    profissaoResponsavel.setKeyPressFilter("[a-zA-Z? ]");
    profissaoResponsavel.setRequired(true);
    profissaoResponsavel.setCharacterCasing(CharacterCasing.UPPER);
    profissaoResponsavel.setWidth(400);
    profissaoResponsavel.setValue((clienteEdicaoAuxiliar.get(0).get("tipoCliente").equalsIgnoreCase("1"))
            ? clienteEdicaoAuxiliar.get(0).get("profissao")
            : clienteEdicaoAuxiliar.get(0).get("responsavel"));

    final TextItem empresaCargo = new TextItem();
    empresaCargo.setName("empresa");
    empresaCargo.setTitle("Empresa");
    empresaCargo.setHint("<nbr>*</nbr>");
    empresaCargo.setKeyPressFilter("[a-zA-Z? ]");
    empresaCargo.setRequired(true);
    empresaCargo.setCharacterCasing(CharacterCasing.UPPER);
    empresaCargo.setWidth(400);
    empresaCargo.setValue((clienteEdicaoAuxiliar.get(0).get("tipoCliente").equalsIgnoreCase("1"))
            ? clienteEdicaoAuxiliar.get(0).get("trabalhoPessoa")
            : clienteEdicaoAuxiliar.get(0).get("cargo"));
    //cria a seo para armazenar os dados pessoas de PF ou PJ
    final SectionItem dadosPessoais = new SectionItem();
    //Componentes da Tab
    SectionStack novoCliente = new SectionStack();
    //Botes
    final IButton salvar = new IButton("Salvar");
    salvar.setLayoutAlign(Alignment.CENTER);

    final SectionStackSection formSection = new SectionStackSection();
    formSection.setTitle("Cadastro de Clientes");
    formSection.setItems(formEditarCliente);
    formSection.setExpanded(true);
    // Inicio dos Botes de Adicionar e Remover
    ImgButton addEmail = new ImgButton();
    addEmail.setSrc("[SKIN]actions/add.png");
    addEmail.setSize(16);
    addEmail.setShowFocused(false);
    addEmail.setShowRollOver(false);
    addEmail.setShowDown(false);
    addEmail.setTooltip("Adicionar Email");

    ImgButton addTelefone = new ImgButton();
    addTelefone.setSrc("[SKIN]actions/add.png");
    addTelefone.setSize(16);
    addTelefone.setShowFocused(false);
    addTelefone.setShowRollOver(false);
    addTelefone.setShowDown(false);
    addTelefone.setTooltip("Adicionar Telefone");

    ImgButton addEndereco = new ImgButton();
    addEndereco.setSrc("[SKIN]actions/add.png");
    addEndereco.setSize(16);
    addEndereco.setShowFocused(false);
    addEndereco.setShowRollOver(false);
    addEndereco.setShowDown(false);
    addEndereco.setTooltip("Adicionar Endereo");

    ImgButton addUsuario = new ImgButton();
    addUsuario.setSrc("[SKIN]actions/add.png");
    addUsuario.setSize(16);
    addUsuario.setShowFocused(false);
    addUsuario.setShowRollOver(false);
    addUsuario.setShowDown(false);
    addUsuario.setTooltip("Adicionar Usurio");
    // FIm dos Botes de Adicionar
    final ListGridField codigoEnd = new ListGridField("codigo", "Cdigo");
    codigoEnd.setHidden(true);
    final ListGridField descricaoEndereco = new ListGridField("descricao", "Descrio");
    descricaoEndereco.setWidth(150);
    final ListGridField logradouro = new ListGridField("logradouro", "Logradouro");
    logradouro.setWidth(200);
    final ListGridField numero = new ListGridField("numero", "N");
    numero.setWidth(50);
    final ListGridField bairro = new ListGridField("bairro", "Bairro");
    final ListGridField cep = new ListGridField("cep", "CEP");
    cep.setWidth(60);
    final ListGridField estado = new ListGridField("estado", "UF");
    final ListGridField estadoCod = new ListGridField("estadoCod", "EstadoCod");
    estadoCod.setHidden(true);
    final ListGridField cidade = new ListGridField("cidade", "Cidade");
    final ListGridField cidadeCod = new ListGridField("cidadeCod", "CidadeCod");
    cidadeCod.setHidden(true);
    final ListGridField referencia = new ListGridField("referencia", "Referncia");
    referencia.setRequired(true);
    final ListGridField editarEnd = new ListGridField("editar", "Editar");
    editarEnd.setWidth(35);
    final ListGridField excluirEnd = new ListGridField("excluir", "Excluir");
    excluirEnd.setAlign(Alignment.CENTER);
    excluirEnd.setWidth(40);
    final ListGrid listEndereco = new ListGrid() {
        @Override
        protected Canvas createRecordComponent(final ListGridRecord record, Integer colNum) {

            String fieldName = this.getFieldName(colNum);
            final ListGrid listAux = this;
            //GWT.log("dentro da subinscrio");
            if (fieldName.equals("editar")) {
                //GWT.log("dentro do IF");
                HLayout recordCanvas = new HLayout(3);
                recordCanvas.setHeight(22);
                recordCanvas.setWidth100();
                recordCanvas.setAlign(Alignment.CENTER);
                ImgButton editImg = new ImgButton();
                editImg.setShowDown(false);
                editImg.setShowRollOver(false);
                editImg.setLayoutAlign(Alignment.CENTER);
                editImg.setSrc("[SKIN]actions/edit.png");
                editImg.setPrompt("Editar endereo");
                editImg.setHeight(16);
                editImg.setWidth(16);
                editImg.addClickHandler(new ClickHandler() {
                    public void onClick(ClickEvent event) {
                        EditarEndereco editEnd = new EditarEndereco(clienteEdicao, record, listAux,
                                enderecosTabBuscaCliente);
                        editEnd.setAnimateTime(1200);
                        editEnd.animateShow(AnimationEffect.FADE);
                    }
                });
                recordCanvas.addMember(editImg);
                return recordCanvas;
            } else if (fieldName.equals("excluir") && listAux.getRecordIndex(record) > 0) {
                HLayout recordCanvas = new HLayout(3);
                recordCanvas.setHeight(22);
                recordCanvas.setWidth100();
                recordCanvas.setAlign(Alignment.CENTER);
                ImgButton excluirImg = new ImgButton();
                excluirImg.setShowDown(false);
                excluirImg.setShowRollOver(false);
                excluirImg.setLayoutAlign(Alignment.CENTER);
                excluirImg.setSrc("[SKIN]actions/remove.png");
                excluirImg.setPrompt("Excluir endereo");
                excluirImg.setHeight(16);
                excluirImg.setWidth(16);
                excluirImg.addClickHandler(new ClickHandler() {
                    public void onClick(ClickEvent event) {
                        final Window janelaCarregando = new Window();
                        janelaCarregando.setShowTitle(false);
                        janelaCarregando.setWidth(100);
                        janelaCarregando.setHeight(50);
                        janelaCarregando.setShowEdges(false);
                        janelaCarregando.setShowCloseButton(false);
                        janelaCarregando.setShowMinimizeButton(false);
                        janelaCarregando.setIsModal(true);
                        janelaCarregando.setShowModalMask(true);
                        janelaCarregando.centerInPage();
                        janelaCarregando.setLayoutAlign(Alignment.CENTER);
                        final Label mensagem = new Label("Carregando..");
                        mensagem.setHeight(16);
                        new Timer() {
                            public void run() {
                                if (contador != 100) {
                                    //destroy();
                                    contador += 1 + (int) (5 * Math.random());
                                    schedule(1 + (int) (50 * Math.random()));
                                    mensagem.setContents("Carregando: " + contador + "%");
                                    //GWT.log("!=100: "+contador);
                                    janelaCarregando.addItem(mensagem);
                                    janelaCarregando.setAnimateTime(1200);
                                    janelaCarregando.animateShow(AnimationEffect.FADE);

                                    if (contador >= 100) {
                                        mensagem.setContents("Carregando: 100%");
                                        // GWT.log("" + clienteEdicaoAuxiliar.size());                                            
                                        //GWT.log(""+record.getAttribute("codigo"));
                                        int linhaClicada = listAux.getRecordIndex(record);
                                        listAux.selectRecord(linhaClicada);
                                        listAux.removeSelectedData();
                                        int num = clienteEdicaoAuxiliar.size();
                                        int removidos = 0;
                                        for (int i = 0; i < num; i++) {
                                            TreeMap<String, String> endEditado = clienteEdicaoAuxiliar
                                                    .get(i - removidos);
                                            if (record.getAttribute("codigo")
                                                    .equalsIgnoreCase(endEditado.get("codEndereco"))) {
                                                clienteEdicaoAuxiliar.remove(endEditado);
                                                removidos++;
                                            }
                                        }

                                        Info.dbService.deletarEndereco(
                                                Integer.parseInt(record.getAttribute("codigo")),
                                                new AsyncCallback<Boolean>() {

                                                    @Override
                                                    public void onFailure(Throwable caught) {
                                                        throw new UnsupportedOperationException(
                                                                "Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                                                    }

                                                    @Override
                                                    public void onSuccess(Boolean enderecoDeletado) {
                                                        if (enderecoDeletado == true) {
                                                            SC.say("Endereo excluido com sucesso!");
                                                        } else {
                                                            SC.say("ERRO ao excluir endereo!");
                                                        }
                                                    }
                                                });
                                        clienteEdicao.put(clienteEdicaoAuxiliar.get(0).get("codCliente"),
                                                clienteEdicaoAuxiliar);
                                        //listEndBuscaCliente.refreshRow(linhaClicada);
                                        enderecosTabBuscaCliente.selectRecord(linhaClicada);
                                        enderecosTabBuscaCliente.removeSelectedData();
                                        janelaCarregando.addItem(mensagem);
                                        janelaCarregando.setAnimateTime(1200);
                                        janelaCarregando.animateHide(AnimationEffect.FADE);
                                        contador = 100;
                                        janelaCarregando.destroy();
                                    }
                                } else {
                                    contador = 0;
                                }

                            }
                        }.schedule(50);
                    }
                });
                recordCanvas.addMember(excluirImg);
                return recordCanvas;

            } else {
                return null;
            }

        }
    };
    listEndereco.setCanPickFields(false);
    listEndereco.setFields(codigoEnd, descricaoEndereco, logradouro, numero, bairro, cep, cidade, cidadeCod,
            estado, estadoCod, referencia, editarEnd, excluirEnd);
    final SectionStackSection enderecoSection = new SectionStackSection();
    enderecoSection.setTitle("Endereos");
    enderecoSection.setItems(listEndereco);
    enderecoSection.setControls(addEndereco);
    enderecoSection.setExpanded(true);

    //Adicionando endereco na ListGrid
    ArrayList<TreeMap<String, String>> enderecos = clienteEdicao.get(clienteEdicao.firstKey());
    TreeMap<String, String> endAuxiliar = new TreeMap<String, String>();

    for (TreeMap<String, String> ende : enderecos) {
        if (enderecos.get(0).get("codEndereco") != null && endAuxiliar.get(ende.get("codEndereco")) == null) {
            Record novoEnd = new Record();
            novoEnd.setAttribute("codigo", ende.get("codEndereco"));
            novoEnd.setAttribute("descricao", ende.get("descricaoEndereco"));
            novoEnd.setAttribute("logradouro", ende.get("logradouro"));
            novoEnd.setAttribute("numero", ende.get("numeroEndereco"));
            novoEnd.setAttribute("bairro", ende.get("bairro"));
            novoEnd.setAttribute("cep", ende.get("cep"));
            novoEnd.setAttribute("cidadeCod", ende.get("codCidade"));
            novoEnd.setAttribute("cidade", ende.get("nomeCidade"));
            novoEnd.setAttribute("estadoCod", ende.get("codEstado"));
            novoEnd.setAttribute("estado", ende.get("estadoUf"));
            novoEnd.setAttribute("referencia", ende.get("referenciaEndereco"));
            listEndereco.addData(novoEnd);
            endAuxiliar.put(ende.get("codEndereco"), ende.get("codEndereco"));
        }
    }
    listEndereco.setShowRecordComponents(true);
    listEndereco.setShowRecordComponentsByCell(true);
    listEndereco.setShowAllRecords(true);
    listEndereco.setCanResizeFields(true);
    //criando coluna para grid telefone
    ListGridField codigoTel = new ListGridField("codigo", "Cdigo");
    codigoTel.setHidden(true);
    ListGridField descricaoTelefone = new ListGridField("descricao", "Descrio");
    descricaoTelefone.setAlign(Alignment.CENTER);
    ListGridField telefone = new ListGridField("numero", "Nmero");
    telefone.setAlign(Alignment.CENTER);
    ListGridField editarTel = new ListGridField("editar", "Editar");
    editarTel.setAlign(Alignment.CENTER);
    editarTel.setWidth(35);
    final ListGridField excluirTel = new ListGridField("excluir", "Excluir");
    excluirTel.setAlign(Alignment.CENTER);
    excluirTel.setWidth(40);
    //adicionando na lista grid de telefones
    final ListGrid listTelefone = new ListGrid() {
        @Override
        protected Canvas createRecordComponent(final ListGridRecord record, Integer colNum) {
            String fieldName = this.getFieldName(colNum);
            final ListGrid listAux = this;
            if (fieldName.equals("editar")) {
                HLayout recordCanvas = new HLayout(3);
                recordCanvas.setHeight(22);
                recordCanvas.setWidth100();
                recordCanvas.setAlign(Alignment.CENTER);
                ImgButton editImg = new ImgButton();
                editImg.setShowDown(false);
                editImg.setShowRollOver(false);
                editImg.setLayoutAlign(Alignment.CENTER);
                editImg.setSrc("[SKIN]actions/edit.png");
                editImg.setPrompt("Editar telefone");
                editImg.setHeight(16);
                editImg.setWidth(16);
                editImg.addClickHandler(new ClickHandler() {
                    public void onClick(ClickEvent event) {
                        EditarTelefone editTel = new EditarTelefone(clienteEdicao, record, listAux,
                                telefonesTabBuscaCliente);
                        editTel.setAnimateTime(1200);
                        editTel.animateShow(AnimationEffect.FADE);
                    }
                });

                recordCanvas.addMember(editImg);
                return recordCanvas;
            } else if (fieldName.equals("excluir") && listAux.getRecordIndex(record) > 0) {
                HLayout recordCanvas = new HLayout(3);
                recordCanvas.setHeight(22);
                recordCanvas.setWidth100();
                recordCanvas.setAlign(Alignment.CENTER);
                ImgButton excluirImg = new ImgButton();
                excluirImg.setShowDown(false);
                excluirImg.setShowRollOver(false);
                excluirImg.setLayoutAlign(Alignment.CENTER);
                excluirImg.setSrc("[SKIN]actions/remove.png");
                excluirImg.setPrompt("Excluir telefone");
                excluirImg.setHeight(16);
                excluirImg.setWidth(16);
                excluirImg.addClickHandler(new ClickHandler() {
                    public void onClick(ClickEvent event) {
                        final Window janelaCarregando = new Window();
                        janelaCarregando.setShowTitle(false);
                        janelaCarregando.setWidth(100);
                        janelaCarregando.setHeight(50);
                        janelaCarregando.setShowEdges(false);
                        janelaCarregando.setShowCloseButton(false);
                        janelaCarregando.setShowMinimizeButton(false);
                        janelaCarregando.setIsModal(true);
                        janelaCarregando.setShowModalMask(true);
                        janelaCarregando.centerInPage();
                        janelaCarregando.setLayoutAlign(Alignment.CENTER);
                        final Label mensagem = new Label("Carregando..");
                        mensagem.setHeight(16);
                        new Timer() {
                            public void run() {
                                if (contador != 100) {
                                    //destroy();
                                    contador += 1 + (int) (5 * Math.random());
                                    schedule(1 + (int) (50 * Math.random()));
                                    mensagem.setContents("Carregando: " + contador + "%");
                                    //GWT.log("!=100: "+contador);
                                    janelaCarregando.addItem(mensagem);
                                    janelaCarregando.setAnimateTime(1200);
                                    janelaCarregando.animateShow(AnimationEffect.FADE);

                                    if (contador >= 100) {
                                        mensagem.setContents("Carregando: 100%");
                                        // GWT.log("" + clienteEdicaoAuxiliar.size());                                            
                                        //(""+record.getAttribute("codigo"));
                                        int linhaClicada = listAux.getRecordIndex(record);
                                        listAux.selectRecord(linhaClicada);
                                        listAux.removeSelectedData();
                                        //listAux.refreshRow(listAux.getRecordIndex(record));
                                        int num = clienteEdicaoAuxiliar.size();
                                        int removidos = 0;
                                        for (int i = 0; i < num; i++) {
                                            TreeMap<String, String> endEditado = clienteEdicaoAuxiliar
                                                    .get(i - removidos);
                                            if (record.getAttribute("codigo")
                                                    .equalsIgnoreCase(endEditado.get("codFone"))) {
                                                clienteEdicaoAuxiliar.remove(endEditado);
                                                removidos++;
                                            }
                                        }
                                        Info.dbService.deletarFone(
                                                Integer.parseInt(record.getAttribute("codigo")),
                                                new AsyncCallback<Boolean>() {

                                                    @Override
                                                    public void onFailure(Throwable caught) {
                                                        throw new UnsupportedOperationException(
                                                                "Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                                                    }

                                                    @Override
                                                    public void onSuccess(Boolean enderecoDeletado) {
                                                        if (enderecoDeletado == true) {
                                                            SC.say("Telefone excluido com sucesso!");
                                                        } else {
                                                            SC.say("ERRO ao excluir telefone!");
                                                        }
                                                    }
                                                });
                                        clienteEdicao.put(clienteEdicaoAuxiliar.get(0).get("codCliente"),
                                                clienteEdicaoAuxiliar);
                                        //GWT.log("" + clienteEdicaoAuxiliar.size());
                                        telefonesTabBuscaCliente.selectRecord(linhaClicada);
                                        telefonesTabBuscaCliente.removeSelectedData();
                                        janelaCarregando.addItem(mensagem);
                                        janelaCarregando.setAnimateTime(1200);
                                        janelaCarregando.animateHide(AnimationEffect.FADE);
                                        contador = 100;
                                        janelaCarregando.destroy();
                                    }
                                } else {
                                    contador = 0;
                                }

                            }
                        }.schedule(50);
                    }
                });
                recordCanvas.addMember(excluirImg);
                return recordCanvas;

            } else {
                return null;
            }

        }
    };
    listTelefone.setFields(codigoTel, descricaoTelefone, telefone, editarTel, excluirTel);
    listTelefone.setCanPickFields(false);
    listTelefone.setShowRecordComponents(true);
    listTelefone.setShowRecordComponentsByCell(true);
    listTelefone.setShowAllRecords(true);
    listTelefone.setCanResizeFields(true);

    final SectionStackSection telefoneSection = new SectionStackSection();
    telefoneSection.setTitle("Telefones");
    telefoneSection.setItems(listTelefone);
    telefoneSection.setControls(addTelefone);
    telefoneSection.setExpanded(true);
    ArrayList<TreeMap<String, String>> telefones = clienteEdicao.get(clienteEdicao.firstKey());
    TreeMap<String, String> telAuxiliar = new TreeMap<String, String>();
    for (TreeMap<String, String> tels : telefones) {
        if (telefones.get(0).get("codFone") != null && telAuxiliar.get(tels.get("codFone")) == null) {
            Record novoTel = new Record();
            novoTel.setAttribute("codigo", tels.get("codFone"));
            novoTel.setAttribute("descricao", tels.get("descricaoFone"));
            novoTel.setAttribute("numero", Info.formataTelefone(tels.get("numeroFone")));
            listTelefone.addData(novoTel);
            telAuxiliar.put(tels.get("codFone"), tels.get("codFone"));
        }
    }
    ListGridField codEmail = new ListGridField("codigo", "Cdigo");
    codEmail.setHidden(true);
    ListGridField descricaoEmail = new ListGridField("descricao", "Descrio");
    descricaoEmail.setAlign(Alignment.CENTER);
    //Coluna Email
    ListGridField email = new ListGridField("email", "Email");
    email.setAlign(Alignment.CENTER);
    ListGridField editarEmail = new ListGridField("editar", "Editar");
    editarEmail.setAlign(Alignment.CENTER);
    editarEmail.setWidth(35);
    final ListGridField excluirEmail = new ListGridField("excluir", "Excluir");
    excluirEmail.setAlign(Alignment.CENTER);
    excluirEmail.setWidth(40);
    //cria grid Emails
    final ListGrid listEmail = new ListGrid() {
        @Override
        protected Canvas createRecordComponent(final ListGridRecord record, Integer colNum) {

            String fieldName = this.getFieldName(colNum);
            final ListGrid listAux = this;
            if (fieldName.equals("editar")) {
                HLayout recordCanvas = new HLayout(3);
                recordCanvas.setHeight(22);
                recordCanvas.setWidth100();
                recordCanvas.setAlign(Alignment.CENTER);
                ImgButton editImg = new ImgButton();
                editImg.setShowDown(false);
                editImg.setShowRollOver(false);
                editImg.setLayoutAlign(Alignment.CENTER);
                editImg.setSrc("[SKIN]actions/edit.png");
                editImg.setPrompt("Editar email");
                editImg.setHeight(16);
                editImg.setWidth(16);
                editImg.addClickHandler(new ClickHandler() {
                    public void onClick(ClickEvent event) {
                        EditarEmail editarEmail = new EditarEmail(clienteEdicao, record, listAux,
                                emailsTabBuscaCliente);
                        editarEmail.setAnimateTime(1200);
                        editarEmail.animateShow(AnimationEffect.FADE);
                    }
                });

                recordCanvas.addMember(editImg);
                return recordCanvas;
            } else if (fieldName.equals("excluir")) {
                HLayout recordCanvas = new HLayout(3);
                recordCanvas.setHeight(22);
                recordCanvas.setWidth100();
                recordCanvas.setAlign(Alignment.CENTER);
                ImgButton excluirImg = new ImgButton();
                excluirImg.setShowDown(false);
                excluirImg.setShowRollOver(false);
                excluirImg.setLayoutAlign(Alignment.CENTER);
                excluirImg.setSrc("[SKIN]actions/remove.png");
                excluirImg.setPrompt("Excluir email");
                excluirImg.setHeight(16);
                excluirImg.setWidth(16);
                excluirImg.addClickHandler(new ClickHandler() {
                    public void onClick(ClickEvent event) {
                        final Window janelaCarregando = new Window();
                        janelaCarregando.setShowTitle(false);
                        janelaCarregando.setWidth(100);
                        janelaCarregando.setHeight(50);
                        janelaCarregando.setShowEdges(false);
                        janelaCarregando.setShowCloseButton(false);
                        janelaCarregando.setShowMinimizeButton(false);
                        janelaCarregando.setIsModal(true);
                        janelaCarregando.setShowModalMask(true);
                        janelaCarregando.centerInPage();
                        janelaCarregando.setLayoutAlign(Alignment.CENTER);
                        final Label mensagem = new Label("Carregando..");
                        mensagem.setHeight(16);
                        new Timer() {
                            public void run() {
                                if (contador != 100) {

                                    contador += 1 + (int) (5 * Math.random());
                                    schedule(1 + (int) (50 * Math.random()));
                                    mensagem.setContents("Carregando: " + contador + "%");
                                    //GWT.log("!=100: "+contador);
                                    janelaCarregando.addItem(mensagem);
                                    janelaCarregando.setAnimateTime(1200);
                                    janelaCarregando.animateShow(AnimationEffect.FADE);

                                    if (contador >= 100) {
                                        mensagem.setContents("Carregando: 100%");
                                        //GWT.log("" + clienteEdicaoAuxiliar.size());                                            
                                        //GWT.log(""+record.getAttribute("codigo"));
                                        int linhaClicada = listAux.getRecordIndex(record);
                                        listAux.selectRecord(linhaClicada);
                                        listAux.removeSelectedData();
                                        //listAux.refreshRow(listAux.getRecordIndex(record));
                                        ArrayList<TreeMap<String, String>> editor = clienteEdicao
                                                .get(clienteEdicao.firstKey());
                                        for (TreeMap<String, String> editado : editor) {
                                            if (record.getAttribute("codigo")
                                                    .equalsIgnoreCase(editado.get("codEmail"))) {
                                                editado.put("codEmail", null);
                                                editado.put("descricaoEmail", null);
                                                editado.put("email", null);
                                                ;
                                            }
                                        }
                                        clienteEdicao.put(editor.get(0).get("codCliente"), editor);

                                        Info.dbService.deletarEmail(
                                                Integer.parseInt(record.getAttribute("codigo")),
                                                new AsyncCallback<Boolean>() {

                                                    @Override
                                                    public void onFailure(Throwable caught) {
                                                        throw new UnsupportedOperationException(
                                                                "Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                                                    }

                                                    @Override
                                                    public void onSuccess(Boolean enderecoDeletado) {
                                                        if (enderecoDeletado == true) {
                                                            SC.say("Email excluido com sucesso!");
                                                        } else {
                                                            SC.say("ERRO ao excluir email!");
                                                        }
                                                    }
                                                });
                                        //clienteEdicao.put(clienteEdicaoAuxiliar.get(0).get("codCliente"), clienteEdicaoAuxiliar);
                                        //GWT.log("" + clienteEdicao);
                                        emailsTabBuscaCliente.selectRecord(linhaClicada);
                                        emailsTabBuscaCliente.removeSelectedData();
                                        janelaCarregando.addItem(mensagem);
                                        janelaCarregando.setAnimateTime(1200);
                                        janelaCarregando.animateHide(AnimationEffect.FADE);
                                        contador = 100;
                                        janelaCarregando.destroy();
                                    }
                                } else {
                                    contador = 0;
                                }

                            }
                        }.schedule(50);
                    }
                });
                recordCanvas.addMember(excluirImg);
                return recordCanvas;

            } else {
                return null;
            }

        }
    };
    listEmail.setCanPickFields(false);
    listEmail.setFields(codEmail, descricaoEmail, email, editarEmail, excluirEmail);
    listEmail.setShowRecordComponents(true);
    listEmail.setShowRecordComponentsByCell(true);
    listEmail.setShowAllRecords(true);
    listEmail.setCanResizeFields(true);
    //cria a sections email que ir guardar a grid de emails
    final SectionStackSection emailSection = new SectionStackSection();
    emailSection.setTitle("Emails");
    emailSection.setItems(listEmail);
    emailSection.setControls(addEmail);
    emailSection.setExpanded(true);

    ArrayList<TreeMap<String, String>> emails = clienteEdicao.get(clienteEdicao.firstKey());
    TreeMap<String, String> emailAuxiliar = new TreeMap<String, String>();
    int i = 0;
    for (TreeMap<String, String> ems : emails) {
        if (emails.get(i).get("codEmail") != null) {
            if (emailAuxiliar.get(ems.get("codEmail")) == null) {
                Record novoEmail = new Record();
                novoEmail.setAttribute("codigo", ems.get("codEmail"));
                novoEmail.setAttribute("descricao", ems.get("descricaoEmail"));
                novoEmail.setAttribute("email", ems.get("email"));
                listEmail.addData(novoEmail);
                emailAuxiliar.put(ems.get("codEmail"), ems.get("codEmail"));
            }
            i = i + 1;
        } else {
            i = i + 1;
        }
    }
    ListGridField codUsuario = new ListGridField("codigo", "Cdigo");
    codUsuario.setHidden(true);
    ListGridField gridUsuario = new ListGridField("usuario", "Usurio");
    gridUsuario.setAlign(Alignment.CENTER);
    ListGridField gridSenha = new ListGridField("senha", "Senha");
    gridSenha.setAlign(Alignment.CENTER);
    final ListGridField statusCod = new ListGridField("statusCod", "Status");
    statusCod.setHidden(true);
    final ListGridField status = new ListGridField("status", "Status");
    final ListGridField codGrupo = new ListGridField("codGrupo", "cdigoGrupo");
    codGrupo.setHidden(true);
    final ListGridField grupo = new ListGridField("grupo", "grupo");
    final ListGridField reset = new ListGridField("resetUsuario", "Reset");
    final ListGridField resetCod = new ListGridField("resetCod", "Reset");
    resetCod.setHidden(true);
    ListGridField editarUsuario = new ListGridField("editar", "Editar");
    editarUsuario.setAlign(Alignment.CENTER);
    editarUsuario.setWidth(35);
    final ListGridField excluirUsuario = new ListGridField("excluir", "Excluir");
    excluirUsuario.setAlign(Alignment.CENTER);
    excluirUsuario.setWidth(40);
    final ListGrid listUsuario = new ListGrid() {
        @Override
        protected Canvas createRecordComponent(final ListGridRecord record, Integer colNum) {

            String fieldName = this.getFieldName(colNum);
            final ListGrid listAux = this;
            if (fieldName.equals("editar")) {
                HLayout recordCanvas = new HLayout(3);
                recordCanvas.setHeight(22);
                recordCanvas.setWidth100();
                recordCanvas.setAlign(Alignment.CENTER);
                ImgButton editImg = new ImgButton();
                editImg.setShowDown(false);
                editImg.setShowRollOver(false);
                editImg.setLayoutAlign(Alignment.CENTER);
                editImg.setSrc("[SKIN]actions/edit.png");
                editImg.setPrompt("Editar usurio");
                editImg.setHeight(16);
                editImg.setWidth(16);
                editImg.addClickHandler(new ClickHandler() {
                    public void onClick(ClickEvent event) {
                        EditarUsuario editarUsuario = new EditarUsuario(clienteEdicao, record, listAux,
                                usuariosTabBuscaCliente);
                        editarUsuario.setAnimateTime(1200);
                        editarUsuario.animateShow(AnimationEffect.FADE);
                    }
                });

                recordCanvas.addMember(editImg);
                return recordCanvas;
            } else if (fieldName.equals("excluir") && listAux.getRecordIndex(record) > 0) {
                HLayout recordCanvas = new HLayout(3);
                recordCanvas.setHeight(22);
                recordCanvas.setWidth100();
                recordCanvas.setAlign(Alignment.CENTER);
                ImgButton excluirImg = new ImgButton();
                excluirImg.setShowDown(false);
                excluirImg.setShowRollOver(false);
                excluirImg.setLayoutAlign(Alignment.CENTER);
                excluirImg.setSrc("[SKIN]actions/remove.png");
                excluirImg.setPrompt("Excluir usurio");
                excluirImg.setHeight(16);
                excluirImg.setWidth(16);
                excluirImg.addClickHandler(new ClickHandler() {
                    public void onClick(ClickEvent event) {
                        final Window janelaCarregando = new Window();
                        janelaCarregando.setShowTitle(false);
                        janelaCarregando.setWidth(100);
                        janelaCarregando.setHeight(50);
                        janelaCarregando.setShowEdges(false);
                        janelaCarregando.setShowCloseButton(false);
                        janelaCarregando.setShowMinimizeButton(false);
                        janelaCarregando.setIsModal(true);
                        janelaCarregando.setShowModalMask(true);
                        janelaCarregando.centerInPage();
                        janelaCarregando.setLayoutAlign(Alignment.CENTER);
                        final Label mensagem = new Label("Carregando..");
                        mensagem.setHeight(16);
                        new Timer() {
                            public void run() {
                                if (contador != 100) {
                                    //destroy();
                                    contador += 1 + (int) (5 * Math.random());
                                    schedule(1 + (int) (50 * Math.random()));
                                    mensagem.setContents("Carregando: " + contador + "%");
                                    //GWT.log("!=100: "+contador);
                                    janelaCarregando.addItem(mensagem);
                                    janelaCarregando.setAnimateTime(1200);
                                    janelaCarregando.animateShow(AnimationEffect.FADE);

                                    if (contador >= 100) {
                                        mensagem.setContents("Carregando: 100%");
                                        //GWT.log("" + clienteEdicaoAuxiliar.size());                                            
                                        //GWT.log(""+record.getAttribute("codigo"));
                                        int linhaClicada = listAux.getRecordIndex(record);
                                        listAux.selectRecord(linhaClicada);
                                        listAux.removeSelectedData();
                                        //listAux.refreshRow(listAux.getRecordIndex(record));
                                        int num = clienteEdicaoAuxiliar.size();
                                        int removidos = 0;
                                        if (num > 1) {
                                            for (int i = 0; i < num; i++) {
                                                TreeMap<String, String> endEditado = clienteEdicaoAuxiliar
                                                        .get(i - removidos);
                                                if (record.getAttribute("codigo")
                                                        .equalsIgnoreCase(endEditado.get("codUsuario"))) {
                                                    clienteEdicaoAuxiliar.remove(endEditado);
                                                    removidos++;
                                                }
                                            }
                                        }
                                        Info.dbService.deletarUsuario(
                                                Integer.parseInt(record.getAttribute("codigo")),
                                                new AsyncCallback<Boolean>() {

                                                    @Override
                                                    public void onFailure(Throwable caught) {
                                                        throw new UnsupportedOperationException(
                                                                "Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                                                    }

                                                    @Override
                                                    public void onSuccess(Boolean enderecoDeletado) {
                                                        if (enderecoDeletado == true) {
                                                            SC.say("Usurio excluido com sucesso!");
                                                        } else {
                                                            SC.say("ERRO ao excluir usurio!");
                                                        }
                                                    }
                                                });
                                        clienteEdicao.put(clienteEdicaoAuxiliar.get(0).get("codCliente"),
                                                clienteEdicaoAuxiliar);
                                        usuariosTabBuscaCliente.selectRecord(linhaClicada);
                                        usuariosTabBuscaCliente.removeSelectedData();
                                        janelaCarregando.addItem(mensagem);
                                        janelaCarregando.setAnimateTime(1200);
                                        janelaCarregando.animateHide(AnimationEffect.FADE);
                                        contador = 100;
                                        janelaCarregando.destroy();
                                    }
                                } else {
                                    contador = 0;
                                }

                            }
                        }.schedule(50);
                    }
                });
                recordCanvas.addMember(excluirImg);
                return recordCanvas;

            } else {
                return null;
            }

        }
    };
    listUsuario.setCanPickFields(false);
    listUsuario.setFields(codUsuario, gridUsuario, gridSenha, status, codGrupo, grupo, reset, resetCod,
            editarUsuario, excluirUsuario);
    listUsuario.setShowRecordComponents(true);
    listUsuario.setShowRecordComponentsByCell(true);
    listUsuario.setShowAllRecords(true);
    listUsuario.setCanResizeFields(true);
    final SectionStackSection usuarioSection = new SectionStackSection();
    usuarioSection.setTitle("Usurios");
    usuarioSection.setItems(listUsuario);
    usuarioSection.setControls(addUsuario);
    usuarioSection.setExpanded(true);

    ArrayList<TreeMap<String, String>> usuarios = clienteEdicao.get(clienteEdicao.firstKey());
    TreeMap<String, String> usuarioAuxiliar = new TreeMap<String, String>();
    if (usuarios.get(0).get("codUsuario") != null) {
        for (TreeMap<String, String> users : usuarios) {
            if (usuarioAuxiliar.get(users.get("codUsuario")) == null) {
                Record novoUser = new Record();
                novoUser.setAttribute("codigo", users.get("codUsuario"));
                novoUser.setAttribute("usuario", users.get("usuario"));
                novoUser.setAttribute("senha", users.get("senha"));
                novoUser.setAttribute("statusCod", users.get("ativoUsuario"));
                novoUser.setAttribute("status",
                        ((users.get("ativoUsuario").equalsIgnoreCase("t")) ? "Ativo" : "Bloqueado"));
                novoUser.setAttribute("codGrupo", users.get("codGrupo"));
                novoUser.setAttribute("grupo", users.get("nomeGrupo"));
                novoUser.setAttribute("resetUsuario",
                        ((users.get("resetUsuario").equalsIgnoreCase("t")) ? "Resetado" : "Resetar"));
                novoUser.setAttribute("resetCod", users.get("resetUsuario"));
                listUsuario.addData(novoUser);
                //GWT.log("reset: "+users.get("resetUsuario"));
                usuarioAuxiliar.put(users.get("codUsuario"), users.get("codUsuario"));
            }
        }
    }
    if (tipoPessoa.getValue().equals("2")) {
        dadosPessoais.setDefaultValue("Dados da Empresa");
        dadosPessoais.setSectionExpanded(true);

        nomeRazaoSocial.redraw();
        nomeRazaoSocial.setName("razao");
        nomeRazaoSocial.setTitle("Razo Social");
        nomeRazaoSocial.setKeyPressFilter("[a-zA-Z? 0-9]");

        cpfCnpj.redraw();
        cpfCnpj.setName("cnpj");
        cpfCnpj.setTitle("CNPJ");
        cpfCnpj.setMask("##.###.###/####-##");

        dataNascAbertura.redraw();
        dataNascAbertura.setName("dataAbertura");
        dataNascAbertura.setTitle("Data de Abertura.");

        profissaoResponsavel.redraw();
        profissaoResponsavel.setName("responsavel");
        profissaoResponsavel.setTitle("Responsvel");

        empresaCargo.redraw();
        empresaCargo.setName("cargo");
        empresaCargo.setTitle("Cargo");

    } else {
        dadosPessoais.setDefaultValue("Dados Pessoais");
        dadosPessoais.setSectionExpanded(true);

        nomeRazaoSocial.redraw();
        nomeRazaoSocial.setName("nome");
        nomeRazaoSocial.setTitle("Nome");
        nomeRazaoSocial.setKeyPressFilter("[a-zA-Z? ]");

        cpfCnpj.redraw();
        cpfCnpj.setTitle("CPF");
        cpfCnpj.setName("cpf");
        cpfCnpj.setMask("###.###.###-##");

        dataNascAbertura.redraw();
        dataNascAbertura.setTitle("Data de Nasc.");
        dataNascAbertura.setName("dataNasc");

        profissaoResponsavel.redraw();
        profissaoResponsavel.setName("profissao");
        profissaoResponsavel.setTitle("Profisso");

        empresaCargo.redraw();
        empresaCargo.setName("empresa");
        empresaCargo.setTitle("Empresa");

    }

    //Desenha o formulrio com todos os itens na tab Novo Cliente.
    formEditarCliente.setFields(unidade, datadeAdesao, tipoPessoa, dadosPessoais, nomeRazaoSocial, cpfCnpj,
            dataNascAbertura, profissaoResponsavel, empresaCargo);

    //Ao do boto para adicionar nova linha na ListGrid Endereo
    addEndereco.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent event) {

            EditarNovoEndereco dialogEndereco = new EditarNovoEndereco(clienteEdicao, listEndereco,
                    enderecosTabBuscaCliente);
            dialogEndereco.setAnimateTime(1200);
            dialogEndereco.animateShow(AnimationEffect.FADE);
        }
    });
    //Ao do boto para adicionar nova linha na ListGrid Telefone 
    addTelefone.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent event) {

            EditarNovoTelefone novoTel = new EditarNovoTelefone(clienteEdicao, listTelefone,
                    telefonesTabBuscaCliente);
            novoTel.setAnimateTime(1200);
            novoTel.animateShow(AnimationEffect.FADE);
        }
    });
    //Ao do boto para adicionar nova linha na ListGrid Email
    addEmail.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent event) {
            EditarNovoEmail novoEmail = new EditarNovoEmail(clienteEdicao, listEmail, emailsTabBuscaCliente);
            novoEmail.setAnimateTime(1200);
            novoEmail.animateShow(AnimationEffect.FADE);
        }
    });
    //Ao do boto para adicionar nova linha na ListGrid Usurio
    addUsuario.addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent event) {
            EditarNovoUsuario dialogNovoUser = new EditarNovoUsuario(clienteEdicao, listUsuario,
                    usuariosTabBuscaCliente);
            dialogNovoUser.setAnimateTime(1200);
            dialogNovoUser.animateShow(AnimationEffect.FADE);
        }
    });

    salvar.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            if (formEditarCliente.validate()) {
                contador = 0;
                final Window janelaCarregando = new Window();
                janelaCarregando.setShowTitle(false);
                janelaCarregando.setWidth(100);
                janelaCarregando.setHeight(50);
                janelaCarregando.setShowEdges(false);
                janelaCarregando.setShowCloseButton(false);
                janelaCarregando.setShowMinimizeButton(false);
                janelaCarregando.setIsModal(true);
                janelaCarregando.setShowModalMask(true);
                janelaCarregando.centerInPage();
                janelaCarregando.setLayoutAlign(Alignment.CENTER);
                final Label mensagem = new Label("Carregando..");
                mensagem.setHeight(16);

                new Timer() {
                    public void run() {

                        if (contador != 100) {
                            //destroy();
                            contador += 1 + (int) (5 * Math.random());
                            schedule(1 + (int) (5 * Math.random()));
                            mensagem.setContents("Carregando: " + contador + "%");
                            //GWT.log("!=100: "+contador);
                            janelaCarregando.addItem(mensagem);
                            janelaCarregando.setAnimateTime(1200);
                            janelaCarregando.animateShow(AnimationEffect.FADE);

                            if (contador >= 100) {
                                ArrayList<TreeMap<String, String>> editor = clienteEdicao
                                        .get(clienteEdicao.firstKey());
                                for (TreeMap<String, String> editado : editor) {
                                    if (editado.get("codCliente").equalsIgnoreCase(clienteEdicao.firstKey())) {
                                        editado.put("codCliente", clienteEdicao.firstKey());
                                        editado.put("codUnidade", unidade.getValueAsString());
                                        editado.put("nomeCliente", nomeRazaoSocial.getValueAsString());
                                        editado.put("dataAdesao",
                                                String.valueOf(datadeAdesao.getValueAsDate().getTime()));
                                        editado.put("tipoCliente", tipoPessoa.getValueAsString());
                                    }
                                }
                                clienteEdicao.put(editor.get(0).get("codCliente"), editor);
                                //GWT.log("Cliente edit:" + clienteEdicao);
                                TreeMap<String, String> clienteEditado = new TreeMap<String, String>();
                                clienteEditado.put("codCliente", clienteEdicao.firstKey());
                                clienteEditado.put("unidadeCodUnidade", unidade.getValueAsString());
                                clienteEditado.put("nome", nomeRazaoSocial.getValueAsString());
                                Date dataAdesao = datadeAdesao.getValueAsDate();
                                clienteEditado.put("tipo", tipoPessoa.getValueAsString());

                                Info.dbService.alterarCliente(clienteEditado, dataAdesao,
                                        new AsyncCallback<Boolean>() {

                                            @Override
                                            public void onFailure(Throwable caught) {
                                                throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                                            }

                                            @Override
                                            public void onSuccess(Boolean clienteEditadoBD) {
                                                //GWT.log("" + clienteEditadoBD);
                                                if (clienteEditadoBD == true) {
                                                    if (clienteEdicao.get(clienteEdicao.firstKey()).get(0)
                                                            .get("tipoCliente").equals("1")) {
                                                        TreeMap<String, String> pessoaEditada = new TreeMap<String, String>();
                                                        pessoaEditada.put("codCliente",
                                                                clienteEdicao.firstKey());
                                                        pessoaEditada.put("codPessoa",
                                                                clienteEdicao.get(clienteEdicao.firstKey())
                                                                        .get(0).get("codPessoa"));
                                                        pessoaEditada.put("cpf", cpfCnpj.getValueAsString());
                                                        Date dataNascimento = dataNascAbertura.getValueAsDate();
                                                        pessoaEditada.put("profissao",
                                                                profissaoResponsavel.getValueAsString());
                                                        pessoaEditada.put("empresa",
                                                                empresaCargo.getValueAsString());
                                                        //GWT.log("antes do mtodo alterarPessoa");
                                                        Info.dbService.alterarPessoa(pessoaEditada,
                                                                dataNascimento, new AsyncCallback<Boolean>() {

                                                                    @Override
                                                                    public void onFailure(Throwable caught) {
                                                                        throw new UnsupportedOperationException(
                                                                                "Not supported yet.!!!!!!!!!!!"); //To change body of generated methods, choose Tools | Templates.
                                                                    }

                                                                    @Override
                                                                    public void onSuccess(
                                                                            Boolean resultPessoaEditada) {
                                                                        if (resultPessoaEditada == true) {
                                                                            // GWT.log("Linha 1");
                                                                            ArrayList<TreeMap<String, String>> editor = clienteEdicao
                                                                                    .get(clienteEdicao
                                                                                            .firstKey());
                                                                            //GWT.log("Linha 2");
                                                                            //GWT.log("" + clienteEdicao.firstKey());
                                                                            for (TreeMap<String, String> editado : editor) {
                                                                                //GWT.log("Linha 3");
                                                                                //GWT.log("codCliente: " + editado.get("codCliente"));
                                                                                if (editado.get("codCliente")
                                                                                        .equalsIgnoreCase(
                                                                                                clienteEdicao
                                                                                                        .firstKey())) {
                                                                                    //GWT.log("Linha: " + clienteEdicao.get(clienteEdicao.firstKey()).get(0).get("codPessoa"));
                                                                                    editado.put("codPessoa",
                                                                                            clienteEdicao.get(
                                                                                                    clienteEdicao
                                                                                                            .firstKey())
                                                                                                    .get(0)
                                                                                                    .get("codPessoa"));
                                                                                    editado.put("cpf", cpfCnpj
                                                                                            .getValueAsString());
                                                                                    editado.put("dataNasc",
                                                                                            String.valueOf(
                                                                                                    dataNascAbertura
                                                                                                            .getValueAsDate()
                                                                                                            .getTime()));
                                                                                    editado.put("profissao",
                                                                                            profissaoResponsavel
                                                                                                    .getValueAsString());
                                                                                    editado.put(
                                                                                            "trabalhoPessoa",
                                                                                            empresaCargo
                                                                                                    .getValueAsString());
                                                                                }
                                                                            }
                                                                            clienteEdicao.put(
                                                                                    editor.get(0)
                                                                                            .get("codCliente"),
                                                                                    editor);
                                                                            //GWT.log("Cliente Pessoa: " + clienteEdicao);
                                                                            dadosClienteTabBuscaCliente
                                                                                    .selectAllRecords();
                                                                            dadosClienteTabBuscaCliente
                                                                                    .removeSelectedData();
                                                                            Record cliente = new Record();
                                                                            cliente.setAttribute("codigo",
                                                                                    clienteEdicao.firstKey());
                                                                            cliente.setAttribute("nome",
                                                                                    nomeRazaoSocial
                                                                                            .getValueAsString());
                                                                            cliente.setAttribute("cpf",
                                                                                    Info.formataCPF(cpfCnpj
                                                                                            .getValueAsString()));
                                                                            cliente.setAttribute("dataNasc",
                                                                                    dataNascAbertura
                                                                                            .getValueAsDate());
                                                                            cliente.setAttribute("dataAdesao",
                                                                                    datadeAdesao
                                                                                            .getValueAsDate());
                                                                            cliente.setAttribute("unidade",
                                                                                    unidade.getDisplayValue());
                                                                            dadosClienteTabBuscaCliente
                                                                                    .addData(cliente);
                                                                            //SC.say("Cliente pessoa atualizado com sucesso");
                                                                        }

                                                                    }
                                                                });
                                                    } else {
                                                        if (clienteEdicao.get(clienteEdicao.firstKey()).get(0)
                                                                .get("tipoCliente").equals("2")) {
                                                            TreeMap<String, String> pessoaEditada = new TreeMap<String, String>();
                                                            pessoaEditada.put("codCliente",
                                                                    clienteEdicao.firstKey());
                                                            pessoaEditada.put("codEmpresa",
                                                                    clienteEdicao.get(clienteEdicao.firstKey())
                                                                            .get(0).get("codEmpresa"));
                                                            pessoaEditada.put("cnpj",
                                                                    cpfCnpj.getValueAsString());
                                                            Date dataAbertura = dataNascAbertura
                                                                    .getValueAsDate();
                                                            pessoaEditada.put("responsavel",
                                                                    profissaoResponsavel.getValueAsString());
                                                            pessoaEditada.put("cargo",
                                                                    empresaCargo.getValueAsString());
                                                            //GWT.log("antes do mtodo alterar Empresa");
                                                            Info.dbService.alterarEmpresa(pessoaEditada,
                                                                    dataAbertura, new AsyncCallback<Boolean>() {

                                                                        @Override
                                                                        public void onFailure(
                                                                                Throwable caught) {
                                                                            throw new UnsupportedOperationException(
                                                                                    "Not supported yet.*************"); //To change body of generated methods, choose Tools | Templates.
                                                                        }

                                                                        @Override
                                                                        public void onSuccess(
                                                                                Boolean resultPessoaEditada) {
                                                                            if (resultPessoaEditada == true) {
                                                                                //GWT.log("Linha 1 Empresa");
                                                                                ArrayList<TreeMap<String, String>> editor = clienteEdicao
                                                                                        .get(clienteEdicao
                                                                                                .firstKey());
                                                                                //GWT.log("Linha 2 Empresa");
                                                                                //GWT.log("" + clienteEdicao.firstKey());
                                                                                for (TreeMap<String, String> editado : editor) {
                                                                                    //GWT.log("Linha 3 Empresa");
                                                                                    //GWT.log("codCliente: " + editado.get("codCliente"));
                                                                                    if (editado
                                                                                            .get("codCliente")
                                                                                            .equalsIgnoreCase(
                                                                                                    clienteEdicao
                                                                                                            .firstKey())) {
                                                                                        // GWT.log("Linha: " + clienteEdicao.get(clienteEdicao.firstKey()).get(0).get("codEmpresa"));
                                                                                        editado.put(
                                                                                                "codEmpresa",
                                                                                                clienteEdicao
                                                                                                        .get(clienteEdicao
                                                                                                                .firstKey())
                                                                                                        .get(0)
                                                                                                        .get("codEmpresa"));
                                                                                        editado.put("cnpj",
                                                                                                cpfCnpj.getValueAsString());
                                                                                        editado.put(
                                                                                                "dataAbertura",
                                                                                                String.valueOf(
                                                                                                        dataNascAbertura
                                                                                                                .getValueAsDate()
                                                                                                                .getTime()));
                                                                                        editado.put(
                                                                                                "responsavel",
                                                                                                profissaoResponsavel
                                                                                                        .getValueAsString());
                                                                                        editado.put("cargo",
                                                                                                empresaCargo
                                                                                                        .getValueAsString());
                                                                                    }
                                                                                }
                                                                                clienteEdicao.put(
                                                                                        editor.get(0).get(
                                                                                                "codCliente"),
                                                                                        editor);
                                                                                //GWT.log("Cliente Empresa: " + clienteEdicao);
                                                                                dadosClienteTabBuscaCliente
                                                                                        .selectAllRecords();
                                                                                dadosClienteTabBuscaCliente
                                                                                        .removeSelectedData();
                                                                                Record cliente = new Record();
                                                                                cliente.setAttribute("codigo",
                                                                                        clienteEdicao
                                                                                                .firstKey());
                                                                                cliente.setAttribute("nome",
                                                                                        nomeRazaoSocial
                                                                                                .getValueAsString());
                                                                                cliente.setAttribute("cnpj",
                                                                                        Info.formataCNPJ(cpfCnpj
                                                                                                .getValueAsString()));
                                                                                cliente.setAttribute(
                                                                                        "dataAbert",
                                                                                        dataNascAbertura
                                                                                                .getValueAsDate());
                                                                                cliente.setAttribute(
                                                                                        "dataAdesao",
                                                                                        datadeAdesao
                                                                                                .getValueAsDate());
                                                                                cliente.setAttribute("unidade",
                                                                                        unidade.getDisplayValue());
                                                                                dadosClienteTabBuscaCliente
                                                                                        .addData(cliente);

                                                                            }

                                                                        }
                                                                    });
                                                        }
                                                    }
                                                } else {
                                                    SC.say("Erro ao alterar os dados do cliente!");
                                                }
                                            }
                                        });
                                janelaCarregando.addItem(mensagem);
                                janelaCarregando.setAnimateTime(1200);
                                janelaCarregando.animateHide(AnimationEffect.FADE);
                                SC.say("Cliente atualizado com sucesso");
                                contador = 100;
                                janelaCarregando.destroy();
                                windAux.destroy();
                            }
                        } else {
                            contador = 0;
                        }

                    }
                }.schedule(50);

            }

        }

    });

    novoCliente.setSections(formSection, enderecoSection, telefoneSection, emailSection, usuarioSection);
    novoCliente.setVisibilityMode(VisibilityMode.MULTIPLE);
    novoCliente.setAnimateSections(true);
    novoCliente.setWidth100();
    novoCliente.setHeight100();
    novoCliente.setOverflow(Overflow.VISIBLE);

    painelBotoes.addMember(salvar);

    painelNovoCliente.addMember(novoCliente);
    painelNovoCliente.addMember(painelBotoes);
    //Desenhando o formulrio na Tela
    painelPai.addMember(painelNovoCliente);
    //GWT.log(""+clienteEdicao.size());
    addItem(painelPai);

}

From source file:com.automaster.client.ui.paineis.dialogs.editar.EditarEmail.java

public EditarEmail(final TreeMap<String, ArrayList<TreeMap<String, String>>> clienteEdicao,
        final ListGridRecord listEmail, final ListGrid listAux, final ListGrid emailsTabBuscaCliente) {

    setTitle("Editar Email");
    setWidth(500);/*  w ww . j ava  2  s.  co m*/
    setHeight(280);
    setShowMinimizeButton(false);
    setIsModal(true);
    setShowModalMask(true);
    centerInPage();
    setLayoutAlign(Alignment.CENTER);

    final DynamicForm formEditEmail = new DynamicForm();
    formEditEmail.setAutoFocus(true);

    Label label = new Label("<strong><h3>Editar Email</h3></strong>");
    label.setAlign(Alignment.CENTER);
    label.setStyleName(scClassName);

    final TextItem itemDescricao = new TextItem();
    itemDescricao.setTitle("Descrio");
    itemDescricao.setName("descricao");
    itemDescricao.setKeyPressFilter("[a-zA-Z?? [0-9]");
    itemDescricao.setCharacterCasing(CharacterCasing.UPPER);
    itemDescricao.setRequired(true);
    itemDescricao.setWidth(300);
    LengthRangeValidator tamanhoDescricao = new LengthRangeValidator();
    tamanhoDescricao.setMin(3);
    itemDescricao.setValidators(tamanhoDescricao);
    itemDescricao.setValue(listEmail.getAttribute("descricao"));

    RegExpValidator emailValidator = new RegExpValidator();
    emailValidator.setExpression("^([a-zA-Z0-9_.\\-+])+@(([a-zA-Z0-9\\-])+\\.)+[a-zA-Z0-9]{2,4}$");
    emailValidator.setErrorMessage("Campo invlido! Ex: nome@dominio.com");

    final TextItem itemEmail = new TextItem();
    itemEmail.setTitle("Email");
    itemEmail.setName("email");
    itemEmail.setRequired(true);
    itemEmail.setWidth(300);
    itemEmail.setValidators(emailValidator);
    itemEmail.setValue(listEmail.getAttribute("email"));
    formEditEmail.setFields(itemDescricao, itemEmail);

    HLayout hButoes = new HLayout();
    hButoes.setWidth(100);
    hButoes.setMembersMargin(3);
    hButoes.setLayoutAlign(Alignment.CENTER);
    IButton salvar = new IButton("Salvar");
    hButoes.setMargin(5);
    hButoes.addMember(salvar);
    addCloseClickHandler(new CloseClickHandler() {

        @Override
        public void onCloseClick(CloseClickEvent event) {
            destroy();
        }
    });

    salvar.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            if (formEditEmail.validate()) {
                contador = 0;
                final Window janelaCarregando = new Window();
                janelaCarregando.setShowTitle(false);
                janelaCarregando.setWidth(100);
                janelaCarregando.setHeight(50);
                janelaCarregando.setShowEdges(false);
                janelaCarregando.setShowCloseButton(false);
                janelaCarregando.setShowMinimizeButton(false);
                janelaCarregando.setIsModal(true);
                janelaCarregando.setShowModalMask(true);
                janelaCarregando.centerInPage();
                janelaCarregando.setLayoutAlign(Alignment.CENTER);
                final Label mensagem = new Label("Carregando..");
                mensagem.setHeight(16);

                new Timer() {
                    public void run() {

                        if (contador != 100) {
                            //destroy();
                            contador += 1 + (int) (5 * Math.random());
                            schedule(1 + (int) (50 * Math.random()));
                            mensagem.setContents("Carregando: " + contador + "%");
                            //GWT.log("!=100: "+contador);
                            janelaCarregando.addItem(mensagem);
                            janelaCarregando.setAnimateTime(1200);
                            janelaCarregando.animateShow(AnimationEffect.FADE);

                            if (contador >= 100) {
                                mensagem.setContents("Carregando: 100%");
                                ArrayList<TreeMap<String, String>> editor = clienteEdicao
                                        .get(clienteEdicao.firstKey());
                                for (TreeMap<String, String> editado : editor) {
                                    if (listEmail.getAttribute("codigo")
                                            .equalsIgnoreCase(editado.get("codEmail"))) {
                                        //editado.put("codEmail", listEmail.getAttribute("codigo"));
                                        editado.put("descricaoEmail", itemDescricao.getValueAsString());
                                        editado.put("email", itemEmail.getValueAsString());
                                    }
                                }
                                clienteEdicao.put(editor.get(0).get("codCliente"), editor);
                                //listEmail.setAttribute("codigo", listEmail.getAttribute("codigo"));
                                listEmail.setAttribute("descricao", itemDescricao.getValueAsString());
                                listEmail.setAttribute("email", itemEmail.getValueAsString());
                                listAux.refreshRow(listAux.getRecordIndex(listEmail));

                                int emailClicado = listAux.getRecordIndex(listEmail);
                                //GWT.log("email Clicado:"+emailClicado);
                                emailsTabBuscaCliente.getRecord(emailClicado).setAttribute("descricao",
                                        itemDescricao.getValueAsString());
                                emailsTabBuscaCliente.getRecord(emailClicado).setAttribute("descricao",
                                        itemDescricao.getValueAsString());
                                emailsTabBuscaCliente.getRecord(emailClicado).setAttribute("email",
                                        itemEmail.getValueAsString());
                                emailsTabBuscaCliente.refreshRow(emailClicado);

                                TreeMap<String, String> emailAtualizado = new TreeMap<String, String>();
                                emailAtualizado.put("codEmail", listEmail.getAttribute("codigo"));
                                emailAtualizado.put("descricao", itemDescricao.getValueAsString());
                                emailAtualizado.put("email", itemEmail.getValueAsString());
                                Info.dbService.alterarEmail(emailAtualizado, new AsyncCallback<Boolean>() {

                                    @Override
                                    public void onFailure(Throwable caught) {
                                        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                                    }

                                    @Override
                                    public void onSuccess(Boolean emailAlterado) {
                                        if (emailAlterado == true) {
                                            SC.say("Email atualizado com sucesso!");
                                        } else {
                                            SC.warn("Erro ao atualizar o email!");
                                        }
                                    }
                                });
                                //GWT.log("" + listEmail.getAttribute("codigo"));
                                janelaCarregando.addItem(mensagem);
                                janelaCarregando.setAnimateTime(1200);
                                janelaCarregando.animateHide(AnimationEffect.FADE);
                                contador = 100;
                                destroy();
                            }
                        } else {
                            contador = 0;
                        }

                    }
                }.schedule(50);

            }
        }
    });
    addItem(label);
    addItem(formEditEmail);
    addItem(hButoes);

}

From source file:com.automaster.client.ui.paineis.dialogs.editar.EditarEndereco.java

public EditarEndereco(final TreeMap<String, ArrayList<TreeMap<String, String>>> clienteEdicao,
        final ListGridRecord listEnd, final ListGrid listAux, final ListGrid enderecosTabBuscaCliente) {

    setTitle("Editar Endereo");
    setWidth(500);/*from   www  .  jav  a 2  s  .co  m*/
    setHeight(500);
    setShowMinimizeButton(false);
    setIsModal(true);
    setShowModalMask(true);
    centerInPage();
    setLayoutAlign(Alignment.CENTER);

    final DynamicForm formEditEndereco = new DynamicForm();
    formEditEndereco.setAutoFocus(true);
    Label label = new Label("<h3>Editar Endereo</h3>");
    label.setAlign(Alignment.CENTER);
    label.setStyleName(scClassName);
    //criando radioGroup que o usurio escolhe o tipo de cliente a ser cadastrado
    final TextItem itemDescricao = new TextItem();
    itemDescricao.setTitle("Descrio");
    itemDescricao.setName("descricao");
    itemDescricao.setRequired(true);
    itemDescricao.setCharacterCasing(CharacterCasing.UPPER);
    itemDescricao.setWidth(300);
    itemDescricao.setValue(listEnd.getAttribute("descricao"));
    if (itemDescricao.getValue().equals("ENDEREO DE COBRANA")) {
        itemDescricao.setDisabled(true);
    } else {
        itemDescricao.setDisabled(false);
    }
    LengthRangeValidator tamanhoTextItem = new LengthRangeValidator();
    tamanhoTextItem.setMin(3);

    final TextItem itemLogradouro = new TextItem("Logradouro");
    itemLogradouro.setKeyPressFilter("[a-zA-Z?? [0-9]");
    itemLogradouro.setCharacterCasing(CharacterCasing.UPPER);
    itemLogradouro.setRequired(true);
    itemLogradouro.setWidth(300);
    itemLogradouro.setValidators(tamanhoTextItem);
    itemLogradouro.setValue(listEnd.getAttribute("logradouro"));

    final TextItem itemNumero = new TextItem("N");
    itemNumero.setKeyPressFilter("[a-zA-Z[0-9]");
    itemNumero.setCharacterCasing(CharacterCasing.UPPER);
    itemNumero.setRequired(true);
    itemNumero.setWidth(50);
    itemNumero.getAttribute(listEnd.getAttribute("numero"));
    itemNumero.setValue(listEnd.getAttribute("numero"));

    final TextItem itemBairro = new TextItem("Bairro");
    itemBairro.setKeyPressFilter("[a-zA-Z?? [0-9]");
    itemBairro.setCharacterCasing(CharacterCasing.UPPER);
    itemBairro.setRequired(true);
    itemBairro.setValidators(tamanhoTextItem);
    itemBairro.setWidth(300);
    itemBairro.setValue(listEnd.getAttribute("bairro"));

    itemEstado.setTitle("Estado");
    itemEstado.setName("estado");
    itemEstado.setWidth(300);
    itemEstado.setRequired(true);

    Info.dbService.buscarTodosEstados(new AsyncCallback<ArrayList<TreeMap<String, String>>>() {

        @Override
        public void onFailure(Throwable caught) {
            throw new UnsupportedOperationException(
                    "Erro ao Listar os Estados, entre em contato com Administrador!");
        }

        @Override
        public void onSuccess(ArrayList<TreeMap<String, String>> result) {
            LinkedHashMap<String, String> valueMapEst = new LinkedHashMap<String, String>();
            for (TreeMap<String, String> est : result) {
                valueMapEst.put(est.get("codEstado"), est.get("uf"));
            }
            itemEstado.setValueMap(valueMapEst);

        }
    });

    itemEstado.setDefaultValue(true);
    itemEstado.setValue(listEnd.getAttribute("estadoCod"));

    Info.dbService.buscarCidadePorEstado(Integer.parseInt(itemEstado.getValueAsString()),
            new AsyncCallback<ArrayList<TreeMap<String, String>>>() {

                @Override
                public void onFailure(Throwable caught) {
                    throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                }

                @Override
                public void onSuccess(ArrayList<TreeMap<String, String>> result) {

                    LinkedHashMap<String, String> valueMapCid = new LinkedHashMap<String, String>();
                    for (TreeMap<String, String> est : result) {
                        valueMapCid.put(est.get("codCidade"), est.get("nome"));

                    }
                    itemCidade.setValueMap(valueMapCid);
                    itemCidade.setValue(listEnd.getAttribute("cidadeCod"));

                }

            });
    itemCidade.setWidth(300);
    itemCidade.setAddUnknownValues(false);
    itemCidade.setDefaultToFirstOption(true);

    itemEstado.addChangeHandler(new ChangeHandler() {

        @Override
        public void onChange(ChangeEvent event) {
            String selectedItem = (String) event.getValue();

            Info.dbService.buscarCidadePorEstado(Integer.parseInt(selectedItem),
                    new AsyncCallback<ArrayList<TreeMap<String, String>>>() {

                        @Override
                        public void onFailure(Throwable caught) {
                            throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                        }

                        @Override
                        public void onSuccess(ArrayList<TreeMap<String, String>> result) {

                            LinkedHashMap<String, String> valueMapCid = new LinkedHashMap<String, String>();
                            for (TreeMap<String, String> est : result) {
                                valueMapCid.put(est.get("codCidade"), est.get("nome"));
                            }
                            itemCidade.setValueMap(valueMapCid);

                        }

                    });
        }
    });

    itemCidade.setRequired(true);

    LengthRangeValidator tamanhoCep = new LengthRangeValidator();
    tamanhoCep.setMin(9);

    final TextItem itemCep = new TextItem("CEP");
    itemCep.setMask("#####-###");
    itemCep.setMaskSaveLiterals(true);
    itemCep.setCharacterCasing(CharacterCasing.UPPER);
    itemCep.setValidators(tamanhoCep);
    itemCep.setRequired(true);
    itemCep.setValue(listEnd.getAttribute("cep"));

    final TextAreaItem itemReferencia = new TextAreaItem();
    itemReferencia.setTitle("Referncia");
    //itemReferencia.setRequired(true);
    itemReferencia.setValidators(tamanhoTextItem);
    itemReferencia.setWidth(300);
    itemReferencia.setHeight(100);
    itemReferencia.setValue(listEnd.getAttribute("referencia"));

    addCloseClickHandler(new CloseClickHandler() {

        @Override
        public void onCloseClick(CloseClickEvent event) {
            destroy();
        }
    });

    HLayout hButoes = new HLayout();
    hButoes.setWidth(100);
    hButoes.setMembersMargin(3);
    hButoes.setLayoutAlign(Alignment.CENTER);
    IButton salvar = new IButton("Salvar");
    hButoes.addMember(salvar);

    salvar.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            // GWT.log("editor: "+listEnd.getAttribute("codigo"));
            if (formEditEndereco.validate()) {
                contador = 0;
                final Window janelaCarregando = new Window();
                janelaCarregando.setShowTitle(false);
                janelaCarregando.setWidth(100);
                janelaCarregando.setHeight(50);
                janelaCarregando.setShowEdges(false);
                janelaCarregando.setShowCloseButton(false);
                janelaCarregando.setShowMinimizeButton(false);
                janelaCarregando.setIsModal(true);
                janelaCarregando.setShowModalMask(true);
                janelaCarregando.centerInPage();
                janelaCarregando.setLayoutAlign(Alignment.CENTER);
                final Label mensagem = new Label("Carregando..");
                mensagem.setHeight(16);
                //GWT.log("editor: "+clienteEdicao.pollFirstEntry().getValue());

                new Timer() {
                    public void run() {

                        if (contador != 100) {
                            //destroy();
                            contador += 1 + (int) (5 * Math.random());
                            schedule(1 + (int) (50 * Math.random()));
                            mensagem.setContents("Carregando: " + contador + "%");
                            //GWT.log("!=100: "+contador);
                            janelaCarregando.addItem(mensagem);
                            janelaCarregando.setAnimateTime(1200);
                            janelaCarregando.animateShow(AnimationEffect.FADE);

                            if (contador >= 100) {
                                mensagem.setContents("Carregando: 100%");
                                ArrayList<TreeMap<String, String>> editor = clienteEdicao
                                        .get(clienteEdicao.firstKey());
                                for (TreeMap<String, String> editado : editor) {
                                    if (listEnd.getAttribute("codigo")
                                            .equalsIgnoreCase(editado.get("codEndereco"))) {
                                        //editado.put("codEndereco", listEnd.getAttribute("codigo"));
                                        editado.put("descricaoEndereco", itemDescricao.getValueAsString());
                                        editado.put("logradouro", itemLogradouro.getValueAsString());
                                        editado.put("numeroEndereco", itemNumero.getValueAsString());
                                        editado.put("bairro", itemBairro.getValueAsString());
                                        editado.put("codCidade", itemCidade.getValueAsString());
                                        editado.put("nomeCidade", itemCidade.getDisplayValue());
                                        editado.put("codEstado", itemEstado.getValueAsString());
                                        editado.put("estadoUf", itemEstado.getDisplayValue());
                                        editado.put("cep", itemCep.getValueAsString());
                                        editado.put("referenciaEndereco", itemReferencia.getValueAsString());
                                    }
                                }
                                clienteEdicao.put(editor.get(0).get("codCliente"), editor);
                                listEnd.setAttribute("descricao", itemDescricao.getValueAsString());
                                listEnd.setAttribute("logradouro", itemLogradouro.getValueAsString());
                                listEnd.setAttribute("numero", itemNumero.getValueAsString());
                                listEnd.setAttribute("bairro", itemBairro.getValueAsString());
                                listEnd.setAttribute("cep", itemCep.getValueAsString());
                                listEnd.setAttribute("estadoCod", itemEstado.getValueAsString());
                                listEnd.setAttribute("estado", itemEstado.getDisplayValue());
                                listEnd.setAttribute("cidadeCod", itemCidade.getValueAsString());
                                listEnd.setAttribute("cidade", itemCidade.getDisplayValue());
                                listEnd.setAttribute("referencia", itemReferencia.getValueAsString());
                                listAux.refreshRow(listAux.getRecordIndex(listEnd));

                                int endClicado = listAux.getRecordIndex(listEnd);
                                enderecosTabBuscaCliente.getRecord(endClicado).setAttribute("descricao",
                                        itemDescricao.getValueAsString());
                                enderecosTabBuscaCliente.getRecord(endClicado).setAttribute("logradouro",
                                        itemLogradouro.getValueAsString());
                                enderecosTabBuscaCliente.getRecord(endClicado).setAttribute("numero",
                                        itemNumero.getValueAsString());
                                enderecosTabBuscaCliente.getRecord(endClicado).setAttribute("bairro",
                                        itemBairro.getValueAsString());
                                enderecosTabBuscaCliente.getRecord(endClicado).setAttribute("cep",
                                        itemCep.getValueAsString());
                                enderecosTabBuscaCliente.getRecord(endClicado).setAttribute("estadoCod",
                                        itemEstado.getValueAsString());
                                enderecosTabBuscaCliente.getRecord(endClicado).setAttribute("estado",
                                        itemEstado.getDisplayValue());
                                enderecosTabBuscaCliente.getRecord(endClicado).setAttribute("cidadeCod",
                                        itemCidade.getValueAsString());
                                enderecosTabBuscaCliente.getRecord(endClicado).setAttribute("cidade",
                                        itemCidade.getDisplayValue());
                                enderecosTabBuscaCliente.getRecord(endClicado).setAttribute("referencia",
                                        itemReferencia.getValueAsString());
                                enderecosTabBuscaCliente.refreshRow(endClicado);

                                TreeMap<String, String> enderecoAtualizado = new TreeMap<String, String>();
                                enderecoAtualizado.put("codEndereco", listEnd.getAttribute("codigo"));
                                enderecoAtualizado.put("codCidade", itemCidade.getValueAsString());
                                enderecoAtualizado.put("descricao", itemDescricao.getValueAsString());
                                enderecoAtualizado.put("logradouro", itemLogradouro.getValueAsString());
                                enderecoAtualizado.put("numero", itemNumero.getValueAsString());
                                enderecoAtualizado.put("bairro", itemBairro.getValueAsString());
                                enderecoAtualizado.put("cep", itemCep.getValueAsString());
                                enderecoAtualizado.put("referencia", itemReferencia.getValueAsString());

                                Info.dbService.alterarEndereco(enderecoAtualizado,
                                        new AsyncCallback<Boolean>() {

                                            @Override
                                            public void onFailure(Throwable caught) {
                                                throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                                            }

                                            @Override
                                            public void onSuccess(Boolean enderecoAlterado) {
                                                if (enderecoAlterado == true) {
                                                    SC.say("Endereo atualizado com sucesso!");
                                                } else {
                                                    SC.warn("ERRO ao atualizar endereo!");
                                                }
                                            }
                                        });
                                janelaCarregando.addItem(mensagem);
                                janelaCarregando.setAnimateTime(1200);
                                janelaCarregando.animateHide(AnimationEffect.FADE);
                                contador = 100;
                                destroy();
                            }
                        } else {
                            contador = 0;
                        }

                    }
                }.schedule(50);

            }
        }
    });

    formEditEndereco.setFields(itemDescricao, itemLogradouro, itemNumero, itemBairro, itemEstado, itemCidade,
            itemCep, itemReferencia);

    addItem(label);
    addItem(formEditEndereco);
    addItem(hButoes);

}

From source file:com.automaster.client.ui.paineis.dialogs.editar.EditarPadraoLigacao.java

public EditarPadraoLigacao(final ArrayList<TreeMap<String, String>> dadosVeiculoCopia,
        final ListGridRecord recordEditarVeiculo, final ListGrid listPadLigEditarVeiculo,
        final HTMLPane tabelaVeiculosCopia) {

    setTitle("Editar Padro de Ligao");
    setWidth(500);//  ww  w  .  j  a va  2 s  .  co m
    setHeight(400);
    setShowMinimizeButton(false);
    setIsModal(true);
    setShowModalMask(true);
    centerInPage();
    setLayoutAlign(Alignment.CENTER);
    final Window windowAux = this;

    Label label = new Label("<strong><h3>Editar Padro de Ligao</h3></strong>");
    label.setAlign(Alignment.CENTER);
    label.setStyleName(scClassName);

    final DynamicForm formNovoPadLig = new DynamicForm();
    formNovoPadLig.setAutoFocus(true);

    final TextItem corFio = new TextItem();
    corFio.setTitle("Cor do Fio");
    corFio.setName("corFio");
    corFio.setHint("<nbr>*</nbr>");
    corFio.setKeyPressFilter("[a-zA-Z? [0-9]");
    corFio.setRequired(true);
    corFio.setWidth(230);
    corFio.setCharacterCasing(CharacterCasing.UPPER);
    LengthRangeValidator tamanhoNome = new LengthRangeValidator();
    tamanhoNome.setMin(2);
    corFio.setValidators(tamanhoNome);
    corFio.setValue(recordEditarVeiculo.getAttribute("corFio"));

    final SelectItem sinal = new SelectItem();
    sinal.setTitle("Sinal");
    sinal.setName("sinal");
    LinkedHashMap<String, String> sn = new LinkedHashMap<>();
    sn.put("true", "Positivo");
    sn.put("false", "Negativo");
    sinal.setValueMap(sn);
    sinal.setHint("<nbr>*</nbr>");
    sinal.setRequired(true);
    sinal.setWidth(226);
    sinal.setValue(
            ((recordEditarVeiculo.getAttribute("sinalPad").equalsIgnoreCase("Positivo")) ? "true" : "false"));

    final SelectItem padVeic = new SelectItem();
    padVeic.setTitle("Padro do Veculo");
    padVeic.setName("padVeic");
    LinkedHashMap<String, String> padV = new LinkedHashMap<>();
    padV.put("true", "Ligado");
    padV.put("false", "Desligado");
    padVeic.setValueMap(padV);
    padVeic.setHint("<nbr>*</nbr>");
    padVeic.setRequired(true);
    padVeic.setWidth(226);
    padVeic.setValue(
            ((recordEditarVeiculo.getAttribute("padraoLd").equalsIgnoreCase("Ligado")) ? "true" : "false"));

    final SelectItem funcao = new SelectItem();
    funcao.setTitle("Funo");
    funcao.setName("funcao");
    LinkedHashMap<String, String> fun = new LinkedHashMap<>();
    fun.put("true", "entrada");
    fun.put("false", "saida");
    funcao.setValueMap(fun);
    funcao.setHint("<nbr>*</nbr>");
    funcao.setRequired(true);
    funcao.setWidth(226);
    funcao.setValue(
            ((recordEditarVeiculo.getAttribute("funcaoPad").equalsIgnoreCase("Entrada")) ? "true" : "false"));

    final SelectItem ativo = new SelectItem();
    ativo.setTitle("Ativo");
    ativo.setName("ativo");
    LinkedHashMap<String, String> at = new LinkedHashMap<>();
    at.put("true", "Sim");
    at.put("false", "No");
    ativo.setValueMap(at);
    ativo.setHint("<nbr>*</nbr>");
    ativo.setRequired(true);
    ativo.setWidth(226);
    ativo.setValue(((recordEditarVeiculo.getAttribute("ativoPad").equalsIgnoreCase("Sim")) ? "true" : "false"));

    final TextAreaItem descricao = new TextAreaItem();
    descricao.setTitle("Descrio");
    descricao.setName("descricao");
    descricao.setPrintFullText(false);
    descricao.setWidth(226);
    descricao.setValue(
            ((recordEditarVeiculo.getAttribute("descricaoPad").equalsIgnoreCase("Sem informao")) ? ""
                    : recordEditarVeiculo.getAttribute("descricaoPad")));

    HLayout hButoes = new HLayout();
    hButoes.setWidth(100);
    hButoes.setMembersMargin(3);
    hButoes.setLayoutAlign(Alignment.CENTER);
    IButton salvar = new IButton("Salvar");
    hButoes.setMargin(5);
    hButoes.addMember(salvar);

    addCloseClickHandler(new CloseClickHandler() {

        @Override
        public void onCloseClick(CloseClickEvent event) {
            windowAux.destroy();
        }
    });
    formNovoPadLig.setTitleOrientation(TitleOrientation.TOP);
    formNovoPadLig.setItems(corFio, sinal, padVeic, funcao, ativo, descricao);

    HLayout hform = new HLayout();
    hform.setWidth(470);
    hform.setMembersMargin(3);
    hform.setLayoutAlign(Alignment.CENTER);
    hform.addMember(formNovoPadLig);

    salvar.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            if (formNovoPadLig.validate()) {
                contador = 0;
                final Window janelaCarregando = new Window();
                janelaCarregando.setShowTitle(false);
                janelaCarregando.setWidth(100);
                janelaCarregando.setHeight(50);
                janelaCarregando.setShowEdges(false);
                janelaCarregando.setShowCloseButton(false);
                janelaCarregando.setShowMinimizeButton(false);
                janelaCarregando.setIsModal(true);
                janelaCarregando.setShowModalMask(true);
                janelaCarregando.centerInPage();
                janelaCarregando.setLayoutAlign(Alignment.CENTER);
                final Label mensagem = new Label("Carregando..");
                mensagem.setHeight(16);

                new Timer() {
                    public void run() {

                        if (contador != 100) {
                            //destroy();
                            contador += 1 + (int) (5 * Math.random());
                            schedule(1 + (int) (50 * Math.random()));
                            mensagem.setContents("Carregando: " + contador + "%");
                            //GWT.log("!=100: "+contador);
                            janelaCarregando.addItem(mensagem);
                            janelaCarregando.setAnimateTime(1200);
                            janelaCarregando.animateShow(AnimationEffect.FADE);

                            if (contador >= 100) {
                                mensagem.setContents("Carregando: 100%");
                                for (TreeMap<String, String> editado : dadosVeiculoCopia) {
                                    if (recordEditarVeiculo.getAttribute("codPad")
                                            .equalsIgnoreCase(editado.get("codPad"))) {
                                        editado.put("codPad", recordEditarVeiculo.getAttribute("codPad"));
                                        editado.put("corFio", corFio.getValueAsString());
                                        editado.put("sinalPad",
                                                ((sinal.getValueAsString().equalsIgnoreCase("true")) ? "t"
                                                        : "f"));
                                        editado.put("padraoLd",
                                                ((padVeic.getValueAsString().equalsIgnoreCase("true")) ? "t"
                                                        : "f"));
                                        editado.put("funcaoPad",
                                                ((funcao.getValueAsString().equalsIgnoreCase("true")) ? "t"
                                                        : "f"));
                                        editado.put("ativoPad",
                                                ((ativo.getValueAsString().equalsIgnoreCase("true")) ? "t"
                                                        : "f"));
                                        editado.put("descricaoPad", descricao.getValueAsString());
                                    }
                                }
                                recordEditarVeiculo.setAttribute("codPad",
                                        recordEditarVeiculo.getAttribute("codPad"));
                                recordEditarVeiculo.setAttribute("corFio", corFio.getValueAsString());
                                recordEditarVeiculo.setAttribute("sinalPad",
                                        ((sinal.getValueAsString().equalsIgnoreCase("true")) ? "Positivo"
                                                : "Negativo"));
                                recordEditarVeiculo.setAttribute("padraoLd",
                                        ((padVeic.getValueAsString().equalsIgnoreCase("true")) ? "Ligado"
                                                : "Desligado"));
                                recordEditarVeiculo.setAttribute("funcaoPad",
                                        ((funcao.getValueAsString().equalsIgnoreCase("true")) ? "Entrada"
                                                : "Sada"));
                                recordEditarVeiculo.setAttribute("ativoPad",
                                        ((ativo.getValueAsString().equalsIgnoreCase("true")) ? "Sim" : "No"));
                                recordEditarVeiculo.setAttribute("descricaoPad",
                                        (descricao.getValueAsString() == null
                                                || descricao.getValueAsString().equalsIgnoreCase(""))
                                                        ? "sem informao"
                                                        : descricao.getValueAsString());
                                listPadLigEditarVeiculo.refreshRow(
                                        listPadLigEditarVeiculo.getRecordIndex(recordEditarVeiculo));
                                tabelaVeiculosCopia.markForRedraw();

                                TreeMap<String, String> padLigAtualizado = new TreeMap<String, String>();
                                padLigAtualizado.put("codVeiculo", dadosVeiculoCopia.get(0).get("codVeiculo"));
                                padLigAtualizado.put("codPad", recordEditarVeiculo.getAttribute("codPad"));
                                padLigAtualizado.put("corFio", corFio.getValueAsString());
                                padLigAtualizado.put("sinalPad", sinal.getValueAsString());
                                padLigAtualizado.put("padraoLd", padVeic.getValueAsString());
                                padLigAtualizado.put("funcaoPad", funcao.getValueAsString());
                                padLigAtualizado.put("ativoPad", ativo.getValueAsString());
                                padLigAtualizado.put("descricaoPad", descricao.getValueAsString());
                                Info.dbService.alterarPadraoLigacao(padLigAtualizado,
                                        new AsyncCallback<Boolean>() {

                                            @Override
                                            public void onFailure(Throwable caught) {
                                                throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                                            }

                                            @Override
                                            public void onSuccess(Boolean padroaAlterado) {
                                                if (padroaAlterado == true) {
                                                    SC.say("Padro de Ligao atualizado com sucesso!");
                                                } else {
                                                    SC.warn("Erro ao atualizar o padro de ligao!");
                                                }
                                            }
                                        });
                                janelaCarregando.addItem(mensagem);
                                janelaCarregando.setAnimateTime(1200);
                                janelaCarregando.animateHide(AnimationEffect.FADE);
                                contador = 100;
                                janelaCarregando.destroy();
                            }
                        } else {
                            contador = 0;
                        }

                    }
                }.schedule(50);
                windowAux.destroy();
            }
        }
    });

    addItem(label);
    addItem(hform);
    addItem(hButoes);

}

From source file:com.automaster.client.ui.paineis.dialogs.editar.EditarPessoaAutorizada.java

public EditarPessoaAutorizada(final ListGrid listPesAut, final ListGridRecord recordEditarVeiculo,
        final ArrayList<TreeMap<String, String>> dadosVeiculoCopia) {

    setTitle("Novo Padro de Ligao");
    setWidth(500);/*from w ww.j  a  v  a  2s.  com*/
    setHeight(400);
    setShowMinimizeButton(false);
    setIsModal(true);
    setShowModalMask(true);
    centerInPage();
    setLayoutAlign(Alignment.CENTER);
    final Window windowAux = this;

    Label label = new Label("<strong><h3>Cadastrar Nova Pessoa Autorizada</h3></strong>");
    label.setAlign(Alignment.CENTER);
    label.setStyleName(scClassName);

    final DynamicForm formEditPesAut = new DynamicForm();
    formEditPesAut.setMargin(15);
    formEditPesAut.setAutoFocus(true);

    final TextItem itemNome = new TextItem();
    itemNome.setTitle("Nome");
    itemNome.setName("nome");
    itemNome.setKeyPressFilter("[a-zA-Z? [0-9]");
    itemNome.setRequired(true);
    itemNome.setCharacterCasing(CharacterCasing.UPPER);
    itemNome.setWidth(300);
    LengthRangeValidator tamanhoNome = new LengthRangeValidator();
    tamanhoNome.setMin(3);
    itemNome.setValidators(tamanhoNome);
    itemNome.setValue(recordEditarVeiculo.getAttribute("nomePes"));

    final TextItem itemTelefone = new TextItem();
    itemTelefone.setTitle("Nmero");
    itemTelefone.setName("numero");
    itemTelefone.setRequired(true);
    itemTelefone.setMask("(##)#####-####");
    itemTelefone.setWidth(300);
    LengthRangeValidator tamanhoTelefone = new LengthRangeValidator();
    tamanhoTelefone.setMin(11);
    itemTelefone.setValidators(tamanhoTelefone);
    itemTelefone.setValue(recordEditarVeiculo.getAttribute("telefonePes"));

    final TextAreaItem descricao = new TextAreaItem();
    descricao.setTitle("Descrio");
    descricao.setName("descricao");
    descricao.setPrintFullText(false);
    descricao.setWidth(300);
    descricao.setValue(
            (recordEditarVeiculo.getAttribute("descricaoPes").equalsIgnoreCase("Sem informao") ? ""
                    : recordEditarVeiculo.getAttribute("descricaoPes")));

    formEditPesAut.setFields(itemNome, itemTelefone, descricao);

    addCloseClickHandler(new CloseClickHandler() {

        @Override
        public void onCloseClick(CloseClickEvent event) {
            destroy();
        }
    });

    HLayout hButoes = new HLayout();
    hButoes.setWidth(200);
    hButoes.setMembersMargin(3);
    hButoes.setLayoutAlign(Alignment.CENTER);
    IButton cadastrar = new IButton("Cadastrar");
    IButton limpar = new IButton("Limpar");
    hButoes.setMargin(5);
    hButoes.addMember(cadastrar);
    hButoes.addMember(limpar);

    cadastrar.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {

            if (formEditPesAut.validate()) {
                contador = 0;
                final Window janelaCarregando = new Window();
                janelaCarregando.setShowTitle(false);
                janelaCarregando.setWidth(100);
                janelaCarregando.setHeight(50);
                janelaCarregando.setShowEdges(false);
                janelaCarregando.setShowCloseButton(false);
                janelaCarregando.setShowMinimizeButton(false);
                janelaCarregando.setIsModal(true);
                janelaCarregando.setShowModalMask(true);
                janelaCarregando.centerInPage();
                janelaCarregando.setLayoutAlign(Alignment.CENTER);
                final Label mensagem = new Label("Carregando..");
                mensagem.setHeight(16);

                new Timer() {
                    public void run() {

                        if (contador != 100) {
                            //destroy();
                            contador += 1 + (int) (5 * Math.random());
                            schedule(1 + (int) (50 * Math.random()));
                            mensagem.setContents("Carregando: " + contador + "%");
                            //GWT.log("!=100: "+contador);
                            janelaCarregando.addItem(mensagem);
                            janelaCarregando.setAnimateTime(1200);
                            janelaCarregando.animateShow(AnimationEffect.FADE);

                            if (contador >= 100) {
                                mensagem.setContents("Carregando: 100%");
                                for (TreeMap<String, String> editado : dadosVeiculoCopia) {
                                    if (recordEditarVeiculo.getAttribute("codigo")
                                            .equalsIgnoreCase(editado.get("codPes"))) {
                                        editado.put("codPes", recordEditarVeiculo.getAttribute("codigo"));
                                        editado.put("nomePes", itemNome.getValueAsString());
                                        editado.put("telefonePes", itemTelefone.getValueAsString());
                                        editado.put("descricaoPes", descricao.getValueAsString());
                                    }
                                }
                                recordEditarVeiculo.setAttribute("codigo",
                                        recordEditarVeiculo.getAttribute("codigo"));
                                recordEditarVeiculo.setAttribute("nomePes", itemNome.getValueAsString());
                                recordEditarVeiculo.setAttribute("telefonePes",
                                        Info.formataTelefone(itemTelefone.getValueAsString()));
                                recordEditarVeiculo.setAttribute("descricaoPes",
                                        (descricao.getValueAsString() == null
                                                || descricao.getValueAsString().equalsIgnoreCase(""))
                                                        ? "sem informao"
                                                        : descricao.getValueAsString());
                                listPesAut.refreshRow(listPesAut.getRecordIndex(recordEditarVeiculo));

                                TreeMap<String, String> pesAutAtualizado = new TreeMap<String, String>();
                                pesAutAtualizado.put("codPes", recordEditarVeiculo.getAttribute("codigo"));
                                pesAutAtualizado.put("nomePes", itemNome.getValueAsString());
                                pesAutAtualizado.put("telefonePes", itemTelefone.getValueAsString());
                                pesAutAtualizado.put("descricaoPes", descricao.getValueAsString());

                                Info.dbService.alterarPessoaAutorizada(pesAutAtualizado,
                                        new AsyncCallback<Boolean>() {

                                            @Override
                                            public void onFailure(Throwable caught) {
                                                throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                                            }

                                            @Override
                                            public void onSuccess(Boolean padroaAlterado) {
                                                if (padroaAlterado == true) {
                                                    SC.say("Pessoa autorizada atualizada com sucesso!");
                                                } else {
                                                    SC.warn("ERRO ao atualizar a pessoa autorizada!");
                                                }
                                            }
                                        });
                                janelaCarregando.addItem(mensagem);
                                janelaCarregando.setAnimateTime(1200);
                                janelaCarregando.animateHide(AnimationEffect.FADE);
                                contador = 100;
                                janelaCarregando.destroy();
                            }
                        } else {
                            contador = 0;
                        }

                    }
                }.schedule(50);
                windowAux.destroy();
            }
        }
    });
    limpar.addClickHandler(new ClickHandler() {

        @Override
        public void onClick(ClickEvent event) {
            itemNome.clearValue();
            itemTelefone.clearValue();
            descricao.clearValue();
            formEditPesAut.focusInItem(itemNome);
        }
    });

    addItem(label);
    addItem(formEditPesAut);
    addItem(hButoes);
}