Return progress as double, not int

This commit is contained in:
ItsDrike 2025-02-26 16:21:33 +01:00
parent 48ddf3d5ae
commit d54c6743e7
Signed by: ItsDrike
GPG key ID: FA2745890B7048C0
3 changed files with 6 additions and 6 deletions

View file

@ -151,7 +151,7 @@ ApplicationWindow {
}
Text {
text: factorizationController.progress.toFixed(0) + "%"
text: factorizationController.progress.toFixed(1) + "%"
anchors.centerIn: parent
font.pixelSize: 16
color: "black"

View file

@ -16,7 +16,7 @@ unsigned long long FactorizationController::curFactNumber() const {
return m_currentFactNumber;
}
int FactorizationController::progress() const {
double FactorizationController::progress() const {
// If the original number is set to 0, the computation wasn't yet initialized / was reset.
// If the current factor is at 2, the computation has just started, return early to avoid
// zero division issues.
@ -32,8 +32,8 @@ int FactorizationController::progress() const {
// since factor being <= 2 means 100%, we sub 2 here.
double progress = static_cast<double>(m_currentFactor - 2) / static_cast<double>(m_stopFactor - 2);
// Return the value as int percentage
return static_cast<int>(std::clamp(progress * 100, 0.0, 100.0));
// Return the value as percentage
return std::clamp(progress * 100, 0.0, 100.0);
}
bool FactorizationController::isFinished() const {

View file

@ -31,7 +31,7 @@ class FactorizationController : public QObject {
Q_PROPERTY(unsigned long long curFactNumber READ curFactNumber NOTIFY curFactNumberChanged)
Q_PROPERTY(unsigned long long currentFactor READ currentFactor NOTIFY currentFactorChanged)
Q_PROPERTY(unsigned long long stopFactor READ stopFactor NOTIFY stopFactorChanged)
Q_PROPERTY(int progress READ progress NOTIFY progressChanged)
Q_PROPERTY(double progress READ progress NOTIFY progressChanged)
Q_PROPERTY(QList<unsigned long long> factors READ factors NOTIFY factorsChanged)
public:
@ -43,7 +43,7 @@ class FactorizationController : public QObject {
* @brief Gets the current progress of factorization.
* @return The progress percentage (0-100).
*/
int progress() const;
double progress() const;
/**
* @brief Checks if the factorization process is running.