package com.fimi.app.x8s.controls;

import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.animation.ObjectAnimator;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.ViewStub;
import android.widget.ImageView;
import android.widget.ScrollView;
import android.widget.TextView;
import com.fimi.app.x8s.R;
import com.fimi.app.x8s.config.X8AiConfig;
import com.fimi.app.x8s.controls.aifly.confirm.module.X8AiAerialPhotographConfirmModule;
import com.fimi.app.x8s.controls.aifly.confirm.module.X8AiAutoPhotoConfirmModule;
import com.fimi.app.x8s.controls.aifly.confirm.module.X8AiFixedwingConfirmModule;
import com.fimi.app.x8s.controls.aifly.confirm.module.X8AiFollowConfirmModule;
import com.fimi.app.x8s.controls.aifly.confirm.module.X8AiGravitationConfirmModule;
import com.fimi.app.x8s.controls.aifly.confirm.module.X8AiHeadingLockConfirmModule;
import com.fimi.app.x8s.controls.aifly.confirm.module.X8AiLandingConfirmModule;
import com.fimi.app.x8s.controls.aifly.confirm.module.X8AiLinesConfirmModule;
import com.fimi.app.x8s.controls.aifly.confirm.module.X8AiPoint2PointConfirmModule;
import com.fimi.app.x8s.controls.aifly.confirm.module.X8AiReturnConfirmModule;
import com.fimi.app.x8s.controls.aifly.confirm.module.X8AiSarConfirmModule;
import com.fimi.app.x8s.controls.aifly.confirm.module.X8AiScrewConfirmModule;
import com.fimi.app.x8s.controls.aifly.confirm.module.X8AiSurroundToPointConfirmModule;
import com.fimi.app.x8s.controls.aifly.confirm.module.X8AiTakeoffConfirmModule;
import com.fimi.app.x8s.controls.aifly.confirm.module.X8AiTtipodConfirmModule;
import com.fimi.app.x8s.enums.X8AiFlyMenuEnum;
import com.fimi.app.x8s.interfaces.AbsX8MenuBoxControllers;
import com.fimi.app.x8s.interfaces.IX8AiFlyListener;
import com.fimi.app.x8s.ui.activity.X8sMainActivity;
import com.fimi.kernel.dataparser.usb.CmdResult;
import com.fimi.kernel.dataparser.usb.UiCallBackListener;
import com.fimi.x8sdk.controller.FcCtrlManager;
import com.fimi.x8sdk.controller.FcManager;
import com.fimi.x8sdk.dataparser.AutoFcHeart;
import com.fimi.x8sdk.dataparser.AutoFcSportState;
import com.fimi.x8sdk.modulestate.DroneState;
import com.fimi.x8sdk.modulestate.StateManager;
import com.fimi.x8sdk.modulestate.X8CameraSettings;

public class X8MainAiFlyController extends AbsX8MenuBoxControllers implements OnClickListener {
    private X8sMainActivity activity;
    private View aiFlyBlank;
    private View confirmContent;
    private View contentView;
    FcManager fcManager;
    private ImageView imgAiAerialPhotograph;
    private ImageView imgAiAutoPhoto;
    private ImageView imgAiFixedwing;
    private ImageView imgAiFollow;
    private ImageView imgAiFollowToHostpot;
    private ImageView imgAiHeadingLock;
    private ImageView imgAiPointToPoint;
    private ImageView imgAiReturnHome;
    private ImageView imgAiRout;
    private ImageView imgAiSar;
    private ImageView imgAiSrcew;
    private ImageView imgAiSurroundToPoint;
    private ImageView imgAiTakeLandOff;
    private ImageView imgAiTtipod;
    private ImageView imgFlyGravitation;
    private IX8AiFlyListener listener;
    private FcCtrlManager mFcCtrlManager;
    private X8AiAerialPhotographConfirmModule mX8AiAerialPhotographConfirmModule;
    private X8AiAutoPhotoConfirmModule mX8AiAutoPhotoConfirmModule;
    private X8AiFixedwingConfirmModule mX8AiFixedwingConfirmModule;
    private X8AiFollowConfirmModule mX8AiFollowConfirmModule;
    private X8AiGravitationConfirmModule mX8AiGravitationConfirmModule;
    private X8AiHeadingLockConfirmModule mX8AiHeadingLockConfirmModule;
    private X8AiLandingConfirmModule mX8AiLandingConfirmModule;
    private X8AiLinesConfirmModule mX8AiLinesConfirmModule;
    private X8AiPoint2PointConfirmModule mX8AiPoint2PointConfirmModule;
    private X8AiReturnConfirmModule mX8AiReturnConfirmModule;
    private X8AiSarConfirmModule mX8AiSarConfirmModule;
    private X8AiScrewConfirmModule mX8AiScrewComnfirmModule;
    private X8AiSurroundToPointConfirmModule mX8AiSurroundToPointConfirmModule;
    private X8AiTakeoffConfirmModule mX8AiTakeoffConfirmModule;
    private X8AiTtipodConfirmModule mX8AiTtipodConfirmModule;
    private X8AiFlyMenuEnum menuState = X8AiFlyMenuEnum.ALL_ITEMS;
    private View rlAiFly;
    private View rlAiFlyItems;
    private ViewStub stubAiFlyAllItems;
    private ScrollView svAiItems;
    private TextView tvAerialShot;
    private TextView tvAiAutoPhoto;
    private TextView tvAiFollow;
    private TextView tvAiGravitation;
    private TextView tvAiPointToPoint;
    private TextView tvAiReturnHome;
    private TextView tvAiRout;
    private TextView tvAiSar;
    private TextView tvAiScrew;
    private TextView tvAiSurroundToPoint;
    private TextView tvAiTakeLandOff;
    private TextView tvFixedwing;
    private TextView tvHeadLock;
    private TextView tvTripod;

