mirror of
				https://github.com/dolphin-emu/dolphin.git
				synced 2025-10-24 17:09:06 +00:00 
			
		
		
		
	Similarly to the Progress widget (though without the separate object for each box, because each Leaderboard unit is just three text fields stacked vertically), AchievementLeaderboardWidget.UpdateData will now accept three options: destroy all and rebuild, update all, or update a set of rows. As part of this, AchievementManager::GetLeaderboardsInfo has been refactored to GetLeaderboardInfo to return a single leaderboard for the ID passed in.
		
			
				
	
	
		
			29 lines
		
	
	
	
		
			729 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
	
		
			729 B
		
	
	
	
		
			C++
		
	
	
	
	
	
| // Copyright 2023 Dolphin Emulator Project
 | |
| // SPDX-License-Identifier: GPL-2.0-or-later
 | |
| 
 | |
| #pragma once
 | |
| 
 | |
| #ifdef USE_RETRO_ACHIEVEMENTS
 | |
| #include <QWidget>
 | |
| 
 | |
| #include "Core/AchievementManager.h"
 | |
| 
 | |
| class QGroupBox;
 | |
| class QGridLayout;
 | |
| 
 | |
| class AchievementLeaderboardWidget final : public QWidget
 | |
| {
 | |
|   Q_OBJECT
 | |
| public:
 | |
|   explicit AchievementLeaderboardWidget(QWidget* parent);
 | |
|   void UpdateData(bool clean_all);
 | |
|   void UpdateData(const std::set<AchievementManager::AchievementId>& update_ids);
 | |
|   void UpdateRow(AchievementManager::AchievementId leaderboard_id);
 | |
| 
 | |
| private:
 | |
|   QGroupBox* m_common_box;
 | |
|   QGridLayout* m_common_layout;
 | |
|   std::map<AchievementManager::AchievementId, int> m_leaderboard_order;
 | |
| };
 | |
| 
 | |
| #endif  // USE_RETRO_ACHIEVEMENTS
 |