private void EnableBeginGroup(ChoiceActionItemCollection items, IModelNavigationItems itemsModel)
 {
     foreach (ChoiceActionItem item in items)
     {
         IModelNavigationItem itemModel = itemsModel != null ? itemsModel.GetNode(item.Id) as IModelNavigationItem : null;
         item.BeginGroup = itemModel != null ? ((IModelNavigationItemSeparator)itemModel).BeginGroup : false;
         EnableBeginGroup(item.Items, itemModel != null ? itemModel.GetNode("Items") as IModelNavigationItems : null);
     }
 }
        private void EnableBeginGroup(ChoiceActionItemCollection items, IModelNavigationItems itemsModel)
        {
            foreach (ChoiceActionItem item in items)
            {
                IModelNavigationItem itemModel = itemsModel != null?itemsModel.GetNode(item.Id) as IModelNavigationItem : null;

                item.BeginGroup = itemModel != null ? ((IModelNavigationItemSeparator)itemModel).BeginGroup : false;
                EnableBeginGroup(item.Items, itemModel != null ? itemModel.GetNode("Items") as IModelNavigationItems : null);
            }
        }
예제 #3
0
        IModelNavigationItem GetNavigationItem(IModelNavigationItems navigationItems, string id, string objectKey)
        {
            IModelNavigationItem navigationItem;

            if (navigationItems[id] != null)
            {
                navigationItem = navigationItems[id];
            }
            else
            {
                navigationItem           = navigationItems.AddNode <IModelNavigationItem>(id);
                navigationItem.Caption   = id;
                navigationItem.ObjectKey = objectKey;
            }
            return(navigationItem);
        }
        private IModelNavigationItem GetModelByChoiceItem(ChoiceActionItem item, IModelNavigationItems items)
        {
            foreach (var modelNavigationItem in items)
            {
                if (modelNavigationItem.Id == item.Id)
                {
                    return(modelNavigationItem);
                }
                var tmp = GetModelByChoiceItem(item, modelNavigationItem.Items);
                if (tmp != null)
                {
                    return(tmp);
                }
            }

            return(null);
        }
예제 #5
0
        void AddNodes(IModelNavigationItems navigationItems, List <string> strings, string viewId, string objectKey)
        {
            if (strings.Count == 0)
            {
                var modelView = navigationItems.Application.Views.Where(view => view.Id == viewId).FirstOrDefault();
                if (modelView == null)
                {
                    throw new NullReferenceException(viewId);
                }
                ((IModelNavigationItem)navigationItems.Parent).View = modelView;
                return;
            }
            var id = strings[0];
            IModelNavigationItem navigationItem = GetNavigationItem(navigationItems, id, objectKey);

            strings.RemoveAt(0);
            AddNodes(navigationItem.Items, strings, viewId, objectKey);
        }
예제 #6
0
 private static void BuildMenu(IModelNavigationItems items, BarLinksHolder ctrl, IBarManagerHolder dock)
 {
     foreach (var x in items)
     {
         if (x.Items.Count > 0)
         {
             var sub = new BarSubItem(dock.BarManager, x.Caption);
             sub.LargeGlyph = ImageLoader.Instance.GetImageInfo(x.ImageName).Image;
             ctrl.AddItem(sub);
             BuildMenu(x.Items, sub, dock);
         }
         else
         {
             var item = new BarButtonItem(dock.BarManager, x.Caption);
             item.LargeGlyph = ImageLoader.Instance.GetImageInfo(x.ImageName).Image;
             ctrl.AddItem(item);
         }
     }
 }
예제 #7
0
 private static void BuildMenu(IModelNavigationItems items, BarLinksHolder ctrl, IBarManagerHolder dock)
 {
     foreach (var x in items)
     {
         if (x.Items.Count > 0)
         {
             var sub = new BarSubItem(dock.BarManager, x.Caption);
             sub.LargeGlyph = ImageLoader.Instance.GetImageInfo(x.ImageName).Image;
             ctrl.AddItem(sub);
             BuildMenu(x.Items, sub, dock);
         }
         else
         {
             var item = new BarButtonItem(dock.BarManager, x.Caption);
             item.LargeGlyph = ImageLoader.Instance.GetImageInfo(x.ImageName).Image;
             ctrl.AddItem(item);
         }
     }
 }
        IModelNavigationItem GetNavigationItem(IModelNavigationItems navigationItems, string id, string objectKey, int index)
        {
            IModelNavigationItem navigationItem;

            if (navigationItems[id] != null)
            {
                navigationItem = navigationItems[id];
            }
            else
            {
                navigationItem           = navigationItems.AddNode <IModelNavigationItem>(id);
                navigationItem.Caption   = id;
                navigationItem.ObjectKey = objectKey;
                if (index > -1)
                {
                    navigationItem.Index = index;
                }
            }
            return(navigationItem);
        }
        void AddNodes(IModelNavigationItems navigationItems, List <string> strings, string[] viewIds, string objectKey, int index)
        {
            if (strings.Count == 0)
            {
                var modelView = navigationItems.Application.Views[viewIds[0]];
                if (modelView == null)
                {
                    modelView = navigationItems.Application.Views[viewIds[1]];
                    if (modelView == null)
                    {
                        throw new NullReferenceException(string.Join("/", viewIds) + " not found in Application.Views");
                    }
                }
                ((IModelNavigationItem)navigationItems.Parent).View = modelView;
                return;
            }
            var id = strings[0];
            IModelNavigationItem navigationItem = GetNavigationItem(navigationItems, id, objectKey, strings.Count == 1 ? index : -1);

            strings.RemoveAt(0);
            AddNodes(navigationItem.Items, strings, viewIds, objectKey, index);
        }
        private void AddNavItem(IModelNavigationItems node, string id)
        {
            var personItem = node.AddNode <IModelNavigationItem>(id);

            personItem.View = node.Application.Views[id];
        }