    public X8MainAiFlyController(View rootView) {
        super(rootView);
    }

    public void setX8AiFlyListener(X8sMainActivity activity, IX8AiFlyListener listener) {
        this.listener = listener;
        this.activity = activity;
    }

    public void initViews(View rootView) {
        this.rlAiFly = rootView.findViewById(R.id.x8_rl_main_ai_fly);
        this.aiFlyBlank = rootView.findViewById(R.id.x8_rl_main_ai_fly_blank);
        this.contentView = rootView.findViewById(R.id.rl_main_ai_fly_content);
        this.stubAiFlyAllItems = (ViewStub) rootView.findViewById(R.id.stub_ai_fly_items);
        this.confirmContent = rootView.findViewById(R.id.x8_main_ai_confirm_content);
        this.mX8AiPoint2PointConfirmModule = new X8AiPoint2PointConfirmModule();
        this.mX8AiSurroundToPointConfirmModule = new X8AiSurroundToPointConfirmModule();
        this.mX8AiLinesConfirmModule = new X8AiLinesConfirmModule();
        this.mX8AiAutoPhotoConfirmModule = new X8AiAutoPhotoConfirmModule();
        this.mX8AiFollowConfirmModule = new X8AiFollowConfirmModule();
        this.mX8AiTakeoffConfirmModule = new X8AiTakeoffConfirmModule();
        this.mX8AiLandingConfirmModule = new X8AiLandingConfirmModule();
        this.mX8AiReturnConfirmModule = new X8AiReturnConfirmModule();
        this.mX8AiAerialPhotographConfirmModule = new X8AiAerialPhotographConfirmModule();
        this.mX8AiFixedwingConfirmModule = new X8AiFixedwingConfirmModule();
        this.mX8AiHeadingLockConfirmModule = new X8AiHeadingLockConfirmModule();
        this.mX8AiTtipodConfirmModule = new X8AiTtipodConfirmModule();
        this.mX8AiScrewComnfirmModule = new X8AiScrewConfirmModule();
        this.mX8AiSarConfirmModule = new X8AiSarConfirmModule();
        this.mX8AiGravitationConfirmModule = new X8AiGravitationConfirmModule();
    }

    public void initActions() {
        this.aiFlyBlank.setOnClickListener(this);
    }

    public void defaultVal() {
        if (this.rlAiFlyItems != null && this.isShow) {
            setAllEnabled();
        }
    }

    public void setAllEnabled() {
        this.imgAiTakeLandOff.setEnabled(false);
        this.imgAiTakeLandOff.setBackgroundResource(R.drawable.x8_btn_ai_takeoff_selector);
        this.imgAiReturnHome.setEnabled(false);
        this.imgAiPointToPoint.setEnabled(false);
        this.imgAiRout.setEnabled(false);
        this.imgAiAutoPhoto.setEnabled(false);
        this.imgAiFollow.setEnabled(false);
        this.imgAiFollowToHostpot.setEnabled(false);
        this.imgAiSurroundToPoint.setEnabled(false);
        this.imgFlyGravitation.setEnabled(false);
        this.imgAiTtipod.setEnabled(false);
        this.imgAiAerialPhotograph.setEnabled(false);
        this.imgAiFixedwing.setEnabled(false);
        this.imgAiHeadingLock.setEnabled(false);
        this.imgAiSrcew.setEnabled(false);
        this.imgAiSar.setEnabled(false);
        this.tvAiTakeLandOff.setEnabled(false);
        this.tvAiReturnHome.setEnabled(false);
        this.tvAiRout.setEnabled(false);
        this.tvAiFollow.setEnabled(false);
        this.tvAiSurroundToPoint.setEnabled(false);
        this.tvAiPointToPoint.setEnabled(false);
        this.tvAiAutoPhoto.setEnabled(false);
        this.tvAiScrew.setEnabled(false);
        this.tvAiGravitation.setEnabled(false);
        this.tvAiSar.setEnabled(false);
        this.tvAerialShot.setEnabled(false);
        this.tvTripod.setEnabled(false);
        this.tvHeadLock.setEnabled(false);
        this.tvFixedwing.setEnabled(false);
        defalutNextUi(false);
    }

