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 from ui.widgets.split_view_widget import SplitView from ui.view_settings_dialog import ViewSettingsDialog 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 = SplitView() 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) self.view_settings_button = QPushButton("Ustawienia widoku") self.view_settings_button.setMinimumHeight(40) self.view_settings_button.setStyleSheet("font-size: 12pt;") self.view_settings_dialog = ViewSettingsDialog(self) self.view_settings_button.clicked.connect(self.view_settings_dialog.show) self.color_list_widget = ColorListWidget(self.control_widget) self.record_button = QPushButton("Nagraj Wideo") self.record_button.setMinimumHeight(40) self.record_button.setStyleSheet("font-size: 12pt;") self.photo_button = QPushButton("Zrób zdjęcie") self.photo_button.setMinimumHeight(40) self.photo_button.setStyleSheet("font-size: 12pt;") control_layout.addWidget(histogram_view) control_layout.addWidget(self.view_settings_button) control_layout.addWidget(self.color_list_widget) control_layout.addWidget(self.record_button) control_layout.addWidget(self.photo_button)