"""About dialog.""" # This file is part of ISO Scalpel. # Copyright (C) 2025 Jeremy Anderson # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, see # or write to the Free Software Foundation, Inc., 51 Franklin Street, # Fifth Floor, Boston, MA 02110-1301 USA. from __future__ import annotations from PySide6.QtCore import Qt from PySide6.QtWidgets import QDialog, QHBoxLayout, QLabel, QPushButton, QVBoxLayout from .. import __app_name__, __author__, __author_url__, __tagline__, __version__ class AboutDialog(QDialog): def __init__(self, parent=None): super().__init__(parent) self.setWindowTitle(f"About {__app_name__}") self.setMinimumWidth(440) title = QLabel(f"

{__app_name__}

") title.setTextFormat(Qt.RichText) ver = QLabel(f"Version {__version__} — {__tagline__}") ver.setTextFormat(Qt.RichText) body = QLabel( "

A disc-image editor built with PySide6 (Qt 6) and " "pycdlib.

" "

Supported features:

" "" f"

Copyright © 2025 {__author__}
" f"{__author_url__}

" "

Licensed under the GNU GPL v2.
" "ISO Scalpel is an independent project; no source code from any " "other ISO editing tool was used.

" ) body.setTextFormat(Qt.RichText) body.setWordWrap(True) body.setOpenExternalLinks(True) close = QPushButton("Close") close.clicked.connect(self.accept) layout = QVBoxLayout(self) layout.addWidget(title) layout.addWidget(ver) layout.addWidget(body) layout.addStretch(1) row = QHBoxLayout() row.addStretch(1) row.addWidget(close) layout.addLayout(row)