Gruppe22.Client.Window.HandleEvent C# (CSharp) Method

HandleEvent() public method

public HandleEvent ( bool DownStream, Backend eventID ) : void
DownStream bool
eventID Backend
return void
        public override void HandleEvent(bool DownStream, Backend.Events eventID, params object[] data)
        {
            if (DownStream)
            {
                foreach (UIElement child in _children)
                {
                    switch (eventID)
                    {
                        default:
                            child.HandleEvent(true, eventID, data);
                            break;
                    }
                }
            }
            else
            {
                switch (eventID)
                {
                    case Backend.Events.ButtonPressed:
                        switch ((Backend.Buttons)data[0])
                        {
                            case Backend.Buttons.Close:
                                _parent.HandleEvent(true, Backend.Events.ContinueGame, null);
                                break;
                            case Backend.Buttons.Credits:
                                _parent.HandleEvent(true, Backend.Events.About, null);
                                break;
                            case Backend.Buttons.LAN:
                                _parent.HandleEvent(true, Backend.Events.Network, null);
                                break;
                            case Backend.Buttons.Load:
                                _parent.HandleEvent(true, Backend.Events.LoadFromCheckPoint, null);
                                break;
                            case Backend.Buttons.NewMap:
                                _parent.HandleEvent(true, Backend.Events.NewMap, null);
                                break;
                            case Backend.Buttons.Quit:
                                _parent.HandleEvent(true, Backend.Events.EndGame, null);
                                break;
                            case Backend.Buttons.Reset:
                                _parent.HandleEvent(true, Backend.Events.ResetGame, null);
                                break;
                            case Backend.Buttons.Restart:
                                _parent.HandleEvent(true, Backend.Events.ResetGame, null);
                                break;
                            default:
                                _parent.HandleEvent(true, eventID, data);
                                break;
                        }
                        break;
                    case Backend.Events.RequestFocus:
                        _children[_focusID].focus = false;
                        ((UIElement)data[0]).focus = true;
                        for (int i = 0; i < _children.Count; ++i)
                        {
                            if (_children[i] == data[0]) { _focusID = i; break; }
                        }
                        break;
                    default:
                        _parent.HandleEvent(true, eventID, data);
                        break;
                }
            }
        }