feature: add changelog to about dialog

This commit is contained in:
2025-03-24 20:36:18 +01:00
parent 8ce0c1bf9e
commit c19cdf6f41
4 changed files with 43 additions and 2 deletions

View File

@@ -22,8 +22,8 @@ class AboutDialog(QDialog):
super(AboutDialog, self).__init__(parent)
self.setWindowTitle(_("About KrowLog"))
self.setModal(True)
self.setMinimumWidth(650)
self.setFixedHeight(300)
self.setMinimumWidth(850)
self.setFixedHeight(400)
self.layout = QVBoxLayout(self)
@@ -50,6 +50,7 @@ class AboutDialog(QDialog):
tabs.addTab(self._about(), _("About"))
tabs.addTab(self._libraries(), _("Libraries"))
tabs.addTab(self._license(), _("License"))
tabs.addTab(self._changelog(), _("Changelog"))
self.layout.addWidget(tabs)
@@ -106,3 +107,25 @@ class AboutDialog(QDialog):
panel.setBackgroundRole(QPalette.ColorRole.Light)
result.layout.addWidget(panel)
return result
def _changelog(self) -> QWidget:
with open(constants.changelog_file, 'r') as file:
text = file.read()
result = QWidget()
result.layout = QVBoxLayout(result)
result.layout.setContentsMargins(0, 0, 0, 0)
result.setSizePolicy(QSizePolicy.Policy.MinimumExpanding, QSizePolicy.Policy.MinimumExpanding)
label = Label(text)
label.setFont(QFont("Monospace"))
label.setSizePolicy(QSizePolicy.Policy.MinimumExpanding, QSizePolicy.Policy.MinimumExpanding)
panel = QScrollArea(result)
panel.setContentsMargins(0, 0, 0, 0)
panel.setViewportMargins(0, 0, 0, 0)
panel.setSizePolicy(QSizePolicy.Policy.MinimumExpanding, QSizePolicy.Policy.MinimumExpanding)
panel.setWidget(label)
panel.setBackgroundRole(QPalette.ColorRole.Light)
result.layout.addWidget(panel)
return result