private void OnScreenClose(IGuiMediatorManager source, IView screen) { if (!_screenOwnedDialogs.ContainsKey(screen)) { return; } _screenOwnedDialogs[screen].ForEach(CloseDialog); _screenOwnedDialogs.Remove(screen); }
public DialogManager(IViewFactory viewFactory, GameObject layerRootObject, GameObject layerRootObject3D, GameObject uGuiCanvas, IGuiMediatorManager screenManager) { _viewFactory = viewFactory; _layerRootObject = layerRootObject; _layerRootObject3D = layerRootObject3D; _uGuiCanvas = uGuiCanvas; _screensManager = screenManager; _screensManager.OnCloseGuiMediator += OnScreenClose; }