public int getIndex(DasMenuItem Item) { int index = 0; if (Item.hasParent()) { index = Item.getParent().getChilds().IndexOf(Item); } return(index); }
public void addChild(DasMenuItem value) { if (!getChilds().Contains(value)) { getChilds().Add(value); if (value.hasParent()) { value.getParent().removeChild(value); } value.setParent(this); } }
public DasMenuItem getEsc(DasMenuItem RootItem, string currentSelection) { DasMenuItemRepository ItemRepository = new DasMenuItemRepository(); DasMenuItem CurrentItem = ItemRepository.getItemOrDefault(ItemRepository.findOneByUid(RootItem, currentSelection), RootItem); if (CurrentItem.hasParent()) { CurrentItem = CurrentItem.getParent(); } return(CurrentItem); }
public DasMenuItem getCycle(DasMenuItem RootItem, string currentSelection, int steps) { DasMenuItemRepository ItemRepository = new DasMenuItemRepository(); DasMenuItem CurrentItem = ItemRepository.getItemOrDefault(ItemRepository.findOneByUid(RootItem, currentSelection), RootItem); if (CurrentItem.hasParent()) { int maxIndex = CurrentItem.getParent().getChilds().Count - 1; int currentIndex = ItemRepository.getIndex(CurrentItem); int newIndex = currentIndex + steps; if (newIndex < 0) { newIndex = maxIndex; } if (newIndex > maxIndex) { newIndex = 0; } CurrentItem = CurrentItem.getParent().getChilds()[newIndex]; } return(CurrentItem); }