[ui] Add Meshroom's changelog model

The changelog is added as a model. Although it is meant to be displayed
with the licenses for Meshroom and AliceVision, the changelog model is
provided apart from the licenses' and then concatenated with it so they
are displayed together.
This commit is contained in:
Candice Bentéjac 2023-03-24 16:23:13 +01:00
parent 7a4ebc8751
commit 91bdddfaf8
2 changed files with 20 additions and 2 deletions

View file

@ -416,6 +416,23 @@ class MeshroomApp(QApplication):
systemInfo = Property(QJsonValue, _systemInfo, constant=True)
def _changelogModel(self):
"""
Get the complete changelog for the application.
Model provides:
title: the name of the changelog
localUrl: the local path to CHANGES.md
onlineUrl: the remote path to CHANGES.md
"""
rootDir = os.environ.get("MESHROOM_INSTALL_DIR", os.getcwd())
return [
{
"title": "Changelog",
"localUrl": os.path.join(rootDir, "CHANGES.md"),
"onlineUrl": "https://raw.githubusercontent.com/alicevision/meshroom/develop/CHANGES.md"
}
]
def _licensesModel(self):
"""
Get info about open-source licenses for the application.
@ -442,6 +459,7 @@ class MeshroomApp(QApplication):
return bool(os.environ.get("MESHROOM_USE_8BIT_VIEWER", False))
changelogModel = Property("QVariantList", _changelogModel, constant=True)
licensesModel = Property("QVariantList", _licensesModel, constant=True)
pipelineTemplateFilesChanged = Signal()
recentProjectFilesChanged = Signal()