    public void defalutNextUi(boolean b) {
        switch (this.menuState) {
            case AI_LINE_CONFIRM:
                if (!b) {
                    onCloseConfirmUi();
                    return;
                } else if (this.mX8AiLinesConfirmModule != null) {
                    this.mX8AiLinesConfirmModule.setFcHeart(false, false);
                    return;
                } else {
                    return;
                }
            case AI_LANDING:
                onCloseConfirmUi();
                return;
            case AI_RETURN:
                onCloseConfirmUi();
                return;
            case AI_FOLLOW_CONFIRM:
                onCloseConfirmUi();
                return;
            case AI_POINT2POINT_CONFIRM:
                onCloseConfirmUi();
                return;
            case AI_SURROUNDPOINT_CONFIRM:
                onCloseConfirmUi();
                return;
            case AI_AUTO_PHOTO_CONFIRM:
                onCloseConfirmUi();
                return;
            case AI_FLY_GRAVITATION:
                onCloseConfirmUi();
                return;
            default:
                return;
        }
    }

    public void onClick(View v) {
        int id = v.getId();
        if (id == R.id.img_ai_take_land_off) {
            openTakeOffOrLandingUi();
        } else if (id == R.id.img_ai_return_home) {
            openReturnUi();
        } else if (id == R.id.img_ai_point_to_point) {
            openPoint2PointConfirmContent();
        } else if (id == R.id.img_ai_rout) {
            openLinesUi();
        } else if (id == R.id.img_ai_auto_photo) {
            openAutoPhotoUi();
        } else if (id == R.id.img_ai_follow) {
            openAiFollowConfirmContent();
        } else if (id == R.id.img_ai_follow_to_hostpot) {
        } else {
            if (id == R.id.img_ai_surround_to_point) {
                openSurroundPointUi();
            } else if (id == R.id.x8_rl_main_ai_fly_blank) {
                closeAiUi(true, true);
            } else if (id == R.id.img_ai_tripod) {
                openAiTtipod();
            } else if (id == R.id.img_ai_aerial_photograph) {
                openAiAerialPhotograph();
            } else if (id == R.id.img_ai_fixed_wing) {
                openAiFixedwing();
            } else if (id == R.id.img_ai_heading_lock) {
                openAiHeadingLock();
            } else if (id == R.id.img_ai_screw) {
                openAiScrew();
            } else if (id == R.id.img_ai_sar) {
                openAiSar();
            } else if (id == R.id.img_ai_fly_gravitation) {
                openGravitationUi();
            }
        }
    }

    public void setFcManager(FcManager fcManager, FcCtrlManager mFcCtrlManager) {
        this.fcManager = fcManager;
        this.mFcCtrlManager = mFcCtrlManager;
    }

