Exemplo n.º 1
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elManejadorDeElementos">El manejador de Elementos.</param>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public RemplazadorDeLetrasEspeciales(
     ManejadorDeElementos elManejadorDeElementos,
     IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elManejadorDeElementos, elEscuchadorDeEstatus)
 {
     miLectorDeConversiónDeLetras = new LectorDeConversiónDeLetras(elEscuchadorDeEstatus);
 }
Exemplo n.º 2
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elManejadorDePDIs">El manejador de PDIs.</param>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public ArregladorDeLetras(
     ManejadorDePDIs elManejadorDePDIs,
     IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elManejadorDePDIs, elEscuchadorDeEstatus)
 {
     miLectorDeConversiónDeLetras = new LectorDeConversiónDeLetras(elEscuchadorDeEstatus);
 }
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elManejadorDePDIs">El manejador de PDIs.</param>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public ArregladorDePalabrasPorTipo(
     ManejadorDePDIs elManejadorDePDIs,
     IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elManejadorDePDIs, elEscuchadorDeEstatus)
 {
     miLectorDeCorrecciónDePalabrasPorTipo = new LectorDeCorrecciónDePalabrasPorTipo(elEscuchadorDeEstatus);
 }
Exemplo n.º 4
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elManejadorDeMapa">El Manejador de Mapa.</param>
 /// <param name="losElementos">Los Elementos.</param>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public ManejadorDeElementos(
     ManejadorDeMapa elManejadorDeMapa,
     IList <ElementoDelMapa> losElementos,
     IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elManejadorDeMapa, losElementos, elEscuchadorDeEstatus)
 {
 }
Exemplo n.º 5
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elManejadorDePDIs">El manejador de PDIs.</param>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public EliminadorDeCaracteres(
     ManejadorDePDIs elManejadorDePDIs,
     IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elManejadorDePDIs, elEscuchadorDeEstatus)
 {
     miLectorDeCaracteresAEliminar = new LectorDeCaracteresAEliminar(elEscuchadorDeEstatus);
 }
Exemplo n.º 6
0
        /// <summary>
        /// Constructor.
        /// </summary>
        /// <param name="elManejador">El manejador.</param>
        /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
        protected ProcesadorBase(
            T elManejador,
            IEscuchadorDeEstatus elEscuchadorDeEstatus)
        {
            miManejador         = elManejador;
            NúmeroDeElementos   = miManejador.Elementos.Count;
            ManejadorDeMapa     = elManejador.ManejadorDeMapa;
            EscuchadorDeEstatus = elEscuchadorDeEstatus;

            // Pone el manejador de eventos del timer.
            miTimerParaReportarEstatus.Elapsed += EnTimerElapsed;

            // Escucha eventos.
            ManejadorDeMapa.MapaNuevo        += EnMapaNuevo;
            miManejador.ElementosModificados += EnElementosModificados;

            // Genera el nombre del elemento.
            // El nombre completo es de la forma GpsYv.ManejadorDeMapa.<Nombre>
            // asi que tenemos que extraer la última palabra.
            string nombreCompleto = typeof(K).ToString();

            string[] palabras     = nombreCompleto.Split('.');
            int      últimoIndice = palabras.Length - 1;

            miNombreDeElemento = palabras[últimoIndice];
        }
Exemplo n.º 7
0
        /// <summary>
        /// Constructor.
        /// </summary>
        /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
        protected LectorDeArchivo(IEscuchadorDeEstatus elEscuchadorDeEstatus)
        {
            miEscuchadorDeEstatus = elEscuchadorDeEstatus;

            // Reporta estatus.
            miEscuchadorDeEstatus.Progreso = 0;
        }
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elManejadorDeVías">El manejador de Vías.</param>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public BuscadorDePosiblesNodosDesconectados(
     ManejadorDeVías elManejadorDeVías,
     IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elManejadorDeVías, elEscuchadorDeEstatus)
 {
     DistanciaMáxima           = 5;
     PosibleNodosDesconectados = new List <InformaciónNodoDesconectado>();
 }
 public LectorDeDiccionarioDeNombres(
     string elArchivo,
     IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elEscuchadorDeEstatus)
 {
     miArchivo = elArchivo;
     Lee(miArchivo);
 }
