mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-23 14:19:46 -06:00
Add Leaderboards tab to Achievement dialog
A new tab is added to the Achievements dialog to chart out the leaderboards in a table. Each row of the table contains the leaderboard information and up to four relevant entries, varying based on how many entries are in the leaderboard, whether or not the player has a submitted score, and where in the leaderboard the player's score is.
This commit is contained in:

committed by
Admiral H. Curtiss

parent
04df930e0d
commit
b824d55093
@ -11,6 +11,7 @@
|
||||
#include <QVBoxLayout>
|
||||
|
||||
#include "DolphinQt/Achievements/AchievementHeaderWidget.h"
|
||||
#include "DolphinQt/Achievements/AchievementLeaderboardWidget.h"
|
||||
#include "DolphinQt/Achievements/AchievementProgressWidget.h"
|
||||
#include "DolphinQt/Achievements/AchievementSettingsWidget.h"
|
||||
#include "DolphinQt/QtUtils/QueueOnObject.h"
|
||||
@ -42,10 +43,14 @@ void AchievementsWindow::CreateMainLayout()
|
||||
m_header_widget = new AchievementHeaderWidget(this);
|
||||
m_tab_widget = new QTabWidget();
|
||||
m_progress_widget = new AchievementProgressWidget(m_tab_widget);
|
||||
m_leaderboard_widget = new AchievementLeaderboardWidget(m_tab_widget);
|
||||
m_tab_widget->addTab(
|
||||
GetWrappedWidget(new AchievementSettingsWidget(m_tab_widget, this), this, 125, 100),
|
||||
tr("Settings"));
|
||||
m_tab_widget->addTab(GetWrappedWidget(m_progress_widget, this, 125, 100), tr("Progress"));
|
||||
m_tab_widget->setTabVisible(1, AchievementManager::GetInstance()->IsGameLoaded());
|
||||
m_tab_widget->addTab(GetWrappedWidget(m_leaderboard_widget, this, 125, 100), tr("Leaderboards"));
|
||||
m_tab_widget->setTabVisible(2, AchievementManager::GetInstance()->IsGameLoaded());
|
||||
|
||||
m_button_box = new QDialogButtonBox(QDialogButtonBox::Close);
|
||||
|
||||
@ -70,6 +75,8 @@ void AchievementsWindow::UpdateData()
|
||||
// Settings tab handles its own updates ... indeed, that calls this
|
||||
m_progress_widget->UpdateData();
|
||||
m_tab_widget->setTabVisible(1, AchievementManager::GetInstance()->IsGameLoaded());
|
||||
m_leaderboard_widget->UpdateData();
|
||||
m_tab_widget->setTabVisible(2, AchievementManager::GetInstance()->IsGameLoaded());
|
||||
}
|
||||
update();
|
||||
}
|
||||
|
Reference in New Issue
Block a user