    public void initAllItems() {
        if (this.menuState == X8AiFlyMenuEnum.ALL_ITEMS) {
            if (this.rlAiFlyItems == null) {
                View view = this.stubAiFlyAllItems.inflate();
                this.rlAiFlyItems = view.findViewById(R.id.x8_rl_main_ai_fly_items);
                this.imgAiTakeLandOff = (ImageView) view.findViewById(R.id.img_ai_take_land_off);
                this.svAiItems = (ScrollView) view.findViewById(R.id.sv_ai_items);
                this.imgAiReturnHome = (ImageView) view.findViewById(R.id.img_ai_return_home);
                this.imgAiPointToPoint = (ImageView) view.findViewById(R.id.img_ai_point_to_point);
                this.imgAiRout = (ImageView) view.findViewById(R.id.img_ai_rout);
                this.imgAiAutoPhoto = (ImageView) view.findViewById(R.id.img_ai_auto_photo);
                this.imgAiFollow = (ImageView) view.findViewById(R.id.img_ai_follow);
                this.imgAiFollowToHostpot = (ImageView) view.findViewById(R.id.img_ai_follow_to_hostpot);
                this.imgAiSurroundToPoint = (ImageView) view.findViewById(R.id.img_ai_surround_to_point);
                this.imgAiTtipod = (ImageView) view.findViewById(R.id.img_ai_tripod);
                this.imgAiAerialPhotograph = (ImageView) view.findViewById(R.id.img_ai_aerial_photograph);
                this.imgAiFixedwing = (ImageView) view.findViewById(R.id.img_ai_fixed_wing);
                this.imgAiHeadingLock = (ImageView) view.findViewById(R.id.img_ai_heading_lock);
                this.imgAiSrcew = (ImageView) view.findViewById(R.id.img_ai_screw);
                this.imgFlyGravitation = (ImageView) view.findViewById(R.id.img_ai_fly_gravitation);
                this.imgAiSar = (ImageView) view.findViewById(R.id.img_ai_sar);
                this.tvAiTakeLandOff = (TextView) view.findViewById(R.id.tv_ai_take_land_off);
                this.tvAiReturnHome = (TextView) view.findViewById(R.id.tv_ai_return_home);
                this.tvAiRout = (TextView) view.findViewById(R.id.tv_ai_rout);
                this.tvAiFollow = (TextView) view.findViewById(R.id.tv_ai_follow);
                this.tvAiSurroundToPoint = (TextView) view.findViewById(R.id.tv_ai_surround_to_point);
                this.tvAiPointToPoint = (TextView) view.findViewById(R.id.tv_ai_point_to_point);
                this.tvAiAutoPhoto = (TextView) view.findViewById(R.id.tv_ai_auto_photo);
                this.tvAiScrew = (TextView) view.findViewById(R.id.tv_ai_screw);
                this.tvAiGravitation = (TextView) view.findViewById(R.id.tv_ai_fly_gravitation);
                this.tvAiSar = (TextView) view.findViewById(R.id.tv_ai_sar);
                this.tvAerialShot = (TextView) view.findViewById(R.id.tv_ai_aerial_photograph);
                this.tvTripod = (TextView) view.findViewById(R.id.tv_ai_tripod);
                this.tvHeadLock = (TextView) view.findViewById(R.id.tv_ai_heading_lock);
                this.tvFixedwing = (TextView) view.findViewById(R.id.tv_ai_fixed_wing);
                this.imgAiTakeLandOff.setOnClickListener(this);
                this.imgAiReturnHome.setOnClickListener(this);
                this.imgAiPointToPoint.setOnClickListener(this);
                this.imgAiAutoPhoto.setOnClickListener(this);
                this.imgAiRout.setOnClickListener(this);
                this.imgAiFollow.setOnClickListener(this);
                this.imgAiFollowToHostpot.setOnClickListener(this);
                this.imgAiSurroundToPoint.setOnClickListener(this);
                this.imgFlyGravitation.setOnClickListener(this);
                this.imgAiTtipod.setOnClickListener(this);
                this.imgAiAerialPhotograph.setOnClickListener(this);
                this.imgAiFixedwing.setOnClickListener(this);
                this.imgAiHeadingLock.setOnClickListener(this);
                this.imgAiSrcew.setOnClickListener(this);
                this.imgAiSar.setOnClickListener(this);
            }
            this.rlAiFlyItems.setVisibility(0);
        }
        if (this.isConect) {
            onFcHeart(null, this.isLowpower);
        } else {
            setAllEnabled();
        }
    }

    public void closeAiUi(boolean isShowOther, boolean isShowRightIcon) {
        this.menuState = X8AiFlyMenuEnum.ALL_ITEMS;
        this.aiFlyBlank.setVisibility(8);
        if (this.isShow) {
            this.isShow = false;
            ObjectAnimator translationRight = ObjectAnimator.ofFloat(this.contentView, "translationX", new float[]{0.0f, (float) this.width});
            translationRight.setDuration(300);
            translationRight.start();
            translationRight.addListener(new AnimatorListenerAdapter() {
                public void onAnimationEnd(Animator animation) {
                    super.onAnimationEnd(animation);
                    X8MainAiFlyController.this.rlAiFly.setVisibility(4);
                    X8MainAiFlyController.this.svAiItems.fullScroll(33);
                    X8MainAiFlyController.this.onCloseConfirmUi();
                }
            });
        }
        this.listener.onCloseAiUi(isShowOther, isShowRightIcon);
    }

    public void getCameraSetting() {
        X8CameraSettings.getSettings(this.activity.getCameraManager());
    }

    public void showAiUi() {
        getCameraSetting();
        getDroneState();
        this.rlAiFly.setVisibility(0);
        this.aiFlyBlank.setVisibility(0);
        initAllItems();
        if (!this.isShow) {
            Log.i("zdy", "showAiUi...........");
            this.isShow = true;
            if (this.width == 0) {
                this.contentView.setAlpha(0.0f);
                this.contentView.post(new Runnable() {
                    public void run() {
                        X8MainAiFlyController.this.contentView.setAlpha(1.0f);
                        X8MainAiFlyController.this.MAX_WIDTH = X8MainAiFlyController.this.rlAiFly.getWidth();
                        X8MainAiFlyController.this.width = X8MainAiFlyController.this.contentView.getWidth();
                        int h = X8MainAiFlyController.this.contentView.getHeight();
                        ObjectAnimator animatorY = ObjectAnimator.ofFloat(X8MainAiFlyController.this.contentView, "translationX", new float[]{(float) X8MainAiFlyController.this.width, 0.0f});
                        animatorY.setDuration(300);
                        animatorY.start();
                    }
                });
                return;
            }
            ObjectAnimator animatorY = ObjectAnimator.ofFloat(this.contentView, "translationX", new float[]{(float) this.width, 0.0f});
            animatorY.setDuration(300);
            animatorY.start();
        }
    }