Exemplo n.º 10
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elManejadorDeMapa">El Manejador de Mapa.</param>
 /// <param name="losElementos">Los Elementos.</param>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 protected ManejadorBase(
     ManejadorDeMapa elManejadorDeMapa,
     IList <T> losElementos,
     IEscuchadorDeEstatus elEscuchadorDeEstatus)
 {
     miManejadorDeMapa     = elManejadorDeMapa;
     misElementos          = losElementos;
     miEscuchadorDeEstatus = elEscuchadorDeEstatus;
 }
Exemplo n.º 11
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elManejadorDeVías">El manejador de Vías.</param>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 /// <param name="elServicioDiálogoAbrirArchivos">El servicio de diálogo para abrir archivos.</param>
 public RemplazadorDeNombresDeVias(
     ManejadorDeVías elManejadorDeVías,
     IEscuchadorDeEstatus elEscuchadorDeEstatus,
     IOpenFileDialogService elServicioDiálogoAbrirArchivos)
     : base(elManejadorDeVías, elEscuchadorDeEstatus)
 {
     myOpenFileDialogService = elServicioDiálogoAbrirArchivos;
     MinimumDistanceInMeters = 100;
 }
Exemplo n.º 12
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elManejadorDePdis">El manejador de PDIs.</param>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public ArregladorGeneral(
     ManejadorDePdis elManejadorDePdis,
     IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elManejadorDePdis, elEscuchadorDeEstatus)
 {
     miLectorDeConversiónDeLetras          = new LectorDeConversiónDeLetras(elEscuchadorDeEstatus);
     miLectorDeCorrecciónDePalabrasPorTipo = new LectorDeCorrecciónDePalabrasPorTipo(elEscuchadorDeEstatus);
     miLectorDeCaracteresAEliminar         = new LectorDeCaracteresAEliminar(elEscuchadorDeEstatus);
 }
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elArchivoConElDiccionario">El Archivo con el Diccionario.</param>
 /// <param name="elManejadorDeElementos">El manejador de Elementos.</param>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public RemplazadorDeNombres(
     string elArchivoConElDiccionario,
     ManejadorDeElementos elManejadorDeElementos,
     IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elManejadorDeElementos, elEscuchadorDeEstatus)
 {
     miLectorDeCorrecciónDeNombres = new LectorDeDiccionarioDeNombres(
         elArchivoConElDiccionario,
         elEscuchadorDeEstatus);
 }
Exemplo n.º 14
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 /// <param name="elServicioDiálogoAbrirArchivos">El servicio de diálogo para abrir archivos.</param>
 public ManejadorDeMapa(
     IEscuchadorDeEstatus elEscuchadorDeEstatus,
     IOpenFileDialogService elServicioDiálogoAbrirArchivos)
 {
     Trace.WriteLine("Inicializando ManejadorDeMapa");
     EscuchadorDeEstatus  = elEscuchadorDeEstatus;
     ManejadorDeElementos = new ManejadorDeElementos(this, misElementos, elEscuchadorDeEstatus);
     ManejadorDePdis      = new ManejadorDePdis(this, misPdis, elEscuchadorDeEstatus);
     ManejadorDeVías      = new ManejadorDeVías(this, misVías, elEscuchadorDeEstatus, elServicioDiálogoAbrirArchivos);
     Polígonos            = new List <Polígono>();
     Polilíneas           = new List <Polilínea>();
     Ciudades             = new List <Ciudad>();
     NodosRuteables       = new Dictionary <int, IList <Nodo> >();
 }
