in src/open_vp_cal/widgets/project_settings_widget.py [0:0]
def __init__(self, title: str = "Custom Gamut from NPM Matrix", parent=None):
"""
Args:
title (str, optional): Window title. Defaults to "Matrix".
parent (QWidget, optional): Parent widget. Defaults to None.
"""
super().__init__(parent)
self.setWindowTitle(title)
self.main_layout = QVBoxLayout()
self.paste_icon = QPixmap(ResourceLoader.copy_icon())
self.copy_button = QPushButton()
self.copy_button.setIcon(QIcon(self.paste_icon))
self.copy_button.clicked.connect(self.paste_matrix_from_clipboard)
self.copy_format_combo = QComboBox()
self.copy_format_combo.addItem(constants.CopyFormats.PYTHON)
self.copy_format_combo.addItem(constants.CopyFormats.CSV)
self.main_layout.addWidget(QLabel("Specify a NMP Matrix from RGB to CIE XYZ. eg. Camera RGB to XYZ."))
self.custom_name_edit = QLineEdit()
self.custom_name_edit.setText("")
self.main_layout.addWidget(QLabel("Custom Name:"))
self.main_layout.addWidget(self.custom_name_edit)
self.grid_layout = QGridLayout()
self.main_layout.addLayout(self.grid_layout)
self.setLayout(self.main_layout)
self.matrix_widgets = [[QDoubleSpinBox() for _ in range(3)] for _ in range(3)]
for i in range(3):
for j in range(3):
spin_box = self.matrix_widgets[i][j]
spin_box.setMinimum(-100)
spin_box.setDecimals(6)
spin_box.setMaximum(100)
spin_box.setSingleStep(0.01)
self.grid_layout.addWidget(spin_box, i, j)
button_box = QDialogButtonBox(QDialogButtonBox.Ok | QDialogButtonBox.Cancel)
button_box.accepted.connect(self.accept)
button_box.rejected.connect(self.reject)
self.main_layout.addWidget(self.copy_format_combo)
self.main_layout.addWidget(self.copy_button)
self.main_layout.addWidget(button_box)