/// <summary> /// Changes the current panel to the specified panel id. /// </summary> public void ChangeCurrentPanel(string panelId) { UiPanelInterface panel; if (_uiPanelDataHolder.TryGetValue(panelId, out panel)) { UiPanelInterface prevPanel = _currentPanel; if (prevPanel != null) { prevPanel.Deactivate(); } _currentPanel = panel; _currentPanelId = panelId; _currentPanel.Activate(); // Trigger callback. { if (OnPanelChange != null) { PanelChangeContext context = new PanelChangeContext(); context.PreviousPanel = prevPanel; context.CurrentPanel = _currentPanel; OnPanelChange(context); } } } else { Debug.LogError("Unable to activate a panel that is not registered: " + panelId); } }
/// <summary> /// Changes the current panel to the specified panel id. /// </summary> public void ChangeCurrentPanel(string panelId) { UiPanelInterface panel; if (_uiPanelDataHolder.TryGetValue (panelId, out panel)) { UiPanelInterface prevPanel = _currentPanel; if (prevPanel != null) { prevPanel.Deactivate (); } _currentPanel = panel; _currentPanelId = panelId; _currentPanel.Activate (); // Trigger callback. { if (OnPanelChange != null) { PanelChangeContext context = new PanelChangeContext(); context.PreviousPanel = prevPanel; context.CurrentPanel = _currentPanel; OnPanelChange(context); } } } else { Debug.LogError ("Unable to activate a panel that is not registered: " + panelId); } }