package dev.bytevibe.hyperpoint;

/**
 * 演示/播放模式下支持的翻页动画效果
 */
public enum TransitionEffect {
    /**
     * 无动画，直接切换
     */
    NONE("无动画", 0),

    /**
     * 淡出/淡入效果
     */
    FADE("淡出淡入", 500),

    /**
     * 从右向左推送效果
     */
    PUSH_LEFT("从右推入", 400),

    /**
     * 从左向右推送效果
     */
    PUSH_RIGHT("从左推入", 400),

    /**
     * 从上向下推送效果
     */
    PUSH_DOWN("从上推入", 400),

    /**
     * 从下向上推送效果
     */
    PUSH_UP("从下推入", 400),

    /**
     * 缩放效果 - 从小到大
     */
    ZOOM_IN("缩放放大", 500),

    /**
     * 缩放效果 - 从大到小
     */
    ZOOM_OUT("缩放缩小", 500),

    /**
     * 旋转效果
     */
    ROTATE("旋转翻页", 600);

    private final String displayName;
    private final int duration;  // 毫秒

    TransitionEffect(String displayName, int duration) {
        this.displayName = displayName;
        this.duration = duration;
    }

    public String getDisplayName() {
        return displayName;
    }

    public int getDuration() {
        return duration;
    }
}