    public void openAiFollowConfirmContent() {
        this.rlAiFlyItems.setVisibility(4);
        this.confirmContent.setVisibility(0);
        this.mX8AiFollowConfirmModule.init(this.activity, this.confirmContent);
        this.mX8AiFollowConfirmModule.setListener(this);
        this.menuState = X8AiFlyMenuEnum.AI_FOLLOW_CONFIRM;
    }

    public void openPoint2PointConfirmContent() {
        if (X8AiConfig.getInstance().isAiP2PCourse()) {
            this.rlAiFlyItems.setVisibility(4);
            this.confirmContent.setVisibility(0);
            this.mX8AiPoint2PointConfirmModule.init(this.activity, this.confirmContent);
            this.mX8AiPoint2PointConfirmModule.setListener(this);
            this.menuState = X8AiFlyMenuEnum.AI_POINT2POINT_CONFIRM;
            return;
        }
        onPoint2PointConfirmOkClick();
    }

    public void openAiHeadingLock() {
        this.rlAiFlyItems.setVisibility(4);
        this.confirmContent.setVisibility(0);
        this.mX8AiHeadingLockConfirmModule.init(this.activity, this.confirmContent);
        this.mX8AiHeadingLockConfirmModule.setListener(this);
        this.menuState = X8AiFlyMenuEnum.AI_HEADINGLOCK;
    }

    public void onHeadingLockConfirmOkClick() {
        setHeadlockType();
    }

    public void openAiFixedwing() {
        if (X8AiConfig.getInstance().isAiFixedwingCourse()) {
            this.rlAiFlyItems.setVisibility(4);
            this.confirmContent.setVisibility(0);
            this.mX8AiFixedwingConfirmModule.init(this.activity, this.confirmContent);
            this.mX8AiFixedwingConfirmModule.setListener(this);
            this.menuState = X8AiFlyMenuEnum.AI_FIXEDWING;
            return;
        }
        onFixedwingConfirmOkClick();
    }

    public void onFixedwingConfirmOkClick() {
        setFixedwingType();
    }

    public void openAiTtipod() {
        if (X8AiConfig.getInstance().isAiTripodCourse()) {
            this.rlAiFlyItems.setVisibility(4);
            this.confirmContent.setVisibility(0);
            this.mX8AiTtipodConfirmModule.init(this.activity, this.confirmContent);
            this.mX8AiTtipodConfirmModule.setListener(this);
            this.menuState = X8AiFlyMenuEnum.AI_TTIPOD;
            return;
        }
        onTtipodConfirmOkClick();
    }

    public void onTtipodConfirmOkClick() {
        setTripodType();
    }

    public void openAiScrew() {
        if (X8AiConfig.getInstance().isAiScrew()) {
            this.rlAiFlyItems.setVisibility(4);
            this.confirmContent.setVisibility(0);
            this.mX8AiScrewComnfirmModule.init(this.activity, this.confirmContent);
            this.mX8AiScrewComnfirmModule.setListener(this);
            this.menuState = X8AiFlyMenuEnum.AI_SCREW;
            return;
        }
        onScrewConfirmOkClick();
    }

    public void onScrewConfirmOkClick() {
        this.listener.onAiScrewConfimCick();
        closeAiUi(false, false);
    }

    public void openAiSar() {
        if (X8AiConfig.getInstance().isAiSar()) {
            this.rlAiFlyItems.setVisibility(4);
            this.confirmContent.setVisibility(0);
            this.mX8AiSarConfirmModule.init(this.activity, this.confirmContent);
            this.mX8AiSarConfirmModule.setListener(this);
            this.menuState = X8AiFlyMenuEnum.AI_SAR;
            return;
        }
        onSarConfirmOkClick();
    }

    public void onSarConfirmOkClick() {
        this.listener.onAiSarConfimClick();
        closeAiUi(true, false);
    }

    public void openAiAerialPhotograph() {
        if (X8AiConfig.getInstance().isAiAerialPhotographCourse()) {
            this.rlAiFlyItems.setVisibility(4);
            this.confirmContent.setVisibility(0);
            this.mX8AiAerialPhotographConfirmModule.init(this.activity, this.confirmContent);
            this.mX8AiAerialPhotographConfirmModule.setListener(this);
            this.menuState = X8AiFlyMenuEnum.AI_AERIALPHOTOGRAPH;
            return;
        }
        onAerialPhotographConfirmOkClick();
    }

    public void onAerialPhotographConfirmOkClick() {
        setAerailShotType();
    }

    public void openTakeOffOrLandingUi() {
        if (StateManager.getInstance().getX8Drone().isInSky()) {
            openLandingUi();
        } else {
            openTakeoffUi();
        }
    }

