public void BatchProcess()
        {
            var mountFrag = MountLinkController.SelectedMount.SelectedItem;
            var riderFrag = MountLinkController.SelectedRider.SelectedItem;

            var newFileName   = "new_" + Path.GetFileNameWithoutExtension(riderFrag.FileName);
            var batchSettings = BatchProcessOptionsWindow.ShowDialog(newFileName, SavePrefixText.Value);

            if (batchSettings != null)
            {
                var service = new BatchProcessorService(_pfs, CreateAnimationGenerator(), batchSettings);
                service.Process(mountFrag, riderFrag);
                MountLinkController.ReloadFragments(true, false);

                ActiveOutputFragment.UpdatePossibleValues(MountLinkController.LoadFragmentsForSkeleton(_rider.Skeleton.SkeletonName, true));
            }
        }
        private void RiderSkeletonChanges(GameSkeleton newValue)
        {
            if (newValue == null)
            {
                ActiveOutputFragment.UpdatePossibleValues(null);
                SelectedRiderBone.UpdatePossibleValues(null);
            }
            else
            {
                ActiveOutputFragment.UpdatePossibleValues(MountLinkController.LoadFragmentsForSkeleton(newValue.SkeletonName, true));
                SelectedRiderBone.UpdatePossibleValues(SkeletonHelper.CreateFlatSkeletonList(newValue));
            }

            SelectedRiderBone.SelectedItem = SelectedRiderBone.PossibleValues.FirstOrDefault(x => string.Equals("root", x.BoneName, StringComparison.OrdinalIgnoreCase));
            MountLinkController.ReloadFragments(true, false);
            UpdateCanSaveAndPreviewStates();
        }
 public void RefreshView()
 {
     MountLinkController.ReloadFragments();
     ActiveOutputFragment.UpdatePossibleValues(MountLinkController.LoadFragmentsForSkeleton(_rider.SkeletonName, true));
 }