Beispiel #1
0
        /// <summary>Método de ejecución del hilo.</summary>

        public override void Run()
        {
            int acumulado = 0;
            int paso      = 50;

            Hilo.Sleep(paso);
            try
            {
                EjecutarSubcicloGtk();
                while (!terminar)
                {
                    Hilo.Sleep(paso);
                    if (!pausado)
                    {
                        acumulado += paso;
                        if (acumulado >= tSubciclo)
                        {
                            acumulado = 0;
                            EjecutarSubcicloGtk();
                        }
                    }
                }
                DetenerGtk();
            }
            catch (System.Threading.ThreadAbortException)
            {
                DetenerGtk();
                return;
            }
        }
Beispiel #2
0
        /// <summary>Función que se ejecuta al pulsar sobre el botón
        /// aceptar del diálogo. Comprueba que los datos introducidos
        /// son correctos y los aplica.</summary>
        /// <param name="o">El objeto que llama a la función.</param>
        /// <param name="args">Los argumentos que se le pasan a la
        /// función.</param>

        private void AceptarClick(object o, System.EventArgs args)
        {
            if (!rbMemoriaDef.Active)
            {
                if (!File.Exists(lblMemoriaAlt.Text))
                {
                    MessageDialog m =
                        new MessageDialog(this,
                                          Gtk.DialogFlags.Modal,
                                          Gtk.MessageType.Error,
                                          Gtk.ButtonsType.Close,
                                          Ventana.GetText("D_Conf_ErrorMemNoExiste"));
                    m.Run();
                    m.Hide();
                    return;
                }
                // comprobar que el fichero contiene texto correcto...
                try
                { MemoriaControl.CreateFromString(
                      Fichero.CargarTexto(lblMemoriaAlt.Text)); }
                catch (Exception)
                {
                    Hilo.Sleep(250);
                    MessageDialog m2 =
                        new MessageDialog(this,
                                          Gtk.DialogFlags.Modal,
                                          Gtk.MessageType.Error,
                                          Gtk.ButtonsType.Close,
                                          Ventana.GetText("D_Conf_ErrorMem"));
                    m2.Run();
                    m2.Hide();
                    return;
                }
            }

            Opciones opc = Opciones.GetInstance();

            opc.SetMostrarAdvertencias(cbAdvertencias.Active);
            opc.SetTSubciclo(sbTiempo.ValueAsInt);
            opc.SetUsarMemoriaDefecto(rbMemoriaDef.Active);
            opc.SetMemoriaAlternativa(lblMemoriaAlt.Text);
            opc.Guardar();

            this.HideAll();
        }