    public void onFcHeart(AutoFcHeart fcHeart, boolean isLowPow) {
        boolean takeoffLanding;
        int ctrtype;
        DroneState state = StateManager.getInstance().getX8Drone();
        if (state.isInSky() && this.rlAiFlyItems != null) {
            this.tvAiTakeLandOff.setText(R.string.x8_ai_fly_land_off);
            this.imgAiTakeLandOff.setBackgroundResource(R.drawable.x8_btn_ai_landing);
            this.imgAiReturnHome.setEnabled(true);
            this.tvAiReturnHome.setEnabled(true);
            boolean b = false;
            takeoffLanding = false;
            if (StateManager.getInstance().getX8Drone().isPilotModePrimary()) {
                b = false;
                takeoffLanding = true;
            } else {
                ctrtype = StateManager.getInstance().getX8Drone().getCtrlType();
                if (ctrtype == 1) {
                    b = false;
                    takeoffLanding = false;
                } else if (ctrtype == 3) {
                    b = false;
                    takeoffLanding = true;
                } else if (ctrtype == 2) {
                    b = true;
                    takeoffLanding = true;
                }
            }
            this.imgAiTakeLandOff.setEnabled(takeoffLanding);
            this.imgAiPointToPoint.setEnabled(b);
            this.imgAiRout.setEnabled(b);
            this.imgAiAutoPhoto.setEnabled(b);
            this.imgAiFollow.setEnabled(b);
            this.imgAiFollowToHostpot.setEnabled(b);
            this.imgAiSurroundToPoint.setEnabled(b);
            this.imgFlyGravitation.setEnabled(b);
            this.imgAiTtipod.setEnabled(b);
            this.imgAiAerialPhotograph.setEnabled(b);
            this.imgAiFixedwing.setEnabled(b);
            this.imgAiHeadingLock.setEnabled(b);
            this.imgAiSrcew.setEnabled(b);
            this.imgAiSar.setEnabled(b);
            this.tvAiTakeLandOff.setEnabled(takeoffLanding);
            this.tvAiRout.setEnabled(b);
            this.tvAiFollow.setEnabled(b);
            this.tvAiSurroundToPoint.setEnabled(b);
            this.tvAiPointToPoint.setEnabled(b);
            this.tvAiAutoPhoto.setEnabled(b);
            this.tvAiScrew.setEnabled(b);
            this.tvAiGravitation.setEnabled(b);
            this.tvAiSar.setEnabled(b);
            this.tvAerialShot.setEnabled(b);
            this.tvTripod.setEnabled(b);
            this.tvHeadLock.setEnabled(b);
            this.tvFixedwing.setEnabled(b);
            onFcHeartChange(b, isLowPow);
        }
        if (state.isOnGround() && this.rlAiFlyItems != null) {
            if (state.isCanFly()) {
                this.tvAiTakeLandOff.setText(R.string.x8_ai_fly_take_off);
                this.imgAiTakeLandOff.setBackgroundResource(R.drawable.x8_btn_ai_takeoff_selector);
                ctrtype = StateManager.getInstance().getX8Drone().getCtrlType();
                takeoffLanding = false;
                if (ctrtype == 1) {
                    takeoffLanding = false;
                } else if (ctrtype == 3) {
                    takeoffLanding = true;
                } else if (ctrtype == 2) {
                    takeoffLanding = true;
                }
                this.imgAiTakeLandOff.setEnabled(takeoffLanding);
                this.tvAiTakeLandOff.setEnabled(takeoffLanding);
                defalutNextUi(true);
            } else {
                this.tvAiTakeLandOff.setEnabled(false);
                this.imgAiTakeLandOff.setEnabled(false);
            }
            onFcHeartChange(false, isLowPow);
            this.imgAiReturnHome.setEnabled(false);
            this.tvAiReturnHome.setEnabled(false);
            takeoffLanding = false;
            ctrtype = StateManager.getInstance().getX8Drone().getCtrlType();
            if (ctrtype == 1) {
                takeoffLanding = false;
            } else if (ctrtype == 3) {
                takeoffLanding = false;
            } else if (ctrtype == 2) {
                takeoffLanding = true;
            }
            this.imgAiRout.setEnabled(takeoffLanding);
            this.imgAiPointToPoint.setEnabled(false);
            this.imgAiAutoPhoto.setEnabled(false);
            this.imgAiFollow.setEnabled(false);
            this.imgAiFollowToHostpot.setEnabled(false);
            this.imgAiSurroundToPoint.setEnabled(false);
            this.imgFlyGravitation.setEnabled(false);
            this.imgAiTtipod.setEnabled(false);
            this.imgAiAerialPhotograph.setEnabled(false);
            this.imgAiFixedwing.setEnabled(false);
            this.imgAiHeadingLock.setEnabled(false);
            this.imgAiSrcew.setEnabled(false);
            this.imgAiSar.setEnabled(false);
            this.tvAiRout.setEnabled(takeoffLanding);
            this.tvAiFollow.setEnabled(false);
            this.tvAiSurroundToPoint.setEnabled(false);
            this.tvAiPointToPoint.setEnabled(false);
            this.tvAiAutoPhoto.setEnabled(false);
            this.tvAiScrew.setEnabled(false);
            this.tvAiGravitation.setEnabled(false);
            this.tvAiSar.setEnabled(false);
            this.tvAerialShot.setEnabled(false);
            this.tvTripod.setEnabled(false);
            this.tvHeadLock.setEnabled(false);
            this.tvFixedwing.setEnabled(false);
        }
    }

