Initial commit
Dieser Commit ist enthalten in:
68
views/about_dialog.py
Normale Datei
68
views/about_dialog.py
Normale Datei
@ -0,0 +1,68 @@
|
||||
from PyQt5.QtWidgets import QDialog, QVBoxLayout, QLabel, QPushButton
|
||||
from PyQt5.QtCore import Qt
|
||||
|
||||
from updates.version import get_version
|
||||
|
||||
|
||||
class AboutDialog(QDialog):
|
||||
"""Dialog that shows information about the application."""
|
||||
|
||||
def __init__(self, language_manager=None, parent=None):
|
||||
super().__init__(parent)
|
||||
# Remove the standard "?" help button that appears on some platforms
|
||||
self.setWindowFlags(self.windowFlags() & ~Qt.WindowContextHelpButtonHint)
|
||||
self.language_manager = language_manager
|
||||
self._setup_ui()
|
||||
if self.language_manager:
|
||||
self.language_manager.language_changed.connect(self.update_texts)
|
||||
self.update_texts()
|
||||
|
||||
def _setup_ui(self):
|
||||
self.setWindowTitle("About")
|
||||
layout = QVBoxLayout(self)
|
||||
|
||||
self.info_label = QLabel()
|
||||
self.info_label.setAlignment(Qt.AlignCenter)
|
||||
self.info_label.setWordWrap(True)
|
||||
layout.addWidget(self.info_label)
|
||||
|
||||
self.close_button = QPushButton("OK")
|
||||
self.close_button.clicked.connect(self.accept)
|
||||
layout.addWidget(self.close_button, alignment=Qt.AlignCenter)
|
||||
|
||||
def update_texts(self):
|
||||
version_text = (
|
||||
self.language_manager.get_text("main.version", f"Version {get_version()}")
|
||||
if self.language_manager
|
||||
else f"Version {get_version()}"
|
||||
)
|
||||
lm = self.language_manager
|
||||
title = "Social Media Account Generator" if not lm else lm.get_text("main.title", "Social Media Account Generator")
|
||||
support = (
|
||||
lm.get_text(
|
||||
"about_dialog.support",
|
||||
"Für Support kontaktieren Sie uns unter: support@example.com",
|
||||
)
|
||||
if lm
|
||||
else "Für Support kontaktieren Sie uns unter: support@example.com"
|
||||
)
|
||||
license_text = (
|
||||
lm.get_text(
|
||||
"about_dialog.license",
|
||||
"Diese Software ist lizenzpflichtig und darf nur mit gültiger Lizenz verwendet werden.",
|
||||
)
|
||||
if lm
|
||||
else "Diese Software ist lizenzpflichtig und darf nur mit gültiger Lizenz verwendet werden."
|
||||
)
|
||||
lines = [
|
||||
f"<h1>{title}</h1>",
|
||||
f"<p>{version_text}</p>",
|
||||
"<p>© 2025 Chimaira</p>",
|
||||
f"<p>{support}</p>",
|
||||
f"<p>{license_text}</p>",
|
||||
]
|
||||
self.info_label.setText("".join(lines))
|
||||
if lm:
|
||||
self.setWindowTitle(lm.get_text("menu.about", "Über"))
|
||||
self.close_button.setText(lm.get_text("buttons.ok", "OK"))
|
||||
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren