void LoadFromTarget(VisualEffectTarget visualEffectTarget)
        {
            if (visualEffectTarget == null)
            {
                return;
            }

            switch (visualEffectTarget.targetType)
            {
            case TargetType.ActivePlayer:
                rbActivePlayer.IsChecked = true;
                break;

            case TargetType.ActiveEnemy:
                rbActiveEnemy.IsChecked = true;
                break;

            case TargetType.ScrollPosition:
                rbScrollPos.IsChecked = true;
                break;

            case TargetType.ScreenPosition:
                rbScreenPos.IsChecked = true;
                break;
            }

            switch (visualEffectTarget.targetPage)
            {
            case TargetPage.Main:
                rbnPageMain.IsChecked      = true;
                cmbMainItems.SelectedValue = visualEffectTarget.entryName;
                break;

            case TargetPage.Skills:
                rbnPageSkills.IsChecked     = true;
                cmbSkillItems.SelectedValue = visualEffectTarget.entryName;
                break;

            case TargetPage.Equipment:
                rbnPageEquipment.IsChecked      = true;
                cmbEquipmentItems.SelectedValue = visualEffectTarget.entryName;
                break;
            }

            txtCoordinates.Text  = ToVectorString(visualEffectTarget.screenPosition);
            tbxTargetOffset.Text = ToVectorString(visualEffectTarget.targetOffset);
        }
        VisualEffectTarget GetTarget()
        {
            VisualEffectTarget visualEffectTarget;

            if (rbScreenPos.IsChecked ?? false)
            {
                visualEffectTarget = new VisualEffectTarget(ToVector(txtCoordinates.Text));
            }
            else
            {
                visualEffectTarget = new VisualEffectTarget();
            }

            visualEffectTarget.targetType   = GetVisualEffectTarget();
            visualEffectTarget.targetOffset = ToVector(tbxTargetOffset.Text);

            return(visualEffectTarget);
        }
        void SaveToTarget(VisualEffectTarget visualEffectTarget)
        {
            if (rbActivePlayer.IsChecked ?? false)
            {
                visualEffectTarget.targetType = TargetType.ActivePlayer;
            }
            if (rbActiveEnemy.IsChecked ?? false)
            {
                visualEffectTarget.targetType = TargetType.ActiveEnemy;
            }
            if (rbScrollPos.IsChecked ?? false)
            {
                visualEffectTarget.targetType = TargetType.ScrollPosition;
            }
            if (rbScreenPos.IsChecked ?? false)
            {
                visualEffectTarget.targetType = TargetType.ScreenPosition;
            }


            if (rbnPageMain.IsChecked ?? false)
            {
                visualEffectTarget.targetPage = TargetPage.Main;
                visualEffectTarget.entryName  = cmbMainItems.SelectedValue?.ToString();
            }

            if (rbnPageEquipment.IsChecked ?? false)
            {
                visualEffectTarget.targetPage = TargetPage.Equipment;
                visualEffectTarget.entryName  = cmbEquipmentItems.SelectedValue?.ToString();
            }

            if (rbnPageSkills.IsChecked ?? false)
            {
                visualEffectTarget.targetPage = TargetPage.Skills;
                visualEffectTarget.entryName  = cmbSkillItems.SelectedValue?.ToString();
            }

            visualEffectTarget.screenPosition = ToVector(txtCoordinates.Text);
            visualEffectTarget.targetOffset   = ToVector(tbxTargetOffset.Text);
        }