Exemplo n.º 15
0
        /// <summary>
        /// Constructor.
        /// </summary>
        /// <param name="elManejadorDeMapa">El Manejador de Mapa.</param>
        /// <param name="losPuntosDeInteres">Los PDIs.</param>
        /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
        public ManejadorDePdis(
            ManejadorDeMapa elManejadorDeMapa,
            IList <Pdi> losPuntosDeInteres,
            IEscuchadorDeEstatus elEscuchadorDeEstatus)
            : base(elManejadorDeMapa, losPuntosDeInteres, elEscuchadorDeEstatus)
        {
            // Crea los procesadores.
            ArregladorDeIndicesDeCiudad = new ArregladorDeIndicesDeCiudad(this, elEscuchadorDeEstatus);
            ArregladorGeneral           = new ArregladorGeneral(this, elEscuchadorDeEstatus);
            BuscadorDeDuplicados        = new BuscadorDeDuplicados(this, elEscuchadorDeEstatus);
            BuscadorDeAlertas           = new BuscadorDeAlertas(this, elEscuchadorDeEstatus);
            BuscadorDeErrores           = new BuscadorDeErrores(this, elEscuchadorDeEstatus);

            // Escucha eventos.
            elManejadorDeMapa.PdisModificados += EnElementosModificados;
        }
Exemplo n.º 16
0
        /// <summary>
        /// Constructor.
        /// </summary>
        /// <param name="elManejadorDeMapa">El Manejador de Mapa.</param>
        /// <param name="lasVías">Las Vías.</param>
        /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
        /// <param name="elServicioDiálogoAbrirArchivos">El servicio de diálogo para abrir archivos.</param>
        public ManejadorDeVías(
            ManejadorDeMapa elManejadorDeMapa,
            IList <Vía> lasVías,
            IEscuchadorDeEstatus elEscuchadorDeEstatus,
            IOpenFileDialogService elServicioDiálogoAbrirArchivos)
            : base(elManejadorDeMapa, lasVías, elEscuchadorDeEstatus)
        {
            // Crea los procesadores.
            ArregladorDeIndicesDeCiudad          = new ArregladorDeIndicesDeCiudad(this, elEscuchadorDeEstatus);
            ArregladorGeneral                    = new ArregladorGeneral(this, elEscuchadorDeEstatus);
            BuscadorDeErrores                    = new BuscadorDeErrores(this, elEscuchadorDeEstatus);
            BuscadorDeAlertas                    = new BuscadorDeAlertas(this, elEscuchadorDeEstatus);
            BuscadorDePosiblesErroresDeRuteo     = new BuscadorDePosiblesErroresDeRuteo(this, elEscuchadorDeEstatus);
            BuscadorDePosiblesNodosDesconectados = new BuscadorDePosiblesNodosDesconectados(this, elEscuchadorDeEstatus);
            RemplazadorDeNombresDeVias           = new RemplazadorDeNombresDeVias(this, elEscuchadorDeEstatus, elServicioDiálogoAbrirArchivos);

            // Escucha eventos.
            elManejadorDeMapa.VíasModificadas += EnElementosModificados;
        }
Exemplo n.º 17
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elManejadorDeVías">El manejador de Vías.</param>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public BuscadorDePosiblesErroresDeRuteo(
     ManejadorDeVías elManejadorDeVías,
     IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elManejadorDeVías, elEscuchadorDeEstatus)
 {
 }
