mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-05-01 00:04:27 +08:00

For example, if the community distributes Cura in a different way, they can set CURA_BUILDTYPE via 'cmake -DCURA_BUILDTYPE=' and whenever Cura is launched " (PPA)" will be appended. Of course, this could be done by appending " (PPA)" to CURA_VERSION, but in case of my Ubuntu/Debian packaging it will only need one modification in debian/changelog to change the version. During build (debian/rules) this version will be read from debian/changelog. Changing the version number across different files, is a waste of time. Finally, we can use that field in the future to indicate debug or other other special builds.
36 lines
1.4 KiB
Python
36 lines
1.4 KiB
Python
# Copyright (c) 2015 Ultimaker B.V.
|
|
# Uranium is released under the terms of the AGPLv3 or higher.
|
|
|
|
from PyQt5.QtCore import Qt, QCoreApplication
|
|
from PyQt5.QtGui import QPixmap, QColor, QFont, QFontMetrics
|
|
from PyQt5.QtWidgets import QSplashScreen
|
|
|
|
from UM.Resources import Resources
|
|
from UM.Application import Application
|
|
|
|
class CuraSplashScreen(QSplashScreen):
|
|
def __init__(self):
|
|
super().__init__()
|
|
self._scale = round(QFontMetrics(QCoreApplication.instance().font()).ascent() / 12)
|
|
|
|
splash_image = QPixmap(Resources.getPath(Resources.Images, "cura.png"))
|
|
self.setPixmap(splash_image.scaled(splash_image.size() * self._scale))
|
|
|
|
def drawContents(self, painter):
|
|
painter.save()
|
|
painter.setPen(QColor(0, 0, 0, 255))
|
|
|
|
version = Application.getInstance().getVersion().split("-")
|
|
buildtype = Application.getInstance().getBuildType()
|
|
if buildtype:
|
|
version += " (%s)" %(buildtype)
|
|
|
|
painter.setFont(QFont("Proxima Nova Rg", 20 ))
|
|
painter.drawText(0, 0, 330 * self._scale, 230 * self._scale, Qt.AlignHCenter | Qt.AlignBottom, version[0])
|
|
if len(version) > 1:
|
|
painter.setFont(QFont("Proxima Nova Rg", 12 ))
|
|
painter.drawText(0, 0, 330 * self._scale, 255 * self._scale, Qt.AlignHCenter | Qt.AlignBottom, version[1])
|
|
|
|
painter.restore()
|
|
super().drawContents(painter)
|