diff --git a/src/states_screens/edit_gp_screen.cpp b/src/states_screens/edit_gp_screen.cpp index 0e917eb27..f191e2c66 100644 --- a/src/states_screens/edit_gp_screen.cpp +++ b/src/states_screens/edit_gp_screen.cpp @@ -58,12 +58,6 @@ void EditGPScreen::loadedFromFile() { if (m_icon_bank == NULL) m_icon_bank = new irr::gui::STKModifiedSpriteBank(GUIEngine::getGUIEnv()); - - m_list = getWidget("tracks"); - assert(m_list != NULL); - m_list->addColumn(_("Track"), 3); - m_list->addColumn(_("Laps"), 1); - m_list->addColumn(_("Reversed"), 1); } // loadedFromFile // ----------------------------------------------------------------------------- @@ -147,6 +141,17 @@ void EditGPScreen::eventCallback(GUIEngine::Widget* widget, } } // eventCallback +// ----------------------------------------------------------------------------- +void EditGPScreen::beforeAddingWidget() +{ + m_list = getWidget("tracks"); + assert(m_list != NULL); + m_list->clearColumns(); + m_list->addColumn(_("Track"), 3); + m_list->addColumn(_("Laps"), 1); + m_list->addColumn(_("Reversed"), 1); +} + // ----------------------------------------------------------------------------- void EditGPScreen::init() { diff --git a/src/states_screens/edit_gp_screen.hpp b/src/states_screens/edit_gp_screen.hpp index 69456585b..61fad3955 100644 --- a/src/states_screens/edit_gp_screen.hpp +++ b/src/states_screens/edit_gp_screen.hpp @@ -79,6 +79,9 @@ public: /** \brief implement callback from parent class GUIEngine::Screen */ virtual void eventCallback(GUIEngine::Widget* widget, const std::string& name, const int playerID) OVERRIDE; + + /** \brief implement callback from parent class GUIEngine::Screen */ + virtual void beforeAddingWidget() OVERRIDE; /** \brief implement callback from parent class GUIEngine::Screen */ virtual void init() OVERRIDE;