def update_flags_from_data()

in scripts/ui/export.py [0:0]


    def update_flags_from_data(self, flags):
        """Updates flags from the UI elements.

        Args:
            flags (dict[str, _]): Flags corresponding to the tab default binary.
        """
        dlg = self.dlg
        rig_fn = getattr(self, "path_rig_json", "")
        flags["rig"] = rig_fn
        flags["input_root"] = self.parent.path_project
        flags["output_root"] = self.path_video
        flags["log_dir"] = self.path_logs
        flags["width"] = dlg.val_export_options_res.text()
        flags["first"] = dlg.dd_export_data_first.currentText()
        flags["last"] = dlg.dd_export_data_last.currentText()
        flags["force_recompute"] = dlg.cb_export_recompute.isChecked()

        color_type = dlg.dd_export_data_type.currentText()
        if color_type == "background_color":
            flags["color"] = self.path_bg_color
            flags["disparity"] = self.path_bg_disparity
            flags["color_type"] = "background_color"
            flags["disparity_type"] = "background_disp"
        else:
            flags["color"] = self.path_video_color
            flags["disparity"] = self.path_video_disparity
            flags["color_type"] = "color"
            flags["disparity_type"] = "disparity"

        if self.is_farm and self.parent.is_aws:
            flags["master"] = ""
            flags["workers"] = ""
            flags["cloud"] = "aws"

            rig_bn = os.path.basename(flags["rig"])
            flags["input_root"] = self.parent.ui_flags.project_root
            flags["output_root"] = os.path.join(
                self.parent.ui_flags.project_root, config.OUTPUT_ROOT_NAME
            )
            flags["rig"] = os.path.join(
                self.parent.ui_flags.project_root, "rigs", rig_bn
            )
            flags["log_dir"] = os.path.join(flags["output_root"], "logs")

        elif self.is_farm and self.parent.is_lan:
            flags["master"] = self.parent.ui_flags.master
            flags["workers"] = ",".join(dlg.dd_export_farm_workers.checkedItems())
            flags["cloud"] = ""

            flags["username"] = self.parent.ui_flags.username
            flags["password"] = self.parent.ui_flags.password

        else:  # local
            flags["master"] = ""
            flags["workers"] = ""
            flags["cloud"] = ""

        flags["file_type"] = dlg.dd_export_data_file_type.currentText()
        flags["format"] = self.get_format()
        is6dof = flags["format"].startswith("6dof")
        if is6dof:
            flags["format"] = "6dof"
        flags["run_convert_to_binary"] = (
            is6dof and "Meshing" in dlg.dd_export_data_format.currentText()
        )
        flags["run_fusion"] = (
            is6dof and "Striping" in dlg.dd_export_data_format.currentText()
        )
        flags["run_simple_mesh_renderer"] = not is6dof
        flags["color_scale"] = self.get_color_scale(flags["width"], color_type)

        if self.parent.is_aws:
            create_flagfile = os.path.join(
                self.path_flags, self.app_name_to_flagfile[self.app_aws_create]
            )
            if os.path.exists(create_flagfile):
                create_flags = get_flags_from_flagfile(create_flagfile)
                if "cluster_size" in create_flags:
                    dlg.spin_export_farm_num_workers.setValue(
                        int(create_flags["cluster_size"])
                    )
                if "instance_type" in create_flags:
                    dlg.dd_export_farm_ec2.setCurrentText(create_flags["instance_type"])