def _setup_patch_generation_widgets()

in src/open_vp_cal/widgets/project_settings_widget.py [0:0]


    def _setup_patch_generation_widgets(self, main_layout: QVBoxLayout) -> None:
        """ Sets up the widgets for the patch generation section

        Args:
            main_layout: The main layout of the widget
        """
        self.output_folder = QLineEdit()
        self.output_folder_button = QPushButton("Browse")
        output_folder_layout = QHBoxLayout()
        output_folder_layout.addWidget(QLabel("Output Folder:"))
        output_folder_layout.addWidget(self.output_folder)
        output_folder_layout.addWidget(self.output_folder_button)
        main_layout.addLayout(output_folder_layout)

        self.export_lut_for_aces_cct = QCheckBox()
        self.export_lut_for_aces_cct_in_target_out = QCheckBox()
        aces_cct_layout = QFormLayout()
        aces_cct_layout.addRow(QLabel("Export LUT For ACEScct:"), self.export_lut_for_aces_cct)
        aces_cct_layout.addRow(QLabel("Export LUT For ACEScct In/Target Out:"),
                               self.export_lut_for_aces_cct_in_target_out)
        main_layout.addLayout(aces_cct_layout)

        self.reference_gamut = QComboBox()
        reference_gamut_layout = QFormLayout()
        reference_gamut_layout.addRow(QLabel("Reference Gamut:"), self.reference_gamut)
        main_layout.addLayout(reference_gamut_layout)

        self.file_format = QComboBox()
        self.resolution_width = QSpinBox()
        self.resolution_height = QSpinBox()
        self.frames_per_patch = QSpinBox()
        self.frame_rate = QComboBox()

        custom_logo_layout = QHBoxLayout()
        self.custom_logo_path = QLineEdit()
        self.custom_logo_button = QPushButton("Browse")
        custom_logo_layout.addWidget(self.custom_logo_path)
        custom_logo_layout.addWidget(self.custom_logo_button)

        patch_generation_group = QGroupBox("Patch Generation")
        patch_generation_layout = QFormLayout()
        patch_generation_layout.addRow(QLabel("File Format:"), self.file_format)
        patch_generation_layout.addRow(QLabel("Resolution: Width:"), self.resolution_width)
        patch_generation_layout.addRow(QLabel("Resolution: Height:"), self.resolution_height)
        patch_generation_layout.addRow(QLabel("Frames Per Patch:"), self.frames_per_patch)
        patch_generation_layout.addRow(QLabel("Frame Rate:"), self.frame_rate)
        patch_generation_layout.addRow(QLabel("Custom Logo:"), custom_logo_layout)
        patch_generation_group.setLayout(patch_generation_layout)

        main_layout.addWidget(patch_generation_group)