/// <summary> /// Actualiza el tipo del elemento. /// </summary> /// <param name="elTipoNuevo">El tipo nuevo.</param> /// <param name="laRazón">La razón del cambio.</param> public void ActualizaTipo(Tipo elTipoNuevo, string laRazón) { CampoTipo nuevoCampoTipo = new CampoTipo(elTipoNuevo); ActualizaCampo(nuevoCampoTipo, ref miCampoTipo, laRazón); // Actualiza la descripción. bool existe = misDescripcionesPorTipo.TryGetValue((Tipo)Tipo, out miDescripción); if (!existe) { miDescripción = string.Empty; } }
/// <summary> /// Devuelve una variable lógica que indica si un objeto /// dado es igual. /// </summary> /// <param name="elObjecto">EL objecto dado.</param> public override bool Equals(object elObjecto) { // Verifica objectos nulos y compara el tipo. if (elObjecto == null || (GetType() != elObjecto.GetType())) { return(false); } // Compara objecto. CampoTipo comparador = (CampoTipo)elObjecto; bool esIgual = (Tipo == comparador.Tipo); return(esIgual); }
/// <summary> /// Constructor. /// </summary> /// <param name="elManejadorDeMapa">El manejador del mapa.</param> /// <param name="elNúmero">El número del elemento.</param> /// <param name="laClase">La clase de elemento.</param> /// <param name="lasDescripcionesPorTipo">Las descripciones por tipo.</param> /// <param name="losCampos">Los campos del elemento.</param> protected ElementoDelMapa( ManejadorDeMapa elManejadorDeMapa, int elNúmero, string laClase, IDictionary <Tipo, string> lasDescripcionesPorTipo, IList <Campo> losCampos) { // Guarda variables. miManejadorDeMapa = elManejadorDeMapa; miNúmero = elNúmero; miClase = laClase; misCampos = losCampos; misDescripcionesPorTipo = lasDescripcionesPorTipo; // Busca los campos conocidos. foreach (Campo campo in losCampos) { CampoTipo campoTipo; CampoNombre campoNombre; CampoIndiceDeCiudad campoIndiceDeCiudad; if ((campoTipo = campo as CampoTipo) != null) { miCampoTipo = campoTipo; } else if ((campoNombre = campo as CampoNombre) != null) { if (campoNombre.Número == null) { miCampoNombre = campoNombre; } } else if ((campoIndiceDeCiudad = campo as CampoIndiceDeCiudad) != null) { miCampoIndiceDeCiudad = campoIndiceDeCiudad; } } bool existe = (Tipo != null) && (misDescripcionesPorTipo.TryGetValue((Tipo)Tipo, out miDescripción)); if (!existe) { miDescripción = string.Empty; } }
private static void Guarda(CampoTipo elCampoTipo, StreamWriter elEscritor) { string tipo = elCampoTipo.Tipo.ToString(); Guarda(elCampoTipo, tipo, elEscritor); }