public ItemAlternancia(ItemAlternancia oldValue) { this.exibicoes = new List <TipoExibicao>(); foreach (TipoExibicao te in oldValue.exibicoes) { this.exibicoes.Add(te); } this.nomeAlternancia = oldValue.nomeAlternancia; }
private FormatoAlternancia ArquivoALTAssembly(Byte[] file) { FormatoAlternancia fa = new FormatoAlternancia(); if (file != null) { fa.versao = file[0]; fa.QtdAlternancias = file[1]; unsafe { for (int i = 0; i < 60; i++) { fa.reservado[i] = file[i + 2]; } } fa.crc = (UInt16)(file[62] << 8); fa.crc = (UInt16)(fa.crc + ((byte)(file[63]))); //montagem dos itens de alternancia. for (int i = 0; i < fa.QtdAlternancias; i++) { //1 7 32 ItemAlternancia item = new ItemAlternancia(); byte[] dados = new byte[40]; Array.Copy(file, 64 + (i * 40), dados, 0, 40); item.fromByteArray(dados); //item.qntExibicoes = ((byte)file[i + 64]); //no setter; ////qtd 40 bytes //for(int exibicoes = 0; exibicoes < 7; exibicoes++) //{ // item.Exibicoes.Add((TipoExibicao) file[exibicoes + 65]); //} //Byte[] nomeTemp = new byte[32]; //for (int nome = 0; nome < 32; nome++) // nomeTemp[nome] = file[nome + 72]; //item.NomeAlternancia = System.Text.Encoding.Default.GetString(nomeTemp); this.listaAlternancias.Add(item); } } else { throw new Exception(rm.GetString("ARQUIVO_ALT_ERRO_NULO_ARQUIVO")); //"Arquivo de Alternância nulo em ArquivoALTAssembly - Arquivo_ALT.cs"); } return(fa); }
public void AdicionarItemAlternancia(List <TipoExibicao> tipos, String linhaSuperior, String linhaInferior) { ItemAlternancia ia = new ItemAlternancia(); if (linhaSuperior.Length > 16) { throw new Exception(rm.GetString("ARQUIVO_ALT_ERRO_TAMANHO_LINHA_SUPERIOR")); //"O número de caracteres excede na linha superior!"); } if (linhaInferior.Length > 16) { throw new Exception(rm.GetString("ARQUIVO_ALT_ERRO_TAMANHO_LINHA_INFERIOR")); //"O número de caracteres excede na linha inferior!"); } // Completar a string com espaços até completar 16 caracteres. linhaSuperior = linhaSuperior.PadRight(16, ' '); linhaInferior = linhaInferior.PadRight(16, ' '); ia.Exibicoes.AddRange(tipos.ToArray()); ia.NomeAlternancia = linhaSuperior + linhaInferior; this.listaAlternancias.Add(ia); //AtualizarCRC(); }
public void RemoverItemAlternancia(ItemAlternancia item) { listaAlternancias.Remove(item); AtualizarCRC(); }