Exemplo n.º 18
0
        /// <summary>
        /// Constructor.
        /// </summary>
        public InterfaseManejadorDeMapa()
        {
            // Lee la cultura de las opciones.
            // Si la cultura no esta definida entonces usamos Inglés
            // para todas las culturas que no deriven del Español.
            var         culturaTexto = Settings.Default.Cultura;
            CultureInfo cultura;

            if (string.IsNullOrEmpty(culturaTexto))
            {
                cultura = CultureInfo.CurrentCulture;
                if (cultura.TwoLetterISOLanguageName != "es")
                {
                    cultura = new CultureInfo("en");
                }
            }
            else
            {
                cultura = new CultureInfo(culturaTexto);
            }
            Thread.CurrentThread.CurrentUICulture = cultura;

            InitializeComponent();

            // Crea la lista de menús a desabilitar.
            misMenúsADesabilitar = new List <ToolStripMenuItem> {
                miMenúMapa,
                miMenúProcesar
            };

            // Crea la lista de menús de lenguage.
            misMenúsDeLenguage = new List <ToolStripMenuItem> {
                miMenúLenguajeEspañol,
                miMenúLenguajeInglés,
                miMenúLenguajeAutomático
            };
            miMenúLenguajeAutomático.Tag = string.Empty;
            CambiaCultura(culturaTexto);

            // Pone el nombre.
            Text = Recursos.DescripciónDelEjecutable + " - " + VentanaDeAcerca.AssemblyCompany;

            #region Asigna los ToolTips de los menús.
            miMenúAceptarModificaciones.ToolTipText = ManejadorDeMapa.DescripciónAceptarModificaciones;

            // PDIs.
            miMenúProcesarTodoEnPdis.ToolTipText            = GpsYv.ManejadorDeMapa.Pdis.ManejadorDePdis.DescripciónProcesarTodo;
            miMenúArreglarIndicesDeCiudadEnPdis.ToolTipText = GpsYv.ManejadorDeMapa.Pdis.ArregladorDeIndicesDeCiudad.Descripción;
            miMenuArreglarCosasGeneralesEnPdis.ToolTipText  = GpsYv.ManejadorDeMapa.Pdis.ArregladorGeneral.Descripción;
            miMenúBuscaDuplicadosEnPdis.ToolTipText         = GpsYv.ManejadorDeMapa.Pdis.BuscadorDeDuplicados.Descripción;
            miMenúBuscarAlertasEnPdis.ToolTipText           = GpsYv.ManejadorDeMapa.Pdis.BuscadorDeAlertas.Descripción;
            miMenúBuscarErroresEnPdis.ToolTipText           = GpsYv.ManejadorDeMapa.Pdis.BuscadorDeErrores.Descripción;

            // Vías.
            miMenúProcesarTodoEnVías.ToolTipText                     = GpsYv.ManejadorDeMapa.Vías.ManejadorDeVías.DescripciónProcesarTodo;
            miMenúArreglarIndicesDeCiudadEnVías.ToolTipText          = GpsYv.ManejadorDeMapa.Vías.ArregladorDeIndicesDeCiudad.Descripción;
            miMenúArreglarCosasGeneralesEnVías.ToolTipText           = GpsYv.ManejadorDeMapa.Vías.ArregladorGeneral.Descripción;
            miMenúBuscarAlertasEnVías.ToolTipText                    = GpsYv.ManejadorDeMapa.Vías.BuscadorDeAlertas.Descripción;
            miMenúBuscarPosiblesErroresDeRuteoEnVías.ToolTipText     = GpsYv.ManejadorDeMapa.Vías.BuscadorDePosiblesErroresDeRuteo.Descripción;
            miMenúBuscarPosiblesNodosDesconectadosEnVías.ToolTipText = GpsYv.ManejadorDeMapa.Vías.BuscadorDePosiblesNodosDesconectados.Descripción;
            miMenúBuscarErroresEnVías.ToolTipText                    = GpsYv.ManejadorDeMapa.Vías.BuscadorDeErrores.Descripción;
            #endregion

            // Crea y asigna el escuchador de estatus.
            miEscuchadorDeEstatus = new EscuchadorDeEstatus(
                this,
                miTextoDeEstatus,
                miBarraDeProgreso,
                miTextoDeCoordenadas);

            // Crea el objecto Manejador de Mapa.
            miManejadorDeMapa = new ManejadorDeMapa(
                miEscuchadorDeEstatus,
                new OpenFileDialogService());

            // Maneja eventos de modificación de elementos.
            miManejadorDeMapa.MapaNuevo            += EnMapaNuevo;
            miManejadorDeMapa.ElementosModificados += EnElementosModificados;

            // Maneja eventos de procesamiento.
            miManejadorDeMapa.Procesando += EnProcesando;
            miManejadorDeMapa.Procesó    += EnProcesó;

            // Oculta el botón de parar de procesar.
            miBotónParaDeProcesar.Visible = false;
            miTimerParaMostrarBotónParaDeProcesar.Interval = 5000;
            miTimerParaMostrarBotónParaDeProcesar.Tick    += EnTimerParaMostrarBotónParaDeProcesar;

            // Pone el método llenador de items.
            miLista.PoneLlenadorDeItems(LlenaItems);

            // Asigna las propiedades de la interfase de mapa.
            miInterfaseDeMapa.ManejadorDeMapa     = miManejadorDeMapa;
            miInterfaseDeMapa.EscuchadorDeEstatus = miEscuchadorDeEstatus;

            // Asigna las propiedades de la interfase de PDIs.
            miInterfaseManejadorDePdis.ManejadorDeMapa     = miManejadorDeMapa;
            miInterfaseManejadorDePdis.EscuchadorDeEstatus = miEscuchadorDeEstatus;

            // Asigna las propiedades de la interfase de Vías.
            miInterfaseManejadorDeVías.ManejadorDeMapa     = miManejadorDeMapa;
            miInterfaseManejadorDeVías.EscuchadorDeEstatus = miEscuchadorDeEstatus;

            // Crea el diccionario de índices de pestañas.
            TabControl.TabPageCollection pestañas = miControladorDePestañasPrincipal.TabPages;
            for (int i = 0; i < pestañas.Count; ++i)
            {
                misIndicesDePestañas[pestañas[i]] = i;
            }

            // Maneja evento de cambio de Estado Máximo de Pestañas de PDIs.
            miInterfaseManejadorDePdis.CambióEstadoMáximoDePestañas +=
                ((elEnviador, losArgumentos) =>
                 miControladorDePestañasPrincipal.PoneEstadoDePestaña(
                     miPaginaDePdis,
                     losArgumentos.EstadoMáximoDePestañas));

            // Maneja evento de cambio de Estado Máximo de Pestañas de Vías.
            miInterfaseManejadorDeVías.CambióEstadoMáximoDePestañas +=
                ((elEnviador, losArgumentos) =>
                 miControladorDePestañasPrincipal.PoneEstadoDePestaña(
                     miPáginaDeVías,
                     losArgumentos.EstadoMáximoDePestañas));

            // Lee el archivo de límites si existe en los settings.
            if (!string.IsNullOrEmpty(Settings.Default.ArchivoDeLímites))
            {
                // Trata de leer el archivo de límites.
                try
                {
                    miManejadorDeMapa.AbrirLímites(Settings.Default.ArchivoDeLímites);
                }
                catch
                {
                    // Ignoramos errores.
                }
            }
        }
