import sys from PySide6.QtWidgets import ( QApplication, QMainWindow, QWidget, QVBoxLayout, QHBoxLayout, QPushButton, QLabel, QSplitter, QStackedWidget, QLineEdit ) from PySide6.QtCore import Qt, Slot from PySide6.QtGui import QPalette, QColor from ui.widgets.placeholder_widget import PlaceholderWidget from ui.widgets.color_list_widget import ColorListWidget from ui.widgets.thumbnail_list_widget import ThumbnailListWidget class MainWindow(QMainWindow): def __init__(self): super().__init__() self.setWindowTitle("Mayo Stain Helper") self.resize(1920, 1080) self.setup_ui() def setup_ui(self): # Central widget and main layout central_widget = QWidget() main_layout = QHBoxLayout(central_widget) self.setCentralWidget(central_widget) self.preview_widget = QSplitter(Qt.Orientation.Vertical) self.preview_widget.addWidget(PlaceholderWidget("Camera View", "#750466")) self.preview_widget.addWidget(PlaceholderWidget("Image View", "#007981")) self.thumbnail_widget = ThumbnailListWidget() self.thumbnail_widget.setFixedWidth(200) self.control_widget = QWidget() self.control_widget.setFixedWidth(300) main_layout.addWidget(self.preview_widget) main_layout.addWidget(self.thumbnail_widget) main_layout.addWidget(self.control_widget) control_layout = QVBoxLayout(self.control_widget) control_layout.setContentsMargins(0, 0, 0, 0) histogram_view = PlaceholderWidget("Histogram View", "#FF5733") histogram_view.setFixedHeight(200) control_layout.addWidget(histogram_view) self.color_list_widget = ColorListWidget(self.control_widget) control_layout.addWidget(self.color_list_widget) self.thumbnail_widget.add_thumbnail("media/red/bolton_01092025.jpg", "model 1") self.thumbnail_widget.add_thumbnail("media/red/bolton_01092025.jpg", "model 2") self.thumbnail_widget.add_thumbnail("media/red/bolton_01092025.jpg", "model 3") self.thumbnail_widget.add_thumbnail("empty", "model 4") record_button = QPushButton("Nagraj Wideo") record_button.setMinimumHeight(40) record_button.setStyleSheet("font-size: 12pt;") control_layout.addWidget(record_button) photo_button = QPushButton("Zrób zdjęcie") photo_button.setMinimumHeight(40) photo_button.setStyleSheet("font-size: 12pt;") control_layout.addWidget(photo_button)