RawImage Image(Texture2D texture, ImageUploadViewController viewController, float size = 36)
        {
            var _userImage = new GameObject("BeatBoards: Upload Image").AddComponent <RawImage>();

            _userImage.material = UIUtilities.NoGlowMaterial;
            _userImage.rectTransform.sizeDelta = new Vector2(size, size);
            _userImage.rectTransform.SetParent(viewController.rectTransform.transform, false);
            Texture2D tex = texture;

            tex.wrapMode       = TextureWrapMode.Clamp;
            _userImage.texture = tex;

            return(_userImage);
        }
        private void _playerInfoViewController_editImageButtonPressed()
        {
            if (_imageUploadViewController == null)
            {
                _imageUploadViewController = BeatSaberUI.CreateViewController <ImageUploadViewController>();
                _imageUploadViewController.refreshButtonClicked += _imageUploadViewController_refreshButtonPressed;
                _imageUploadViewController.setButtonClicked     += _imageUploadViewController_setButtonPressed;
                _imageUploadViewController.closeButtonClicked   += _imageUploadViewController_backButtonPressed;
            }

            if (_imageUploadViewController._titleText != null)
            {
                _imageUploadViewController._titleText.text = "Change Profile Picture";
            }

            PresentViewController(_imageUploadViewController);
        }