protected void ProcessItemNew(IModelNavigationItem item, ChoiceActionItemCollection choiceActionItems) { ChoiceActionItem item2; if (item.View != null) { var viewShortcut = new ViewShortcut(item.View.Id, item.ObjectKey); var lvcni = item as IListViewCriteriaNavigationItem; if (lvcni != null) { viewShortcut.Add("Criteria", lvcni.Criteria + ""); } item2 = new ChoiceActionItem(item, viewShortcut); item2.Active["HasRights"] = this.HasRights(item2, item.Application.Views); } else { item2 = new ChoiceActionItem(item) { ActiveItemsBehavior = ActiveItemsBehavior.RequireActiveItems }; } item2.Active["Visible"] = item.Visible; choiceActionItems.Add(item2); foreach (IModelNavigationItem item3 in item.Items) { this.ProcessItemNew(item3, item2.Items); } this.OnNavigationItemCreated(item, item2); }
void AddItem(ChoiceActionItemCollection choiceActionItemCollection, List <string> strings, ITypeInfo groupedType) { string itemId = strings[0]; ChoiceActionItem choiceActionItem = choiceActionItemCollection.FindItemByID(itemId); if (choiceActionItem == null) { choiceActionItem = new ChoiceActionItem(itemId, itemId, GetType()); choiceActionItemCollection.Add(choiceActionItem); strings.RemoveAt(0); if (strings.Count == 0) { AddItemCore(choiceActionItem, groupedType); return; } AddItem(choiceActionItem.Items, strings, groupedType); return; } strings.RemoveAt(0); if (strings.Count == 0) { AddItemCore(choiceActionItem, groupedType); return; } AddItem(choiceActionItem.Items, strings, groupedType); }
private void ProcessItem(NavigationItem item, ChoiceActionItemCollection choiceActionItemCollection, ModelNode parentModel) { object objectKey = Session.GetKeyValue(item); IModelNavigationItem modelNavigaionItem = parentModel.AddNode <IModelNavigationItem>(objectKey.ToString()); FillNavigationItemModel(item, modelNavigaionItem); ChoiceActionItem choiceActionItem = new ChoiceActionItem(modelNavigaionItem, item); choiceActionItem.ImageName = item.ImageName; choiceActionItemCollection.Add(choiceActionItem); SortItems(item.Items); foreach (NavigationItem childItem in item.Items) { ProcessItem(childItem, choiceActionItem.Items, (ModelNode)modelNavigaionItem); } }
private void CreateItemsSingleChoiceAction(ChoiceActionItemCollection items, ChoiceActionItemCollection menuItems, string nodeId) { foreach (ChoiceActionItem current in from a in items where a.Active && a.Enabled select a) { string text = nodeId + "/" + current.Id; ChoiceActionItemMenuItem choiceActionItemMenuItem = new ChoiceActionItemMenuItem(current, base.MenuItemsAction, text); menuItems.Add(choiceActionItemMenuItem); SingleChoiceAction singleChoiceAction = this.Action as SingleChoiceAction; if (singleChoiceAction != null && singleChoiceAction.IsHierarchical()) { this.CreateItemsSingleChoiceAction(current.Items, choiceActionItemMenuItem.Items, text); } } }
Action <IModelCreatableItem> AddItems(ChoiceActionItemCollection choiceActionItemCollection) { return(creatableItem => choiceActionItemCollection.Add(CreateItem(creatableItem.ModelClass.TypeInfo.Type, creatableItem))); }
protected void ProcessItemNew(IModelNavigationItem item, ChoiceActionItemCollection choiceActionItems) { ChoiceActionItem item2; if (item.View != null) { var viewShortcut = new ViewShortcut(item.View.Id, item.ObjectKey); var lvcni = item as IListViewCriteriaNavigationItem; if (lvcni != null) { viewShortcut.Add("Criteria", lvcni.Criteria + ""); } item2 = new ChoiceActionItem(item, viewShortcut); item2.Active["HasRights"] = this.HasRights(item2, item.Application.Views); } else { item2 = new ChoiceActionItem(item) { ActiveItemsBehavior = ActiveItemsBehavior.RequireActiveItems }; } item2.Active["Visible"] = item.Visible; choiceActionItems.Add(item2); foreach (IModelNavigationItem item3 in item.Items) { this.ProcessItemNew(item3, item2.Items); } this.OnNavigationItemCreated(item, item2); }