    public void onFcHeartChange(boolean isInSky, boolean isLowPow) {
        switch (this.menuState) {
            case AI_LINE_CONFIRM:
                this.mX8AiLinesConfirmModule.setFcHeart(isInSky, isLowPow);
                return;
            case AI_TAKE_OFF:
                this.mX8AiTakeoffConfirmModule.setFcHeart(isInSky, isLowPow);
                return;
            case AI_LANDING:
                this.mX8AiLandingConfirmModule.setFcHeart(isInSky, isLowPow);
                return;
            case AI_RETURN:
                this.mX8AiReturnConfirmModule.setFcHeart(isInSky, isLowPow);
                return;
            case AI_FOLLOW_CONFIRM:
                this.mX8AiFollowConfirmModule.setFcHeart(isInSky, isLowPow);
                return;
            case AI_POINT2POINT_CONFIRM:
                this.mX8AiPoint2PointConfirmModule.setFcHeart(isInSky, isLowPow);
                return;
            case AI_SURROUNDPOINT_CONFIRM:
                this.mX8AiSurroundToPointConfirmModule.setFcHeart(isInSky, isLowPow);
                return;
            case AI_AUTO_PHOTO_CONFIRM:
                this.mX8AiAutoPhotoConfirmModule.setFcHeart(isInSky, isLowPow);
                return;
            case AI_FLY_GRAVITATION:
                this.mX8AiGravitationConfirmModule.setFcHeart(isInSky, isLowPow);
                return;
            case AI_FIXEDWING:
                this.mX8AiFixedwingConfirmModule.setFcHeart(isInSky, isLowPow);
                return;
            default:
                return;
        }
    }

    public void onTakeOffOrLandingClick() {
        if (this.fcManager == null) {
            return;
        }
        if (StateManager.getInstance().getX8Drone().isInSky()) {
            this.fcManager.land(new UiCallBackListener() {
                public void onComplete(CmdResult cmdResult, Object o) {
                    if (cmdResult.isSuccess()) {
                        X8MainAiFlyController.this.closeAiUi(true, false);
                    }
                }
            });
        } else {
            this.fcManager.takeOff(new UiCallBackListener() {
                public void onComplete(CmdResult cmdResult, Object o) {
                    if (cmdResult.isSuccess()) {
                        X8MainAiFlyController.this.closeAiUi(true, false);
                    }
                }
            });
        }
    }

    public void onFollowConfirmOkClick(int type) {
        setAiVcOpen(type);
    }

    public void setAiVcOpen(final int type) {
        this.fcManager.setAiVcOpen(new UiCallBackListener() {
            public void onComplete(CmdResult cmdResult, Object o) {
                if (cmdResult.isSuccess()) {
                    X8MainAiFlyController.this.listener.onAiFollowConfirmClick(type);
                    X8MainAiFlyController.this.closeAiUi(false, false);
                }
            }
        });
    }

    public void onPoint2PointConfirmOkClick() {
        this.listener.onAiPoint2PointConfirmClick();
        closeAiUi(false, false);
    }

    public void openSurroundPointUi() {
        if (X8AiConfig.getInstance().isAiSurroundCourse()) {
            this.rlAiFlyItems.setVisibility(4);
            this.confirmContent.setVisibility(0);
            this.mX8AiSurroundToPointConfirmModule.init(this.activity, this.confirmContent);
            this.mX8AiSurroundToPointConfirmModule.setListener(this);
            this.menuState = X8AiFlyMenuEnum.AI_SURROUNDPOINT_CONFIRM;
            return;
        }
        onSurroundPointConfirmClick();
    }

    public void openGravitationUi() {
        if (X8AiConfig.getInstance().isAiFlyGravitation()) {
            this.rlAiFlyItems.setVisibility(4);
            this.confirmContent.setVisibility(0);
            this.mX8AiGravitationConfirmModule.init(this.activity, this.confirmContent);
            this.mX8AiGravitationConfirmModule.setListener(this);
            this.menuState = X8AiFlyMenuEnum.AI_FLY_GRAVITATION;
            return;
        }
        onGravitationConfirmOkClick();
    }

    public void onGravitationConfirmOkClick() {
        this.listener.onAiGravitationConfimClick();
        closeAiUi(false, false);
    }

    public void openLinesUi() {
        this.rlAiFlyItems.setVisibility(4);
        this.confirmContent.setVisibility(0);
        this.mX8AiLinesConfirmModule.init(this.activity, this.confirmContent);
        this.mX8AiLinesConfirmModule.setListener(this);
        this.menuState = X8AiFlyMenuEnum.AI_LINE_CONFIRM;
    }

