public MainMenu() : base(false) { // TODO: Is it okay that assets can only be loaded into the active scene's libraries? sceneType = SceneType.Menu; Entity entity; entity = new Entity(this, entityList).AddBody(100f, 100f).AddSprite("ball"); entity.SetVelocity(20f, 10f); entity = new Entity(this, entityList).AddText("default", "N/A", 5f, 5f, Color.Cyan, 1f); stop1 = entity; message = new StringBuilder("Type: "); //menu = new Systems.MenuGroup(Systems.MenuOrder.vertical, MenuSelect, MenuDeselect); menu = new MenuGroup(); menu.Add(new Entity(this, entityList).AddText("default", "Start", 100f, 100f, menuTextColor, 1f)); menu.Add(new Entity(this, entityList).AddText("default", "Config", 100f, 200f, menuTextColor, 1f)); menu.Last().MenuControl.SetAction(GameCommand.MenuConfirm, MCConfig); menu.Add(new Entity(this, entityList).AddText("default", "Exit", 100f, 300f, menuTextColor, 1f)); menu.Last().MenuControl.SetAction(GameCommand.MenuConfirm, MCExit); menu.SetSelect(MCSelect); menu.SetDeselect(MCDeselect); menu.Refresh(); // TODO: Consider moving this to the base Scene library, and Start() or Stop via a flag in the constructor. // Though it might need to be started and stopped within certain scenes? Unless all typing popups are // handled as scenes of their own. //GlobalServices.TextHandler.Start(); }
private void LoadMenu() { List <SampleCategory> samplesJson; // Deserialize samples.json var assembly = IntrospectionExtensions.GetTypeInfo(typeof(SampleMenu)).Assembly; Stream stream = assembly.GetManifestResourceStream("HowDoISample.samples.json"); using (var reader = new StreamReader(stream)) { var text = reader.ReadToEnd(); samplesJson = JsonConvert.DeserializeObject <List <SampleCategory> >(text); } // Translate samples.json object into the master sample menu foreach (var category in samplesJson) { // Make the group var sampleGroup = new MenuGroup() { Title = category.Title, IsExpanded = false }; foreach (var sample in category.Children) { sampleGroup.Add(new SampleMenuItem() { Id = sample.Id, Title = sample.Title, Description = sample.Description }); } _allMenuItems.Add(sampleGroup); } UpdateMenu(); }
private void UpdateListContent() { _expandedGroups = new ObservableCollection <MenuGroup>(); foreach (MenuGroup group in _allGroups) { //Create new FoodGroups so we do not alter original list MenuGroup newGroup = new MenuGroup(group.title, "", group.Expanded); //Add the count of food items for Lits Header Titles to use newGroup.MenuCount = group.Count; if (group.Expanded) { foreach (ChartItemViewModel item in group) { newGroup.Add(item); } } _expandedGroups.Add(newGroup); } GroupedView.ItemsSource = _expandedGroups; }
public MenuConfig() : base(false) { // TODO: Is it okay that assets can only be loaded into the active scene's libraries? sceneType = SceneType.Menu; menu = new MenuGroup(); menu.Add(new Entity(this, entityList).AddText("default", "854x480", 200f, 120f, MainMenu.menuTextColor, 1f)); menu.Last().MenuControl.SetAction(GameCommand.MenuConfirm, MCRes480); menu.Add(new Entity(this, entityList).AddText("default", "1280x720", 200f, 220f, MainMenu.menuTextColor, 1f)); menu.Last().MenuControl.SetAction(GameCommand.MenuConfirm, MCRes720); menu.Add(new Entity(this, entityList).AddText("default", "1920x1080", 200f, 320f, MainMenu.menuTextColor, 1f)); menu.Last().MenuControl.SetAction(GameCommand.MenuConfirm, MCRes1080); menu.Add(new Entity(this, entityList).AddText("default", "Fullscreen", 200f, 420f, MainMenu.menuTextColor, 1f)); menu.Last().MenuControl.SetAction(GameCommand.MenuConfirm, MCResFullscreen); menu.Add(new Entity(this, entityList).AddText("default", "Back", 180f, 520f, MainMenu.menuTextColor, 1f)); menu.Last().MenuControl.SetAction(GameCommand.MenuConfirm, MCBack); menu.SetSelect(MainMenu.MCSelect); menu.SetDeselect(MainMenu.MCDeselect); menu.Refresh(); // TODO/DEBUG: Allow typing in custom resolutions to see what happens. (Or could implement this in the upcoming console.) // TODO: This shouldn't be necessary: //GlobalServices.TextHandler.Stop(); }
private void UpdateMenu() { var updatedMenu = new ObservableCollection <MenuGroup>(); foreach (var group in _allMenuItems) { var sampleGroup = new MenuGroup() { Title = group.Title, IsExpanded = group.IsExpanded }; if (sampleGroup.IsExpanded) { foreach (var sample in group) { sampleGroup.Add(new SampleMenuItem() { Id = sample.Id, Title = sample.Title, Description = sample.Description }); } } updatedMenu.Add(sampleGroup); } SampleMenuItems = updatedMenu; }
public void Refresh() { All.Clear (); MenuGroup mg = new MenuGroup (T ("Menu")); mg.Add (new Menu () { Page = MyPage.Home, Title = T ("MenuNews"), Detail = T ("MenuNewsDetail"), Icon = "news" }); mg.Add (new Menu () { Page = MyPage.Builders, Title = T ("MenuTheBuilders"), Detail = T ("MenuTheBuildersDetail"), Icon = "builders" }); mg.Add (new Menu () { Page = MyPage.None, Title = T ("MenuTheDroids"), Detail = T ("MenuTheDroidsDetail"), Icon = "robots" }); //mg.Add (new Menu (){ Page = MyPage.None, Title = "AstroDex", Detail = "L'anuaire des unités Astro", Icon = "IA" }); mg.Add (new Menu () { Page = MyPage.Exhibitions, Title = T ("MenuTheEvents"), Detail = T ("MenuTheEventsDetail"), Icon = "events" }); mg.Add (new Menu () { Page = MyPage.None, Title = T ("MenuMyCards"), Detail = T ("MenuMyCardsDetail"), Icon = "cards" }); mg.Add (new Menu () { Page = MyPage.None, Title = T ("MenuQrCode"), Detail = T ("MenuQrCodeDetail"), Icon = "qrcode" }); //mg.Add (new Menu (){ Page = MyPage.None, Title = "Vos cartes", Detail = "Votre collection de cartes", Icon = "IA" }); //mg.Add (new Menu (){ Page = MyPage.None, Title = "Vos récompenses", Detail = "Vos récompenses obtenues", Icon = "IA" }); mg.Add (new Menu () { Page = MyPage.Account, Title = T ("MenuMyAccount"), Detail = T ("MenuMyAccountDetail"), Icon = "user" }); //mg.Add (new Menu (){ Page = MyPage.None, Title = "Aide", Detail = "Comment fonctionne l'application", Icon = "IA" }); mg.Add (new Menu () { Page = MyPage.About, Title = T ("MenuAbout"), Detail = T ("MenuAboutDetail"), Icon = "about" }); All.Add (mg); /* mg = new MenuGroup ("ASTRODEX"); mg.Add (new Menu (){ Page = MyPage.None, Title = "Unités R1", Detail = "Astromech de type R1", Icon = "IA" }); mg.Add (new Menu (){ Page = MyPage.None, Title = "Unités R2", Detail = "Astromech de type R2", Icon = "IA" }); All.Add (mg); mg = new MenuGroup ("Récompenses"); mg.Add (new Menu (){ Page = MyPage.None, Title = "", Detail = "", Icon = "IA" }); mg.Add (new Menu (){ Page = MyPage.None, Title = "", Detail = "", Icon = "IA" }); mg.Add (new Menu (){ Page = MyPage.None, Title = "", Detail = "", Icon = "IA" }); mg.Add (new Menu (){ Page = MyPage.None, Title = "Builders Day 06/2015", Detail = "Chez lolo080 - 27 juin", Icon = "lolo080062k15" }); mg.Add (new Menu (){ Page = MyPage.None, Title = "FACTS 2015", Detail = "Gand - 27 & 28 septembre", Icon = "facts2k15" }); mg.Add (new Menu (){ Page = MyPage.None, Title = "PGW 2015", Detail = "Du 28/10 au 1/11", Icon = "pgw2k15" }); mg.Add (new Menu (){ Page = MyPage.None, Title = "Comic Con Paris", Detail = "Les 24 & 25 octobre 2015", Icon = "ccp2k15" }); All.Add (mg); */ /* if (Global.IsConnected && Global.ConnectedUser.IsBuilder) { mg = new MenuGroup ("Menu Builders"); mg.Add (new Menu () { Page = MyPage.None, Title = "Ma fiche", Detail = "Gérer ma fiche de présentation", Icon = "account" }); mg.Add (new Menu (){ Page = MyPage.None, Title = "Mes robots", Detail = "Gérer mes robots", Icon = "IA" }); //mg.Add (new Menu (){ Page = MyPage.None, Title = "", Detail = "", Icon = "IA" }); All.Add (mg); } */ if (Global.IsConnected) { mg = new MenuGroup (T ("MenuMenuBuilders")); if (Global.ConnectedUser.IsBuilder) { mg.Add (new Menu () { Page = MyPage.MyBuilder, Title = T ("MenuBuilderPresentation"), Detail = T ("MenuBuilderPresentationDetail"), Icon = "builder" }); mg.Add (new Menu () { Page = MyPage.None, Title = T ("MenuBuilderDroids"), Detail = T ("MenuBuilderDroidsDetail"), Icon = "myrobots" }); mg.Add (new Menu () { Page = MyPage.MyExhibitions, Title = T ("MenuBuilderEvents"), Detail = T ("MenuBuilderEventsDetail"), Icon = "planner" }); if (Global.ConnectedUser.IsNewser) { mg.Add (new Menu () { Page = MyPage.None, Title = T ("MenuAdminNews"), Detail = T ("MenuAdminNewsDetail"), Icon = "mynews" }); } } if (mg.Count > 0) All.Add (mg); mg = new MenuGroup (T ("MenuMenuAdmin")); if (Global.ConnectedUser.IsModo) { mg.Add (new Menu () { Page = MyPage.None, Title = T ("MenuAdminAllNews"), Detail = T ("MenuAdminAllNewsDetail"), Icon = "adminnews" }); } if (Global.ConnectedUser.IsAdmin) { mg.Add (new Menu () { Page = MyPage.AdminUsers, Title = T ("MenuAdminUsers"), Detail = T ("MenuAdminUsersDetail"), Icon = "adminusers" }); } if (Global.ConnectedUser.NickName.Equals ("Boris")) { mg.Add (new Menu () { Page = MyPage.AdminBuilders, Title = "Admin builders", Detail = "Gérer qui est builder", Icon = "IA" }); } if (mg.Count > 0) All.Add (mg); } }