private void BtnExcluirCategoria_Click(object sender, EventArgs e) { //Procura se aquela categoria que você deseja excluir possui série cadastrada. Se possuir, não pode excluir. //Precisa ler antes o arquivo texto para carregar o ArrayList das categorias das séries. BibliotecaDeSubRotinas.LerSeriesNoTxt(codigoSerie, nomeSerie, temporadaAtual, ultimoEpisodioAssistido, totalDeTemporadas, categoriaDaSerie); for (int i = 0; i < categoriaDaSerie.Count; i++) { if (txtNomeCategoria.Text == Convert.ToString(categoriaDaSerie[i])) { MessageBox.Show("Essa categoria possui séries cadastradas e não pode ser excluída."); txtCodigoParaEditarCategoria.Clear(); txtCodigoCategoria.Clear(); txtNomeCategoria.Clear(); return; } } //Remove a categoria do ArrayList. bool existeCategoriaExcluida = false; for (int i = 0; i < nomeCategoria.Count; i++) { if (txtCodigoCategoria.Text == Convert.ToString(codigoCategoria[i])) { codigoCategoria.RemoveAt(i); nomeCategoria.RemoveAt(i); existeCategoriaExcluida = true; } } //Mostra mensagem de erro caso não tenha sido possível a exclusão. if (existeCategoriaExcluida == false) { MessageBox.Show("Não foi possível excluir essa categoria."); } /* Caso quisesse renumerar todos os códigos. * Código para remover todos os códigos, linha por linha, e os renumera um a um: * int contador = 1; * for (int i = 0; i < codigoCategoria.Count; i++) * { * codigoCategoria.RemoveAt(i); * if (contador >= 1 && contador < 10) * { * codigoCategoria.Insert(i,"00" + contador); * } * else if (contador >= 10 && contador < 100) * { * codigoCategoria.Insert(i, "0" + contador); * } * else * { * codigoCategoria.Insert(i, contador); * } * * contador++; * } */ //Grava no arquivo txt com a exclusão da categoria. BibliotecaDeSubRotinas.EscreverCategoriasNoTxt(codigoCategoria, nomeCategoria); if (existeCategoriaExcluida == true) { MessageBox.Show("Categoria excluída com sucesso."); } //Apaga o formulário txtCodigoParaEditarCategoria.Clear(); txtCodigoCategoria.Clear(); txtNomeCategoria.Clear(); }
private void BtnAdicionarCategoria_Click(object sender, EventArgs e) { //Limpa todos os ArrayLists antes de começar. codigoCategoria.Clear(); nomeCategoria.Clear(); //Carrega as informações do arquivo txt. BibliotecaDeSubRotinas.LerCategoriasNoTxt(codigoCategoria, nomeCategoria); //Crítica não pode ter campo em branco. if (txtNomeCategoria.Text == "") { MessageBox.Show("Digite um nome para sua categoria."); return; } //Crítica para aceitar somente letras. if (BibliotecaDeSubRotinas.CríticaApenasLetras(txtNomeCategoria.Text) == true) { MessageBox.Show("Por favor, digite apenas letras."); txtCodigoCategoria.Focus(); return; } //Consulta se já existe o cadastro dessa categoria. int contador = 1; bool jaExiste = false; for (int i = 0; i < nomeCategoria.Count; i++) { if (txtNomeCategoria.Text.ToUpper() == Convert.ToString(nomeCategoria[i]).ToUpper()) { jaExiste = true; MessageBox.Show("Essa categoria já existe."); txtNomeCategoria.Clear(); return; } contador = contador + 1; } //Se for confirmado que a categoria não existe. if (jaExiste == false) { //Adiciona no ArrayList a nova categoria. nomeCategoria.Add(txtNomeCategoria.Text); //Adiciona no ArrayList um código para a nova categoria e os zeros na frente, se necessário. if (contador >= 1 && contador < 10) { codigoCategoria.Add("00" + contador); } else if (contador >= 10 && contador < 100) { codigoCategoria.Add("0" + contador); } else { codigoCategoria.Add(contador); } //Adiciona a nova categoria no arquivo texto. BibliotecaDeSubRotinas.EscreverCategoriasNoTxt(codigoCategoria, nomeCategoria); MessageBox.Show("Categoria adicionada com sucesso."); } //Apaga o formulário txtCodigoParaEditarCategoria.Clear(); txtCodigoCategoria.Clear(); txtNomeCategoria.Clear(); }
private void BtnSalvarCategoria_Click(object sender, EventArgs e) { //Crítica não pode ter campo em branco. if (txtNomeCategoria.Text == "") { MessageBox.Show("Campo Vazio. Por favor, digite o novo nome de sua categoria."); return; } //Crítica para aceitar somente letras. if (BibliotecaDeSubRotinas.CríticaApenasLetras(txtNomeCategoria.Text) == true) { MessageBox.Show("Por favor, digite apenas letras."); txtCodigoCategoria.Focus(); return; } //Remove o nome da categoria do ArrayList e adiciona o nome editado em seu lugar. bool existeCategoriaEditada = false; string categoriaSelecionada = ""; string categoriaEditada = txtNomeCategoria.Text; for (int i = 0; i < nomeCategoria.Count; i++) { if (txtCodigoParaEditarCategoria.Text == Convert.ToString(codigoCategoria[i])) { categoriaSelecionada = Convert.ToString(nomeCategoria[i]); //Não vai poder mudar o código, apenas o nome. nomeCategoria.RemoveAt(i); nomeCategoria.Insert(i, categoriaEditada); existeCategoriaEditada = true; } } // Mostra mensagem de erro caso não tenha sido possível a edição. if (existeCategoriaEditada == false) { MessageBox.Show("Não foi possível editar essa categoria."); } //Grava no arquivo txt com a edição. BibliotecaDeSubRotinas.EscreverCategoriasNoTxt(codigoCategoria, nomeCategoria); //Faz a alteração da edição da categoria no arquivo texto das séries cadastradas com essa categoria. //Precisa ler antes o arquivo texto para carregar o ArrayList das categorias das séries e depois escrever no arquivo texto, pra salvar a alteração. BibliotecaDeSubRotinas.LerSeriesNoTxt(codigoSerie, nomeSerie, temporadaAtual, ultimoEpisodioAssistido, totalDeTemporadas, categoriaDaSerie); for (int i = 0; i < categoriaDaSerie.Count; i++) { if (Convert.ToString(categoriaDaSerie[i]) == categoriaSelecionada) { categoriaDaSerie.RemoveAt(i); categoriaDaSerie.Insert(i, categoriaEditada); } } BibliotecaDeSubRotinas.EscreverSeriesNoTxt(codigoSerie, nomeSerie, temporadaAtual, ultimoEpisodioAssistido, totalDeTemporadas, categoriaDaSerie); if (existeCategoriaEditada == true) { MessageBox.Show("Categoria editada com sucesso."); } //Apaga o formulário txtCodigoParaEditarCategoria.Clear(); txtCodigoCategoria.Clear(); txtNomeCategoria.Clear(); }