/// <summary> /// Devuelve una unica instancia del formulario (Patron singleton) /// </summary> /// <returns></returns> public static FrmCarta ObtenerInstancia() { if (InstanciaForm == null) { InstanciaForm = new FrmCarta(); } return(InstanciaForm); }
private void CrearArticuloToolStripMenuItem_Click(object sender, EventArgs e) { using (FrmValidarUsuario FormValidarUsuario = new FrmValidarUsuario(FrmValidarUsuario.EFiltroUsuariosAutorizados.GerentesSubGerentes)) { FormValidarUsuario.ShowDialog(); if (FormValidarUsuario.DialogResult == DialogResult.OK) { FrmCarta.ObtenerInstancia().BtnCrearArticulo_Click(sender, e); } } }
private void BloquearDesbloquearFuncionalidades(bool _Bloquear) { FrmReservas.ObtenerInstancia().BloquearPorVencimientoLicencia(_Bloquear); FrmMesas.ObtenerInstancia().BloquearPorVencimientoLicencia(_Bloquear); FrmCarta.ObtenerInstancia().BloquearPorVencimientoLicencia(_Bloquear); FrmCaja.ObtenerInstancia().BloquearPorVencimientoLicencia(_Bloquear); FrmCocina.ObtenerInstancia().BloquearPorVencimientoLicencia(_Bloquear); FrmConfiguracion.ObtenerInstancia().BloquearPorVencimientoLicencia(_Bloquear); FrmDelivery.ObtenerInstancia().BloquearPorVencimientoLicencia(_Bloquear); FORM_CLIENTE.BloquearPorVencimientoLicencia(false); tsmAccesoRapido.Enabled = !_Bloquear; tsmHerramientas.Enabled = !_Bloquear; }
/// <summary> /// Prepara el objeto de tipo formulario para mostrarlo al usuario (validadndo tambien su autorizacion) /// </summary> /// <param name="_FormMostrar">Formulario que se mostrara.</param> /// <param name="_Boton">Propiedades del evento que llamó al metodo.</param> /// <param name="_SubBoton">Obtiene el boton del submenu que llamo al evento.</param> private void PreparaFormParaMostrar(Form _FormMostrar, object _Boton, object _SubBoton = null) { // 'AccesoAutorizado' determinara si el usuario ingreso una contraseña valida, si intento abrir un Form critico. bool AccesoAutorizado = true; // 'FormAccesoEspecialAbierto = true' le indicara al reloj, que debe incrementar la variable 'MinutosInactivos', para ocultar // el Form si este se mantuvo en pantalla por mas del tiempo indicado por el usuario, por defecto esta indicado que no se aumente, hasta // que detecte que se intenta abrir un Form critico FormAccesoEspecialAbierto = false; // Preguntar si el formulario que quiere abrir es critico. if (_FormMostrar == FrmCaja.ObtenerInstancia() || _FormMostrar == FrmConfiguracion.ObtenerInstancia() || _FormMostrar == FrmCarta.ObtenerInstancia() || _FormMostrar == FrmStock.ObtenerInstancia() || _FormMostrar == FrmEstadisticasCaja.ObtenerInstancia()) { // En caso afirmativo, se pregunta si ya esta abierta para no volver a pedir contraseña (se resetea si cambia el // formulario o supera el limite de uno de estos activos). if (_FormMostrar != UltimoFormAbierto) { using (FrmValidarUsuario FormValidarUsuario = new FrmValidarUsuario(FrmValidarUsuario.EFiltroUsuariosAutorizados.GerentesSubGerentes)) { // Le doy foco a otro control para evitar el borde blanco en el boton. pnlContDeFrmsSecundarios.Select(); FormValidarUsuario.ShowDialog(); if (FormValidarUsuario.DialogResult == DialogResult.OK) { FormAccesoEspecialAbierto = true; MinutosTranscurridos = 0; } else { AccesoAutorizado = false; } } } } // If para evitar ejecutar repetidamente la carga de un formulario, si el que quiere abrir, ya esta en pantalla, // e impedir abrir los formularios especiales si no ingreso los datos de seguridad en forma correcta. if (_FormMostrar != UltimoFormAbierto && AccesoAutorizado) { SeleccionarBotonFormCritico((Button)_Boton); if (_SubBoton != null && BotonSubmenuPresionado != null || ((Button)_Boton).Name == btnEstadisticas.Name) { SeleccionarBotonFormCritico((Button)_SubBoton); } // Ocultar form viejo. if (UltimoFormAbierto != null) { UltimoFormAbierto.Hide(); pnlContDeFrmsSecundarios.Controls.Remove(UltimoFormAbierto); } if (BotonPresionado != null && BotonPresionado != (Button)_Boton) { BotonEnEstadoOriginal(BotonPresionado); } // Deseleccionar boton viejo. if (BotonSubmenuPresionado != null) { BotonEnEstadoOriginal(BotonSubmenuPresionado); } MinutosTranscurridos = 0; BotonPresionado = (Button)_Boton; //Esto evitara que los eventos move y leave le cambien el estilo al boton en el codigo de estilo. if (_SubBoton != null) { BotonSubmenuPresionado = (Button)_SubBoton; } else { BotonSubmenuPresionado = null; } _FormMostrar.TopLevel = false; _FormMostrar.Dock = DockStyle.Fill; _FormMostrar.FormBorderStyle = FormBorderStyle.None; pnlContDeFrmsSecundarios.Controls.Add(_FormMostrar); _FormMostrar.Show(); UltimoFormAbierto = _FormMostrar; if (BotonPresionado.Name != btnEstadisticas.Name && pnlContBotonesEstadisticas.Height == MEDIDA_ESTADISTICA_MENU_EXPANDIDO) { // El cambio de la propiedad visible evita un bug visual de la scrollbar pnlContBotonesMenu.Visible = false; pnlContBotonesEstadisticas.Height = MEDIDA_ESTADISTICA_MENU_CONTRAIDO; pnlSeparadorEstadisticas.Visible = false; pnlContBotonesMenu.Visible = true; } } }
private void BtnCarta_Click(object sender, EventArgs e) => PreparaFormParaMostrar(FrmCarta.ObtenerInstancia(), sender);