// Path: Flubber/demo/src/main/java/com/appolica/sample/ui/editor/pager/animations/AnimationsFragment.java
// public class AnimationsFragment
//         extends BaseRadioRVFragment
//         implements RadioRVAdapter.OnElementSelectedListener {
// 
//     public static final String TAG = "AnimationsFragment";
// 
//     private Map<String, Flubber.AnimationPreset> animationNamesMap =
//             StringUtils.normalizedNameMapFor(Flubber.AnimationPreset.class);
// 
//     private OnAnimationSelectedListener selectedListener;
// 
//     @Override
//     public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
//         super.onViewCreated(view, savedInstanceState);
// 
//         final RadioRVAdapter adapter = getAdapter();
// 
//         adapter.setSelectedListener(this);
// 
//         final AnimationBody animationBody = getAnimationBody();
//         if (animationBody.getAnimation() == null) {
//             adapter.setSelected(0);
// 
//         } else {
//             final Flubber.AnimationProvider animationProvider = ((Flubber.AnimationPreset) animationBody.getAnimation()).getProvider();
//             final Flubber.AnimationPreset animationPreset = Flubber.AnimationPreset.valueFor(animationProvider);
//             final RadioElementModel radioElementModel = Utils.convertEnumToModel(animationPreset);
// 
//             final int index = adapter.getData().indexOf(radioElementModel);
// 
//             adapter.setSelected(index);
//         }
//     }
// 
//     @Override
//     public List<RadioElementModel> getData() {
//         return Utils.convertMapToData(animationNamesMap);
//     }
// 
//     @Override
//     public void onElementSelected(RadioElementModel model) {
//         if (selectedListener != null) {
//             selectedListener.onAnimationSelected(animationNamesMap.get(model.getName().get()));
//         }
//     }
// 
//     public void setSelectedListener(OnAnimationSelectedListener selectedListener) {
//         this.selectedListener = selectedListener;
//     }
// }
// 
// Path: Flubber/demo/src/main/java/com/appolica/sample/ui/editor/pager/interpolators/InterpolatorsFragment.java
// public class InterpolatorsFragment
//         extends BaseRadioRVFragment
//         implements RadioRVAdapter.OnElementSelectedListener {
// 
//     public static final String TAG = "InterpolatorsFragment";
// 
//     private Map<String, Flubber.Curve> interpolatorNamesMap =
//             StringUtils.normalizedNameMapFor(Flubber.Curve.class);
// 
//     private OnInterpolatorSelectedListener selectedListener;
// 
//     @Override
//     public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
//         super.onViewCreated(view, savedInstanceState);
// 
//         final RadioRVAdapter adapter = getAdapter();
// 
//         getAdapter().setSelectedListener(this);
// 
//         final AnimationBody animationBody = getAnimationBody();
//         if (animationBody.getInterpolator() == null) {
//             getAdapter().setSelected(0);
//         } else {
//             final Flubber.InterpolatorProvider interpolatorProvider = ((Flubber.Curve) animationBody.getInterpolator()).getProvider();
//             final Flubber.Curve interpolator = Flubber.Curve.valueFor(interpolatorProvider);
//             final RadioElementModel radioElementModel = Utils.convertEnumToModel(interpolator);
// 
//             final int index = adapter.getData().indexOf(radioElementModel);
// 
//             adapter.setSelected(index);
//         }
//     }
// 
//     @Override
//     public List<RadioElementModel> getData() {
//         return Utils.convertMapToData(interpolatorNamesMap);
//     }
// 
//     @Override
//     public void onElementSelected(RadioElementModel model) {
//         if (selectedListener != null) {
//             selectedListener.onInterpolatorSelected(interpolatorNamesMap.get(model.getName().get()));
//         }
//     }
// 
//     public void setSelectedListener(OnInterpolatorSelectedListener selectedListener) {
//         this.selectedListener = selectedListener;
//     }
// 
// }
// 
// Path: Flubber/demo/src/main/java/com/appolica/sample/ui/editor/pager/settings/SettingsFragment.java
// public class SettingsFragment
//         extends BaseFragment<SettingsRVAdapter>
//         implements SettingsRVAdapter.OnModelChangedCallback,
//         AnimationBodyHolder {
// 
//     public static final String TAG = "SettingsFragment";
// 
//     private OnFieldChangedListener fieldChangedListener;
//     private CustomAnimationBody animationBody;
// 
//     @Override
//     public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
//         super.onViewCreated(view, savedInstanceState);
// 
//         getAdapter().setAnimationBody(animationBody);
//         getAdapter().setModelChangedCallback(this);
//     }
// 
//     @Override
//     protected SettingsRVAdapter getAdapterInstance() {
//         return new SettingsRVAdapter(getContext());
//     }
// 
//     @Override
//     public void onModelChanged(SeekBarModel model) {
//         if (fieldChangedListener != null) {
//             fieldChangedListener.onPropertyChanged(model);
//         }
//     }
// 
//     public void setFieldChangedListener(OnFieldChangedListener fieldChangedListener) {
//         this.fieldChangedListener = fieldChangedListener;
//     }
// 
//     @Override
//     public void setAnimationBody(CustomAnimationBody animationBody) {
//         this.animationBody = animationBody;
//     }
// }


