Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RetroAchievements - Achievement Progress Tab #11878

Commits on Jul 2, 2023

  1. Expose Achievements Data for Display

    Added some small methods to AchievementManager to expose useful data for displaying in an achievement UI. Also moved a couple things from private to public for the same purpose.
    LillyJadeKatrin committed Jul 2, 2023
    Configuration menu
    Copy the full SHA
    f700faf View commit details
    Browse the repository at this point in the history
  2. Added AchievementHeaderWidget to AchievementsWindow

    This widget displays a header on the AchievementsWindow dialog above the tabs that shows the currently logged in user (if there is one) and the game they are playing (if there is one).
    LillyJadeKatrin committed Jul 2, 2023
    Configuration menu
    Copy the full SHA
    ebe77f1 View commit details
    Browse the repository at this point in the history
  3. Added AchievementProgressWidget to AchievementsWindow

    This widget is a tab in the AchievementsWindow that displays the player's current achievement progress: which achievements are locked or unlocked, and the progress of achievements that have progress metrics.
    LillyJadeKatrin committed Jul 2, 2023
    Configuration menu
    Copy the full SHA
    582042d View commit details
    Browse the repository at this point in the history
  4. Add UpdateCallback to AchievementManager

    AchievementManager now has a SetUpdateCallback method for providing a single universal callback for anytime something important changes in the achievement state, such as logging in/out, game load/close, or events such as achievement unlocks. AchievementsWindow sets this callback in its own init to its UpdateData method so that the AchievementsWindow gets updated when one of these changes takes place.
    LillyJadeKatrin committed Jul 2, 2023
    Configuration menu
    Copy the full SHA
    fbaeaf3 View commit details
    Browse the repository at this point in the history
  5. Synchronized Achievement Window

    Expanded the use of the lock mutex already used for loading the player's existing unlock status to guard against races involving the Achievements dialog window reading from data AchievementManager might be in the process of updating. The lock has been exposed publicly and the AchievementsWindow uses it in its UpdateData method, and anywhere else that might modify data used to render that window has also been wrapped with it.
    LillyJadeKatrin committed Jul 2, 2023
    Configuration menu
    Copy the full SHA
    ccc9d0e View commit details
    Browse the repository at this point in the history