public void ChangeMenu(Menu.Menus menu) { if (activeMenu != null) { activeMenu.QueueFree(); activeMenu = null; } activeMenu = Menu.MenuFactory(menu); }
public static void ChangeMenu(Menu.Menus menu) { Session ses = Session.session; if (ses.activeMenu != null) { IMenu menuInstance = ses.activeMenu as IMenu; if (menuInstance != null) { GD.Print("menuInstance.Clear() " + menu); menuInstance.Clear(); } else { GD.Print("ChangeMenu.QueueFree ses.activeMenu" + menu); ses.activeMenu.QueueFree(); } ses.activeMenu = null; } else { GD.Print("ChangeMenu: ses.activeMenu already null when setting " + menu); } Node createdMenu = Menu.MenuFactory(menu); if (ses.activeMenu != null) { GD.Print("Menu Changed menu in its Init()."); return; } else { ses.activeMenu = createdMenu; } if (ses.activeMenu == null) { GD.Print("Session.ChangeMenu: menu null for " + menu); } }
public static void ChangeMenu(Menu.Menus menu) { Session ses = Session.session; if (ses.activeMenu != null) { IMenu menuInstance = ses.activeMenu as IMenu; if (menuInstance != null) { menuInstance.Clear(); } else { ses.activeMenu.QueueFree(); } ses.activeMenu = null; } ses.activeMenu = Menu.MenuFactory(menu); }