Files
MayoStainHelper/ui/main_window.py

67 lines
2.2 KiB
Python

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)
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)