diff --git a/Source/ApplicationBase/uFactuGES_App.pas b/Source/ApplicationBase/uFactuGES_App.pas index f42dbf37..80a70e16 100644 --- a/Source/ApplicationBase/uFactuGES_App.pas +++ b/Source/ApplicationBase/uFactuGES_App.pas @@ -7,8 +7,7 @@ uses uEmpresasController, uUsuariosController, uHostManager, uModuleController; type - TDoLoadModulesEvent = procedure; - TDoMainFormEvent = procedure; + TAppFactuGES_Event = procedure; IAppSplashForm = interface ['{9905DF57-4476-42E6-A7CD-B1479A84E220}'] @@ -33,11 +32,14 @@ type function GetModuleManager : THostManager; function GetTerminated: Boolean; - function GetLoadModulesEvent : TDoLoadModulesEvent; - procedure SetLoadModulesEvent (ALoadModulesEvent : TDoLoadModulesEvent); + function GetLoadModulesEvent : TAppFactuGES_Event; + procedure SetLoadModulesEvent (ALoadModulesEvent : TAppFactuGES_Event); - function GetDoMainFormEvent : TDoMainFormEvent; - procedure SetDoMainFormEvent (AMainFormEvent : TDoMainFormEvent); + function GetDoMainFormEvent : TAppFactuGES_Event; + procedure SetDoMainFormEvent (AMainFormEvent : TAppFactuGES_Event); + + function GetDoRefreshMainFormEvent : TAppFactuGES_Event; + procedure SetDoRefreshMainFormEvent (ARefreshMainFormEvent : TAppFactuGES_Event); function GetAppSplashForm : IAppSplashForm; procedure SetAppSplashForm (AAppSplashForm : IAppSplashForm); @@ -63,11 +65,10 @@ type property UsuariosController : IUsuariosController read GetUsuariosController; property AppSplashForm : IAppSplashForm read GetAppSplashForm write SetAppSplashForm; property ModuleManager : THostManager read GetModuleManager; - property DoMainFormEvent : TDoMainFormEvent read GetDoMainFormEvent write SetDoMainFormEvent; - property DoLoadModulesEvent : TDoLoadModulesEvent read GetLoadModulesEvent write SetLoadModulesEvent; + property DoMainFormEvent : TAppFactuGES_Event read GetDoMainFormEvent write SetDoMainFormEvent; + property DoLoadModulesEvent : TAppFactuGES_Event read GetLoadModulesEvent write SetLoadModulesEvent; + property DoRefreshMainFormEvent : TAppFactuGES_Event read GetDoRefreshMainFormEvent write SetDoRefreshMainFormEvent; property Terminated : Boolean read GetTerminated; - - procedure ShowCapado; end; @@ -80,8 +81,9 @@ type FHostManager : THostManager; FTerminated : Boolean; - FDoMainFormEvent: TDoMainFormEvent; - FDoLoadModulesEvent: TDoMainFormEvent; + FDoMainFormEvent: TAppFactuGES_Event; + FDoLoadModulesEvent: TAppFactuGES_Event; + FDoRefreshMainFormEvent: TAppFactuGES_Event; function GetMainForm: TCustomForm; function GetEmpresasController: IEmpresasController; @@ -94,11 +96,14 @@ type function GetModuleManager : THostManager; function GetTerminated: Boolean; - function GetLoadModulesEvent : TDoLoadModulesEvent; - procedure SetLoadModulesEvent (ALoadModulesEvent : TDoLoadModulesEvent); + function GetLoadModulesEvent : TAppFactuGES_Event; + procedure SetLoadModulesEvent (ALoadModulesEvent : TAppFactuGES_Event); - function GetDoMainFormEvent : TDoMainFormEvent; - procedure SetDoMainFormEvent (AMainFormEvent : TDoMainFormEvent); + function GetDoMainFormEvent : TAppFactuGES_Event; + procedure SetDoMainFormEvent (AMainFormEvent : TAppFactuGES_Event); + + function GetDoRefreshMainFormEvent : TAppFactuGES_Event; + procedure SetDoRefreshMainFormEvent (ARefreshMainFormEvent : TAppFactuGES_Event); function GetAppSplashForm : IAppSplashForm; procedure SetAppSplashForm (AAppSplashForm : IAppSplashForm); @@ -107,6 +112,7 @@ type procedure RegisterModule(AModuleInfo : TModuleInfo); protected procedure DoMainForm; + procedure DoRefreshMainForm; procedure CargarModulos; procedure ShowSplashForm; @@ -134,11 +140,10 @@ type property EmpresasController : IEmpresasController read GetEmpresasController; property UsuariosController : IUsuariosController read GetUsuariosController; property ModuleManager : THostManager read GetModuleManager; - property DoMainFormEvent : TDoMainFormEvent read GetDoMainFormEvent write SetDoMainFormEvent; - property DoLoadModulesEvent : TDoLoadModulesEvent read GetLoadModulesEvent write SetLoadModulesEvent; + property DoMainFormEvent : TAppFactuGES_Event read GetDoMainFormEvent write SetDoMainFormEvent; + property DoLoadModulesEvent : TAppFactuGES_Event read GetLoadModulesEvent write SetLoadModulesEvent; + property DoRefreshMainFormEvent : TAppFactuGES_Event read GetDoRefreshMainFormEvent write SetDoRefreshMainFormEvent; property Terminated : Boolean read GetTerminated; - - procedure ShowCapado; end; var @@ -223,11 +228,16 @@ begin Result := Application.MainForm; end; -function TAppFactuGES.GetDoMainFormEvent: TDoMainFormEvent; +function TAppFactuGES.GetDoMainFormEvent: TAppFactuGES_Event; begin Result := FDoMainFormEvent; end; +function TAppFactuGES.GetDoRefreshMainFormEvent: TAppFactuGES_Event; +begin + Result := FDoRefreshMainFormEvent; +end; + function TAppFactuGES.GetAppFullName: String; begin Result := uAppInfoUtils.GetAppFullName; @@ -261,7 +271,7 @@ begin Result := FEmpresasController; end; -function TAppFactuGES.GetLoadModulesEvent: TDoLoadModulesEvent; +function TAppFactuGES.GetLoadModulesEvent: TAppFactuGES_Event; begin Result := FDoLoadModulesEvent; end; @@ -313,6 +323,14 @@ begin RegisterModule(AModuleInfo); end; +procedure TAppFactuGES.DoRefreshMainForm; +begin + if not Assigned(FDoRefreshMainFormEvent) then + raise Exception.Create('Evento para el refresco del formulario principal no asignado (DoRefreshMainForm)'); + + FDoRefreshMainFormEvent(); +end; + procedure TAppFactuGES.RegisterModule(AModuleInfo: TModuleInfo); begin AppSplashForm.Mensaje := 'Cargando ''' + AModuleInfo.Module.ModuleName + '''...'; @@ -327,6 +345,8 @@ begin try CargarModulos; DoMainForm; + SeleccionarEmpresa; + DoRefreshMainForm; finally HideSplashForm; HideHourglassCursor; @@ -337,11 +357,17 @@ begin end; procedure TAppFactuGES.SetDoMainFormEvent( - AMainFormEvent: TDoMainFormEvent); + AMainFormEvent: TAppFactuGES_Event); begin FDoMainFormEvent := AMainFormEvent; end; +procedure TAppFactuGES.SetDoRefreshMainFormEvent( + ARefreshMainFormEvent: TAppFactuGES_Event); +begin + FDoRefreshMainFormEvent := ARefreshMainFormEvent; +end; + procedure TAppFactuGES.SeleccionarEmpresa; var JsDialog: TJSDialog; @@ -391,16 +417,11 @@ begin end; procedure TAppFactuGES.SetLoadModulesEvent( - ALoadModulesEvent: TDoLoadModulesEvent); + ALoadModulesEvent: TAppFactuGES_Event); begin FDoLoadModulesEvent := ALoadModulesEvent; end; -procedure TAppFactuGES.ShowCapado; -begin - ShowInfoMessage('Sin Acceso', 'Funcionalidad en desarrollo, disculpen las molestias'); -end; - procedure TAppFactuGES.ShowSplashForm; begin if not Assigned(FAppSplashForm) then diff --git a/Source/Cliente/uBootStrap.pas b/Source/Cliente/uBootStrap.pas index c6a00145..258cd1be 100644 --- a/Source/Cliente/uBootStrap.pas +++ b/Source/Cliente/uBootStrap.pas @@ -55,6 +55,11 @@ begin end; end; +procedure DoRefreshMainForm; +begin + fPantallaPrincipal.RefrescarUI; +end; + procedure DoAppMainForm; begin Application.CreateForm(TfPantallaPrincipal, fPantallaPrincipal); @@ -62,7 +67,6 @@ end; procedure Initialize; begin - dmConexion := TdmConexion.Create(NIL); dmConfiguracion := TdmConfiguracion.Create(NIL); dmBase := TdmBase.Create(NIL); @@ -73,6 +77,7 @@ begin AppSplashForm := TAppSplashForm.Create; DoMainFormEvent := DoAppMainForm; DoLoadModulesEvent := DoAppLoadModules; + DoRefreshMainFormEvent := DoRefreshMainForm; end; NavPaneController := TNavPaneController.Create; diff --git a/Source/Cliente/uPantallaPrincipal.dfm b/Source/Cliente/uPantallaPrincipal.dfm index 3f71e2ca..d35e9d0e 100644 --- a/Source/Cliente/uPantallaPrincipal.dfm +++ b/Source/Cliente/uPantallaPrincipal.dfm @@ -14,6 +14,7 @@ object fPantallaPrincipal: TfPantallaPrincipal OldCreateOrder = False Position = poScreenCenter Visible = True + WindowState = wsMaximized OnClose = FormClose OnCloseQuery = FormCloseQuery OnCreate = FormCreate diff --git a/Source/Cliente/uPantallaPrincipal.pas b/Source/Cliente/uPantallaPrincipal.pas index 21f0e570..363ba2d1 100644 --- a/Source/Cliente/uPantallaPrincipal.pas +++ b/Source/Cliente/uPantallaPrincipal.pas @@ -123,7 +123,6 @@ type procedure ShowEmbedded(AEditor : ICustomEditor); procedure ReleaseEmbedded; procedure AplicarPerfil; - procedure RefrescarUI; procedure InicializarUI; procedure OnThemeChange(Sender: TObject); procedure ExecuteActionMenu(Sender : TObject); @@ -132,6 +131,7 @@ type function GetWorkPanel : TWinControl; procedure CreateParams(var Params: TCreateParams); override; public + procedure RefrescarUI; function IsShortcut(var Message: TWMKey): Boolean; override; procedure OnWorkPanelChanged(AEditor : ICustomEditor); constructor Create(AOwner: TComponent); override; @@ -187,20 +187,8 @@ begin end; procedure TfPantallaPrincipal.FormShow(Sender: TObject); -var - AIDEmpresa : Integer; begin InicializarUI; - - { Go full screen } - WindowState := wsMaximized; - ClientWidth := Screen.Width; - ClientHeight := Screen.Height; - Refresh; - - //Sacamos la lista de empresas para que el usuario elija con la que va a trabajar - AppFactuGES.SeleccionarEmpresa; - RefrescarUI; end; procedure TfPantallaPrincipal.RefrescarUI;