    public void openAutoPhotoUi() {
        this.rlAiFlyItems.setVisibility(4);
        this.confirmContent.setVisibility(0);
        this.mX8AiAutoPhotoConfirmModule.init(this.activity, this.confirmContent);
        this.mX8AiAutoPhotoConfirmModule.setListener(this);
        this.menuState = X8AiFlyMenuEnum.AI_AUTO_PHOTO_CONFIRM;
    }

    public void openTakeoffUi() {
        this.rlAiFlyItems.setVisibility(4);
        this.confirmContent.setVisibility(0);
        this.mX8AiTakeoffConfirmModule.init(this.activity, this.confirmContent);
        this.mX8AiTakeoffConfirmModule.setListener(this);
        this.menuState = X8AiFlyMenuEnum.AI_TAKE_OFF;
    }

    public void openLandingUi() {
        this.rlAiFlyItems.setVisibility(4);
        this.confirmContent.setVisibility(0);
        this.mX8AiLandingConfirmModule.init(this.activity, this.confirmContent);
        this.mX8AiLandingConfirmModule.setListener(this);
        this.menuState = X8AiFlyMenuEnum.AI_LANDING;
    }

    public void openReturnUi() {
        this.rlAiFlyItems.setVisibility(4);
        this.confirmContent.setVisibility(0);
        this.mX8AiReturnConfirmModule.init(this.activity, this.confirmContent);
        this.mX8AiReturnConfirmModule.setListener(this, this.mFcCtrlManager);
        this.menuState = X8AiFlyMenuEnum.AI_RETURN;
    }

    public void onCloseConfirmUi() {
        this.confirmContent.setVisibility(8);
        ((ViewGroup) this.confirmContent).removeAllViews();
        this.rlAiFlyItems.setVisibility(0);
        this.menuState = X8AiFlyMenuEnum.ALL_ITEMS;
    }

    public void onSurroundPointConfirmClick() {
        this.listener.onAiSurroundPointConfirmClick();
        closeAiUi(false, false);
    }

    public void onAutoPhotoConfirmOk(int type) {
        setAiVcOpenForAutoPhoto(type);
    }

    public void setAiVcOpenForAutoPhoto(final int type) {
        this.fcManager.setAiVcOpen(new UiCallBackListener() {
            public void onComplete(CmdResult cmdResult, Object o) {
                if (cmdResult.isSuccess()) {
                    X8MainAiFlyController.this.listener.onAiAutoPhotoConfirmClick(type);
                    X8MainAiFlyController.this.closeAiUi(false, false);
                }
            }
        });
    }

    public void onLinesConfirmOkClick(int mode) {
        this.listener.onAiLineConfirmClick(mode);
        closeAiUi(false, false);
    }

    public void onLinesConfirmOkByHistory(long lineId, int type) {
        this.listener.onAiLineConfirmClickByHistory(2, lineId, type);
        closeAiUi(false, false);
    }

    public void onRetureHomeClick() {
        this.fcManager.setAiRetureHome(new UiCallBackListener() {
            public void onComplete(CmdResult cmdResult, Object o) {
                if (cmdResult.isSuccess()) {
                    X8MainAiFlyController.this.closeAiUi(true, false);
                }
            }
        });
    }

    public void showSportState(AutoFcSportState state) {
        if (this.menuState == X8AiFlyMenuEnum.AI_RETURN) {
            this.mX8AiReturnConfirmModule.showSportState(state);
        } else if (this.menuState == X8AiFlyMenuEnum.AI_HEADINGLOCK) {
            this.mX8AiHeadingLockConfirmModule.showSportState(state);
        } else if (this.menuState == X8AiFlyMenuEnum.AI_FIXEDWING) {
            this.mX8AiFixedwingConfirmModule.showSportState(state);
        }
    }

    public void setFixedwingType() {
        this.mFcCtrlManager.setEnableFixwing(new UiCallBackListener() {
            public void onComplete(CmdResult cmdResult, Object o) {
                if (cmdResult.isSuccess()) {
                    X8MainAiFlyController.this.closeAiUi(true, false);
                }
            }
        });
    }

    public void setHeadlockType() {
        this.mFcCtrlManager.setEnableHeadingFree(new UiCallBackListener() {
            public void onComplete(CmdResult cmdResult, Object o) {
                if (cmdResult.isSuccess()) {
                    X8MainAiFlyController.this.closeAiUi(true, false);
                }
            }
        });
    }

    public void setTripodType() {
        this.mFcCtrlManager.setEnableTripod(1, new UiCallBackListener() {
            public void onComplete(CmdResult cmdResult, Object o) {
                if (cmdResult.isSuccess()) {
                    X8MainAiFlyController.this.closeAiUi(true, false);
                }
            }
        });
    }

    public void setAerailShotType() {
        this.mFcCtrlManager.setEnableAerailShot(1, new UiCallBackListener() {
            public void onComplete(CmdResult cmdResult, Object o) {
                if (cmdResult.isSuccess()) {
                    X8MainAiFlyController.this.closeAiUi(true, false);
                }
            }
        });
    }
}