Exemplo n.º 19
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elManejadorDeVías">El manejador de Vías.</param>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public ArregladorGeneral(
     ManejadorDeVías elManejadorDeVías,
     IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elManejadorDeVías, elEscuchadorDeEstatus)
 {
 }
Exemplo n.º 20
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public LectorDeCaracteresAEliminar(IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elEscuchadorDeEstatus)
 {
     Lee(miArchivoDeCaracteresAEliminar);
 }
Exemplo n.º 21
0
        /// <summary>
        /// Constructor.
        /// </summary>
        /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
        protected LectorDeArchivo(IEscuchadorDeEstatus elEscuchadorDeEstatus)
        {
            miEscuchadorDeEstatus = elEscuchadorDeEstatus;

              // Reporta estatus.
              miEscuchadorDeEstatus.Progreso = 0;
        }
        /// <summary>
        /// Constructor.
        /// </summary>
        /// <param name="elArchivo">El archivo a abrir.</param>
        /// <param name="losElementosDelMapa">Los elementos del mapa.</param>
        /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
        public EscritorDeFormatoPolish(string elArchivo, ICollection<ElementoDelMapa> losElementosDelMapa, IEscuchadorDeEstatus elEscuchadorDeEstatus)
        {
            // Usar el punto para separar decimales.
              miFormatoNumérico.NumberDecimalSeparator = ".";

              try
              {
            // Hacer una copia si el archivo existe.
            if (File.Exists(elArchivo))
            {
              const bool sobreEscribe = true;
              File.Copy(elArchivo, elArchivo + ".bak", sobreEscribe);
            }

            // Reporta estatus.
            elEscuchadorDeEstatus.Estatus = "Escribiendo " + elArchivo + " ...";
            elEscuchadorDeEstatus.Progreso = 0;

            // Establece el límite superior de la barra de progreso.
            int númeroDeElementos = losElementosDelMapa.Count;
            elEscuchadorDeEstatus.ProgresoMáximo = númeroDeElementos;

            using (StreamWriter escritor = new StreamWriter(elArchivo, false, miCodificaciónPorDefecto))
            {
              // Guarda todos los elementos.
              int contadorDeElementos = 0;
              foreach (ElementoDelMapa elemento in losElementosDelMapa)
              {
            ++contadorDeElementos;

            // Reportar Progreso
            elEscuchadorDeEstatus.Progreso = contadorDeElementos;

            if (elemento is Comentario)
            {
              Guarda((Comentario)elemento, escritor);
            }
            else
            {
              Guarda(elemento, escritor);

              // Separa los elementos con una línea en blanco.
              escritor.WriteLine();
            }
              }
            }

            elEscuchadorDeEstatus.Estatus = "Listo.";
              }
              catch
              {
            elEscuchadorDeEstatus.Estatus = "Error.";
            throw;
              }
              finally
              {
            // Borra la barra de progreso.
            elEscuchadorDeEstatus.Progreso = 0;
              }
        }
