// ---------------------------------------------------------------------------- void GPInfoScreen::beforeAddingWidget() { bool random = m_gp.isRandomGP(); if (!random) { // Check if there is a saved GP: SavedGrandPrix* saved_gp = SavedGrandPrix::getSavedGP( StateManager::get()->getActivePlayerProfile(0)->getUniqueID(), m_gp.getId(), race_manager->getNumLocalPlayers()); int tracks = m_gp.getTrackNames().size(); bool continue_visible = saved_gp && saved_gp->getNextTrack() > 0 && saved_gp->getNextTrack() < tracks; RibbonWidget* ribbonButtons = getWidget<RibbonWidget>("buttons"); int id_continue_button = ribbonButtons->findItemNamed("continue"); ribbonButtons->setItemVisible(id_continue_button, continue_visible); ribbonButtons->setLabel(id_continue_button, _("Continue saved GP")); } else { RibbonWidget* ribbonButtons = getWidget<RibbonWidget>("buttons"); int id_continue_button = ribbonButtons->findItemNamed("continue"); ribbonButtons->setItemVisible(id_continue_button, true); ribbonButtons->setLabel(id_continue_button, _("Reload")); } }