Files
duck-preview/app/main.py

42 lines
1.0 KiB
Python

"""Application entry point."""
from __future__ import annotations
import sys
from datetime import datetime
from PySide6.QtCore import Qt
from PySide6.QtWidgets import QApplication
from app.config import APP_NAME, LOG_DIR
from app.logging_setup import setup_logging
def main() -> None:
session_id = datetime.now().strftime("%Y-%m-%d_%H-%M-%S")
log_path = setup_logging(LOG_DIR, session_id)
# Import after logging is ready so module-level loggers work correctly
import logging # noqa: PLC0415
from app.ui.main_window import MainWindow # noqa: PLC0415
logger = logging.getLogger(__name__)
logger.info("Application starting (session: %s)", session_id)
app = QApplication(sys.argv)
app.setApplicationName(APP_NAME)
app.setHighDpiScaleFactorRoundingPolicy(
Qt.HighDpiScaleFactorRoundingPolicy.PassThrough
)
window = MainWindow(log_path=log_path)
window.show()
logger.info("Application shutting down")
sys.exit(app.exec())
if __name__ == "__main__":
main()