mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-21 13:20:27 -06:00
Merge pull request #12853 from LillyJadeKatrin/retroachievements-percent-fix
Improved Achievement Progress Label
This commit is contained in:
@ -18,6 +18,8 @@
|
|||||||
|
|
||||||
#include "DolphinQt/QtUtils/FromStdString.h"
|
#include "DolphinQt/QtUtils/FromStdString.h"
|
||||||
|
|
||||||
|
static constexpr size_t PROGRESS_LENGTH = 24;
|
||||||
|
|
||||||
AchievementBox::AchievementBox(QWidget* parent, rc_client_achievement_t* achievement)
|
AchievementBox::AchievementBox(QWidget* parent, rc_client_achievement_t* achievement)
|
||||||
: QGroupBox(parent), m_achievement(achievement)
|
: QGroupBox(parent), m_achievement(achievement)
|
||||||
{
|
{
|
||||||
@ -37,6 +39,8 @@ AchievementBox::AchievementBox(QWidget* parent, rc_client_achievement_t* achieve
|
|||||||
QSizePolicy sp_retain = m_progress_bar->sizePolicy();
|
QSizePolicy sp_retain = m_progress_bar->sizePolicy();
|
||||||
sp_retain.setRetainSizeWhenHidden(true);
|
sp_retain.setRetainSizeWhenHidden(true);
|
||||||
m_progress_bar->setSizePolicy(sp_retain);
|
m_progress_bar->setSizePolicy(sp_retain);
|
||||||
|
m_progress_label = new QLabel();
|
||||||
|
m_progress_label->setAlignment(Qt::AlignCenter);
|
||||||
|
|
||||||
QVBoxLayout* a_col_right = new QVBoxLayout();
|
QVBoxLayout* a_col_right = new QVBoxLayout();
|
||||||
a_col_right->addWidget(title);
|
a_col_right->addWidget(title);
|
||||||
@ -44,6 +48,9 @@ AchievementBox::AchievementBox(QWidget* parent, rc_client_achievement_t* achieve
|
|||||||
a_col_right->addWidget(points);
|
a_col_right->addWidget(points);
|
||||||
a_col_right->addWidget(m_status);
|
a_col_right->addWidget(m_status);
|
||||||
a_col_right->addWidget(m_progress_bar);
|
a_col_right->addWidget(m_progress_bar);
|
||||||
|
QVBoxLayout* a_prog_layout = new QVBoxLayout(m_progress_bar);
|
||||||
|
a_prog_layout->setContentsMargins(0, 0, 0, 0);
|
||||||
|
a_prog_layout->addWidget(m_progress_label);
|
||||||
QHBoxLayout* a_total = new QHBoxLayout();
|
QHBoxLayout* a_total = new QHBoxLayout();
|
||||||
a_total->addWidget(m_badge);
|
a_total->addWidget(m_badge);
|
||||||
a_total->addLayout(a_col_right);
|
a_total->addLayout(a_col_right);
|
||||||
@ -84,6 +91,8 @@ void AchievementBox::UpdateData()
|
|||||||
{
|
{
|
||||||
m_progress_bar->setRange(0, 100);
|
m_progress_bar->setRange(0, 100);
|
||||||
m_progress_bar->setValue(m_achievement->measured_percent);
|
m_progress_bar->setValue(m_achievement->measured_percent);
|
||||||
|
m_progress_bar->setTextVisible(false);
|
||||||
|
m_progress_label->setText(QString::fromUtf8(m_achievement->measured_progress, PROGRESS_LENGTH));
|
||||||
m_progress_bar->setVisible(true);
|
m_progress_bar->setVisible(true);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -25,6 +25,7 @@ private:
|
|||||||
QLabel* m_badge;
|
QLabel* m_badge;
|
||||||
QLabel* m_status;
|
QLabel* m_status;
|
||||||
QProgressBar* m_progress_bar;
|
QProgressBar* m_progress_bar;
|
||||||
|
QLabel* m_progress_label;
|
||||||
|
|
||||||
rc_client_achievement_t* m_achievement;
|
rc_client_achievement_t* m_achievement;
|
||||||
};
|
};
|
||||||
|
Reference in New Issue
Block a user