Beyond_Beyaan.Screens.InGameMenu.MouseUp C# (CSharp) Метод

MouseUp() публичный Метод

public MouseUp ( int x, int y ) : bool
x int
y int
Результат bool
        public override bool MouseUp(int x, int y)
        {
            if (_promptShowing)
            {
                if (!_saveGameNameField.MouseUp(x, y) && !string.IsNullOrEmpty(_saveGameNameField.Text))
                {
                    _promptShowing = false;
                    _gameMain.SaveGame(_saveGameNameField.Text);
                    GetSaveList(); //Refresh the list after saving
                }
            }
            if (_scrollBar.MouseUp(x, y))
            {
                RefreshSaveButtons();
                return true;
            }
            if (_buttons[0].MouseUp(x, y))
            {
                var func = CloseWindow;
                if (func != null)
                {
                    func();
                }
                _gameMain.ClearAll();
                _gameMain.ChangeToScreen(Screen.NewGame);
                return true;
            }
            if (_buttons[1].MouseUp(x, y))
            {
                _promptShowing = true;
                if (_selectedGame >= 0)
                {
                    _saveGameNameField.SetText(_files[_selectedGame].Name.Substring(0, _files[_selectedGame].Name.Length - _files[_selectedGame].Extension.Length));
                }
                else
                {
                    _saveGameNameField.SetText(string.Empty);
                }
                _saveGameNameField.Select();
                return true;
            }
            if (_buttons[2].MouseUp(x, y))
            {
                var func = CloseWindow;
                if (func != null)
                {
                    func();
                }
                _gameMain.LoadGame(_files[_selectedGame].Name);
                return true;
            }
            if (_buttons[3].MouseUp(x, y))
            {
                //TODO: Add prompt to ensure user really want to exit
                _gameMain.ExitGame();
                return true;
            }

            for (int i = 0; i < _maxVisible; i++)
            {
                if (_saveGameButtons[i].MouseUp(x, y))
                {
                    foreach (var button in _saveGameButtons)
                    {
                        button.Selected = false;
                    }
                    _saveGameButtons[i].Selected = true;
                    _selectedGame = i + _scrollBar.TopIndex;
                    _buttons[2].Enabled = true;
                    return true;
                }
            }

            if (!base.MouseUp(x, y))
            {
                //Clicked outside the window, close this window
                if (CloseWindow != null)
                {
                    CloseWindow();
                }
            }
            else
            {
                //Clicked inside window, clear save game selection, if any
                _selectedGame = -1;
                foreach (var button in _saveGameButtons)
                {
                    button.Selected = false;
                }
                _buttons[2].Enabled = false;
            }
            return false;
        }