Exemplo n.º 23
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public LectorDeConversiónDeLetras(IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elEscuchadorDeEstatus)
 {
     Lee(miArchivoDeLetrasAReemplazar);
 }
Exemplo n.º 24
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public ManejadorDeMapa(IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : this(elEscuchadorDeEstatus, null)
 {
 }
Exemplo n.º 25
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elManejadorDeVías">El manejador de Vías.</param>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public BuscadorDeErrores(
     ManejadorDeVías elManejadorDeVías,
     IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elManejadorDeVías, elEscuchadorDeEstatus)
 {
 }
Exemplo n.º 26
0
        /// <summary>
        /// Constructor.
        /// </summary>
        /// <param name="elArchivo">El archivo a abrir.</param>
        /// <param name="losElementosDelMapa">Los elementos del mapa.</param>
        /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
        public EscritorDeFormatoPolish(string elArchivo, ICollection <ElementoDelMapa> losElementosDelMapa, IEscuchadorDeEstatus elEscuchadorDeEstatus)
        {
            // Usar el punto para separar decimales.
            miFormatoNumérico.NumberDecimalSeparator = ".";

            try
            {
                // Hacer una copia si el archivo existe.
                if (File.Exists(elArchivo))
                {
                    const bool sobreEscribe = true;
                    File.Copy(elArchivo, elArchivo + ".bak", sobreEscribe);
                }

                // Reporta estatus.
                elEscuchadorDeEstatus.Estatus  = "Escribiendo " + elArchivo + " ...";
                elEscuchadorDeEstatus.Progreso = 0;

                // Establece el límite superior de la barra de progreso.
                int númeroDeElementos = losElementosDelMapa.Count;
                elEscuchadorDeEstatus.ProgresoMáximo = númeroDeElementos;

                using (StreamWriter escritor = new StreamWriter(elArchivo, false, miCodificaciónPorDefecto))
                {
                    // Guarda todos los elementos.
                    int contadorDeElementos = 0;
                    foreach (ElementoDelMapa elemento in losElementosDelMapa)
                    {
                        ++contadorDeElementos;

                        // Reportar Progreso
                        elEscuchadorDeEstatus.Progreso = contadorDeElementos;

                        if (elemento is Comentario)
                        {
                            Guarda((Comentario)elemento, escritor);
                        }
                        else
                        {
                            Guarda(elemento, escritor);

                            // Separa los elementos con una línea en blanco.
                            escritor.WriteLine();
                        }
                    }
                }

                elEscuchadorDeEstatus.Estatus = "Listo.";
            }
            catch
            {
                elEscuchadorDeEstatus.Estatus = "Error.";
                throw;
            }
            finally
            {
                // Borra la barra de progreso.
                elEscuchadorDeEstatus.Progreso = 0;
            }
        }
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public LectorDeCorrecciónDePalabrasPorTipo(IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elEscuchadorDeEstatus)
 {
     Lee(miArchivoDeConversionDePalabras);
 }
        /// <summary>
        /// Constructor.
        /// </summary>
        public InterfaseManejadorDeMapa()
        {
            // Lee la cultura de las opciones.
              // Si la cultura no esta definida entonces usamos Inglés
              // para todas las culturas que no deriven del Español.
              var culturaTexto = Settings.Default.Cultura;
              CultureInfo cultura;
              if (string.IsNullOrEmpty(culturaTexto))
              {
            cultura = CultureInfo.CurrentCulture;
            if (cultura.TwoLetterISOLanguageName != "es")
            {
              cultura = new CultureInfo("en");
            }
              }
              else
              {
            cultura = new CultureInfo(culturaTexto);
              }
              Thread.CurrentThread.CurrentUICulture = cultura;

              InitializeComponent();

              // Crea la lista de menús a desabilitar.
              misMenúsADesabilitar = new List<ToolStripMenuItem> {
            miMenúMapa,
            miMenúProcesar};

              // Crea la lista de menús de lenguage.
              misMenúsDeLenguage = new List<ToolStripMenuItem> {
            miMenúLenguajeEspañol,
            miMenúLenguajeInglés,
            miMenúLenguajeAutomático};
              miMenúLenguajeAutomático.Tag = string.Empty;
              CambiaCultura(culturaTexto);

              // Pone el nombre.
              Text = Recursos.DescripciónDelEjecutable + " - " + VentanaDeAcerca.AssemblyCompany;

              #region Asigna los ToolTips de los menús.
              miMenúAceptarModificaciones.ToolTipText = ManejadorDeMapa.DescripciónAceptarModificaciones;

              // PDIs.
              miMenúProcesarTodoEnPdis.ToolTipText = GpsYv.ManejadorDeMapa.Pdis.ManejadorDePdis.DescripciónProcesarTodo;
              miMenúArreglarIndicesDeCiudadEnPdis.ToolTipText = GpsYv.ManejadorDeMapa.Pdis.ArregladorDeIndicesDeCiudad.Descripción;
              miMenuArreglarCosasGeneralesEnPdis.ToolTipText = GpsYv.ManejadorDeMapa.Pdis.ArregladorGeneral.Descripción;
              miMenúBuscaDuplicadosEnPdis.ToolTipText = GpsYv.ManejadorDeMapa.Pdis.BuscadorDeDuplicados.Descripción;
              miMenúBuscarAlertasEnPdis.ToolTipText = GpsYv.ManejadorDeMapa.Pdis.BuscadorDeAlertas.Descripción;
              miMenúBuscarErroresEnPdis.ToolTipText = GpsYv.ManejadorDeMapa.Pdis.BuscadorDeErrores.Descripción;

              // Vías.
              miMenúProcesarTodoEnVías.ToolTipText = GpsYv.ManejadorDeMapa.Vías.ManejadorDeVías.DescripciónProcesarTodo;
              miMenúArreglarIndicesDeCiudadEnVías.ToolTipText = GpsYv.ManejadorDeMapa.Vías.ArregladorDeIndicesDeCiudad.Descripción;
              miMenúArreglarCosasGeneralesEnVías.ToolTipText = GpsYv.ManejadorDeMapa.Vías.ArregladorGeneral.Descripción;
              miMenúBuscarAlertasEnVías.ToolTipText = GpsYv.ManejadorDeMapa.Vías.BuscadorDeAlertas.Descripción;
              miMenúBuscarPosiblesErroresDeRuteoEnVías.ToolTipText = GpsYv.ManejadorDeMapa.Vías.BuscadorDePosiblesErroresDeRuteo.Descripción;
              miMenúBuscarPosiblesNodosDesconectadosEnVías.ToolTipText = GpsYv.ManejadorDeMapa.Vías.BuscadorDePosiblesNodosDesconectados.Descripción;
              miMenúBuscarErroresEnVías.ToolTipText = GpsYv.ManejadorDeMapa.Vías.BuscadorDeErrores.Descripción;
              #endregion

              // Crea y asigna el escuchador de estatus.
              miEscuchadorDeEstatus = new EscuchadorDeEstatus(
            this,
            miTextoDeEstatus,
            miBarraDeProgreso,
            miTextoDeCoordenadas);

              // Crea el objecto Manejador de Mapa.
              miManejadorDeMapa = new ManejadorDeMapa(
            miEscuchadorDeEstatus,
            new OpenFileDialogService());

              // Maneja eventos de modificación de elementos.
              miManejadorDeMapa.MapaNuevo += EnMapaNuevo;
              miManejadorDeMapa.ElementosModificados += EnElementosModificados;

              // Maneja eventos de procesamiento.
              miManejadorDeMapa.Procesando += EnProcesando;
              miManejadorDeMapa.Procesó += EnProcesó;

              // Oculta el botón de parar de procesar.
              miBotónParaDeProcesar.Visible = false;
              miTimerParaMostrarBotónParaDeProcesar.Interval = 5000;
              miTimerParaMostrarBotónParaDeProcesar.Tick += EnTimerParaMostrarBotónParaDeProcesar;

              // Pone el método llenador de items.
              miLista.PoneLlenadorDeItems(LlenaItems);

              // Asigna las propiedades de la interfase de mapa.
              miInterfaseDeMapa.ManejadorDeMapa = miManejadorDeMapa;
              miInterfaseDeMapa.EscuchadorDeEstatus = miEscuchadorDeEstatus;

              // Asigna las propiedades de la interfase de PDIs.
              miInterfaseManejadorDePdis.ManejadorDeMapa = miManejadorDeMapa;
              miInterfaseManejadorDePdis.EscuchadorDeEstatus = miEscuchadorDeEstatus;

              // Asigna las propiedades de la interfase de Vías.
              miInterfaseManejadorDeVías.ManejadorDeMapa = miManejadorDeMapa;
              miInterfaseManejadorDeVías.EscuchadorDeEstatus = miEscuchadorDeEstatus;

              // Crea el diccionario de índices de pestañas.
              TabControl.TabPageCollection pestañas = miControladorDePestañasPrincipal.TabPages;
              for (int i = 0; i < pestañas.Count; ++i)
              {
            misIndicesDePestañas[pestañas[i]] = i;
              }

              // Maneja evento de cambio de Estado Máximo de Pestañas de PDIs.
              miInterfaseManejadorDePdis.CambióEstadoMáximoDePestañas +=
            ((elEnviador, losArgumentos) =>
              miControladorDePestañasPrincipal.PoneEstadoDePestaña(
            miPaginaDePdis,
            losArgumentos.EstadoMáximoDePestañas));

              // Maneja evento de cambio de Estado Máximo de Pestañas de Vías.
              miInterfaseManejadorDeVías.CambióEstadoMáximoDePestañas +=
            ((elEnviador, losArgumentos) =>
              miControladorDePestañasPrincipal.PoneEstadoDePestaña(
            miPáginaDeVías,
            losArgumentos.EstadoMáximoDePestañas));

              // Lee el archivo de límites si existe en los settings.
              if (!string.IsNullOrEmpty(Settings.Default.ArchivoDeLímites))
              {
            // Trata de leer el archivo de límites.
            try
            {
              miManejadorDeMapa.AbrirLímites(Settings.Default.ArchivoDeLímites);
            }
            catch
            {
              // Ignoramos errores.
            }
              }
        }
Exemplo n.º 29
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elManejadorDePdis">El manejador de PDIs.</param>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public BuscadorDeAlertas(
     ManejadorDePdis elManejadorDePdis,
     IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elManejadorDePdis, elEscuchadorDeEstatus)
 {
 }
Exemplo n.º 30
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elManejadorDeVías">El manejador de Vías.</param>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public ArregladorDeIndicesDeCiudad(
     ManejadorDeVías elManejadorDeVías,
     IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elManejadorDeVías, elEscuchadorDeEstatus)
 {
 }
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="elManejadorDePdis">El manejador de PDIs.</param>
 /// <param name="elEscuchadorDeEstatus">El escuchador de estatus.</param>
 public BuscadorDeDuplicados(
     ManejadorDePdis elManejadorDePdis,
     IEscuchadorDeEstatus elEscuchadorDeEstatus)
     : base(elManejadorDePdis, elEscuchadorDeEstatus)
 {
 }