import androidx.fragment.app.Fragment;
import com.appolica.sample.R;
import com.appolica.sample.ui.editor.pager.animations.AnimationsFragment;
import com.appolica.sample.ui.editor.pager.interpolators.InterpolatorsFragment;
import com.appolica.sample.ui.editor.pager.settings.SettingsFragment;
package com.appolica.sample.ui.editor.pager;



public enum EditorFragmentType {
    ANIMATIONS(AnimationsFragment.class, AnimationsFragment.TAG, R.string.tab_animation),
    INTERPOLATORS(InterpolatorsFragment.class, InterpolatorsFragment.TAG, R.string.tab_curve),
// Path: Flubber/demo/src/main/java/com/appolica/sample/ui/editor/pager/animations/AnimationsFragment.java
// public class AnimationsFragment
//         extends BaseRadioRVFragment
//         implements RadioRVAdapter.OnElementSelectedListener {
// 
//     public static final String TAG = "AnimationsFragment";
// 
//     private Map<String, Flubber.AnimationPreset> animationNamesMap =
//             StringUtils.normalizedNameMapFor(Flubber.AnimationPreset.class);
// 
//     private OnAnimationSelectedListener selectedListener;
// 
//     @Override
//     public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
//         super.onViewCreated(view, savedInstanceState);
// 
//         final RadioRVAdapter adapter = getAdapter();
// 
//         adapter.setSelectedListener(this);
// 
//         final AnimationBody animationBody = getAnimationBody();
//         if (animationBody.getAnimation() == null) {
//             adapter.setSelected(0);
// 
//         } else {
//             final Flubber.AnimationProvider animationProvider = ((Flubber.AnimationPreset) animationBody.getAnimation()).getProvider();
//             final Flubber.AnimationPreset animationPreset = Flubber.AnimationPreset.valueFor(animationProvider);
//             final RadioElementModel radioElementModel = Utils.convertEnumToModel(animationPreset);
// 
//             final int index = adapter.getData().indexOf(radioElementModel);
// 
//             adapter.setSelected(index);
//         }
//     }
// 
//     @Override
//     public List<RadioElementModel> getData() {
//         return Utils.convertMapToData(animationNamesMap);
//     }
// 
//     @Override
//     public void onElementSelected(RadioElementModel model) {
//         if (selectedListener != null) {
//             selectedListener.onAnimationSelected(animationNamesMap.get(model.getName().get()));
//         }
//     }
// 
//     public void setSelectedListener(OnAnimationSelectedListener selectedListener) {
//         this.selectedListener = selectedListener;
//     }
// }
// 
// Path: Flubber/demo/src/main/java/com/appolica/sample/ui/editor/pager/interpolators/InterpolatorsFragment.java
// public class InterpolatorsFragment
//         extends BaseRadioRVFragment
//         implements RadioRVAdapter.OnElementSelectedListener {
// 
//     public static final String TAG = "InterpolatorsFragment";
// 
//     private Map<String, Flubber.Curve> interpolatorNamesMap =
//             StringUtils.normalizedNameMapFor(Flubber.Curve.class);
// 
//     private OnInterpolatorSelectedListener selectedListener;
// 
//     @Override
//     public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
//         super.onViewCreated(view, savedInstanceState);
// 
//         final RadioRVAdapter adapter = getAdapter();
// 
//         getAdapter().setSelectedListener(this);
// 
//         final AnimationBody animationBody = getAnimationBody();
//         if (animationBody.getInterpolator() == null) {
//             getAdapter().setSelected(0);
//         } else {
//             final Flubber.InterpolatorProvider interpolatorProvider = ((Flubber.Curve) animationBody.getInterpolator()).getProvider();
//             final Flubber.Curve interpolator = Flubber.Curve.valueFor(interpolatorProvider);
//             final RadioElementModel radioElementModel = Utils.convertEnumToModel(interpolator);
// 
//             final int index = adapter.getData().indexOf(radioElementModel);
// 
//             adapter.setSelected(index);
//         }
//     }
// 
//     @Override
//     public List<RadioElementModel> getData() {
//         return Utils.convertMapToData(interpolatorNamesMap);
//     }
// 
//     @Override
//     public void onElementSelected(RadioElementModel model) {
//         if (selectedListener != null) {
//             selectedListener.onInterpolatorSelected(interpolatorNamesMap.get(model.getName().get()));
//         }
//     }
// 
//     public void setSelectedListener(OnInterpolatorSelectedListener selectedListener) {
//         this.selectedListener = selectedListener;
//     }
// 
// }
// 
// Path: Flubber/demo/src/main/java/com/appolica/sample/ui/editor/pager/settings/SettingsFragment.java
// public class SettingsFragment
//         extends BaseFragment<SettingsRVAdapter>
//         implements SettingsRVAdapter.OnModelChangedCallback,
//         AnimationBodyHolder {
// 
//     public static final String TAG = "SettingsFragment";
// 
//     private OnFieldChangedListener fieldChangedListener;
//     private CustomAnimationBody animationBody;
// 
//     @Override
//     public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
//         super.onViewCreated(view, savedInstanceState);
// 
//         getAdapter().setAnimationBody(animationBody);
//         getAdapter().setModelChangedCallback(this);
//     }
// 
//     @Override
//     protected SettingsRVAdapter getAdapterInstance() {
//         return new SettingsRVAdapter(getContext());
//     }
// 
//     @Override
//     public void onModelChanged(SeekBarModel model) {
//         if (fieldChangedListener != null) {
//             fieldChangedListener.onPropertyChanged(model);
//         }
//     }
// 
//     public void setFieldChangedListener(OnFieldChangedListener fieldChangedListener) {
//         this.fieldChangedListener = fieldChangedListener;
//     }
// 
//     @Override
//     public void setAnimationBody(CustomAnimationBody animationBody) {
//         this.animationBody = animationBody;
//     }
// }


// Path: Flubber/demo/src/main/java/com/appolica/sample/ui/editor/pager/EditorFragmentType.java
import androidx.fragment.app.Fragment;
import com.appolica.sample.R;
import com.appolica.sample.ui.editor.pager.animations.AnimationsFragment;
import com.appolica.sample.ui.editor.pager.interpolators.InterpolatorsFragment;
import com.appolica.sample.ui.editor.pager.settings.SettingsFragment;

package com.appolica.sample.ui.editor.pager;



public enum EditorFragmentType {
    ANIMATIONS(AnimationsFragment.class, AnimationsFragment.TAG, R.string.tab_animation),
    INTERPOLATORS(InterpolatorsFragment.class, InterpolatorsFragment.TAG, R.string.tab_curve),
    SETTINGS(SettingsFragment.class, SettingsFragment.TAG, R.string.tab_settings);