public static ICollection<IModelGroup> Get_Groups(IModelMenu modelExtender)
 {
     CalculatedModelNodeList<IModelGroup> calculatedModelNodeList = new CalculatedModelNodeList<IModelGroup>();
     calculatedModelNodeList.AddRange(
         from a in modelExtender.Application.Aurum().AurumLists().Groups
         select a);
     return calculatedModelNodeList;
 }
Exemplo n.º 2
0
 public static IModelList<IModelColumn> Get_FilteredColumns(IModelDashboardViewFilter modelDashboardViewFilter) {
     var calculatedModelNodeList = new CalculatedModelNodeList<IModelColumn>();
     var modelListView = ((IModelDashboardViewItemEx)modelDashboardViewFilter.Parent).View as IModelListView;
     if (modelListView != null) {
         calculatedModelNodeList.AddRange(modelListView.Columns.Where(column => column.ModelMember.MemberInfo.MemberTypeInfo.IsDomainComponent));
     }
     return calculatedModelNodeList;
 }
 public static IModelList<IModelObjectView> Get_ObjectViews(IModelConditionalObjectViewRule conditionalObjectViewRule) {
     var calculatedModelNodeList = new CalculatedModelNodeList<IModelObjectView>();
     if (conditionalObjectViewRule.ModelClass != null) {
         var modelDetailViews = conditionalObjectViewRule.Application.Views.OfType<IModelObjectView>().Where(view => view.ModelClass == conditionalObjectViewRule.ModelClass);
         calculatedModelNodeList.AddRange(modelDetailViews);
     }
     return calculatedModelNodeList;
 }
 public static ICollection<IModelMenuTemplate> Get_Templates(IModelMenuTemplateLink modelExtender)
 {
     CalculatedModelNodeList<IModelMenuTemplate> calculatedModelNodeList = new CalculatedModelNodeList<IModelMenuTemplate>();
     calculatedModelNodeList.AddRange(
         from a in modelExtender.Application.Aurum().Menus().MenuEditor.Templates
         select a);
     return calculatedModelNodeList;
 }
 /// <summary>
 /// Получение дочерних элементов
 /// </summary>
 /// <param name="modelExtender"></param>
 /// <returns></returns>
 public static ICollection<IModelMenuItem> Get_AllChildrenItems(IModelMenuTemplate modelExtender)
 {
     CalculatedModelNodeList<IModelMenuItem> calculatedModelNodeList = new CalculatedModelNodeList<IModelMenuItem>();
     IEnumerable<IModelMenuViewItem> nodes = modelExtender.GetNodes<IModelMenuViewItem>();
     IEnumerable<IModelMenuActionItem> nodes2 = modelExtender.GetNodes<IModelMenuActionItem>();
     calculatedModelNodeList.AddRange(nodes);
     calculatedModelNodeList.AddRange(nodes2);
     return calculatedModelNodeList;
 }
 public static IModelList<IModelListView> Get_SummaryDataSourceViews(IModelDashboardViewFilter modelDashboardViewFilter)
 {
     var calculatedModelNodeList = new CalculatedModelNodeList<IModelListView>();
     var modelView = ((IModelDashboardViewItemEx)modelDashboardViewFilter.Parent).View;
     var dashboardViewItemFiltereds = modelDashboardViewFilter.AllDashBoardViewItems().Where(filtered => filtered.View is IModelListView && modelView != filtered.View);
     var modelListViews = dashboardViewItemFiltereds.Select(filtered => filtered.View).OfType<IModelListView>().Where(view => typeof(PivotGridListEditorBase).IsAssignableFrom(view.EditorType));
     calculatedModelNodeList.AddRange(modelListViews);
     return calculatedModelNodeList;
 }
 public static IModelList<IModelMember> Get_CollectionMembers(IModelMasterDetailRule masterDetailRule)
 {
     var calculatedModelNodeList = new CalculatedModelNodeList<IModelMember>();
     if (masterDetailRule.ModelClass != null) {
         IEnumerable<IModelMember> modelMembers =masterDetailRule.Application.BOModel.GetClass(masterDetailRule.ModelClass.TypeInfo.Type).AllMembers.
                 Where(member => member.MemberInfo.IsList);
         calculatedModelNodeList.AddRange(modelMembers);
     }
     return calculatedModelNodeList;
 }
Exemplo n.º 8
0
        public static IModelList <IModelListView> Get_SummaryDataSourceViews(IModelDashboardViewFilterPivot modelDashboardViewFilter)
        {
            var calculatedModelNodeList = new CalculatedModelNodeList <IModelListView>();
            var modelView = ((IModelDashboardViewItemEx)modelDashboardViewFilter.Parent).View;
            var dashboardViewItemFiltereds = modelDashboardViewFilter.AllDashBoardViewItems().Where(filtered => filtered.View is IModelListView && modelView != filtered.View);
            var modelListViews             = dashboardViewItemFiltereds.Select(filtered => filtered.View).OfType <IModelListView>().Where(view => typeof(PivotGridListEditorBase).IsAssignableFrom(view.EditorType));

            calculatedModelNodeList.AddRange(modelListViews);
            return(calculatedModelNodeList);
        }
 public static IModelList<IModelListView> Get_ChildListViews(IModelMasterDetailRule masterDetailRule)
 {
     var calculatedModelNodeList = new CalculatedModelNodeList<IModelListView>();
     IModelMember collectionMember = masterDetailRule.CollectionMember;
     if (collectionMember== null)
         return calculatedModelNodeList;
     Type listType = masterDetailRule.CollectionMember.MemberInfo.ListElementTypeInfo.Type;
     calculatedModelNodeList.AddRange(masterDetailRule.Application.Views.OfType<IModelListView>().Where(view => view.ModelClass.TypeInfo.Type == listType));
     return calculatedModelNodeList;
 }
Exemplo n.º 10
0
        public static IModelList <IModelDetailView> Get_DetailViews(IModelConditionalDetailViewRule conditionalDetailViewRule)
        {
            var calculatedModelNodeList = new CalculatedModelNodeList <IModelDetailView>();

            if (conditionalDetailViewRule.ModelClass != null)
            {
                var modelDetailViews = conditionalDetailViewRule.Application.Views.OfType <IModelDetailView>().Where(view => view.ModelClass == conditionalDetailViewRule.ModelClass);
                calculatedModelNodeList.AddRange(modelDetailViews);
            }
            return(calculatedModelNodeList);
        }
Exemplo n.º 11
0
        public static IModelList <IModelColumn> Get_FilteredColumns(IModelDashboardViewFilter modelDashboardViewFilter)
        {
            var calculatedModelNodeList = new CalculatedModelNodeList <IModelColumn>();
            var modelListView           = ((IModelDashboardViewItemEx)modelDashboardViewFilter.Parent).View as IModelListView;

            if (modelListView != null)
            {
                calculatedModelNodeList.AddRange(modelListView.Columns.Where(column => column.ModelMember.MemberInfo.MemberTypeInfo.IsDomainComponent));
            }
            return(calculatedModelNodeList);
        }
Exemplo n.º 12
0
        public static IModelList <IModelMember> Get_CollectionMembers(IModelMasterDetailRule masterDetailRule)
        {
            var calculatedModelNodeList = new CalculatedModelNodeList <IModelMember>();

            if (masterDetailRule.ModelClass != null)
            {
                IEnumerable <IModelMember> modelMembers = masterDetailRule.Application.BOModel.GetClass(masterDetailRule.ModelClass.TypeInfo.Type).AllMembers.
                                                          Where(member => member.MemberInfo.IsList);
                calculatedModelNodeList.AddRange(modelMembers);
            }
            return(calculatedModelNodeList);
        }
Exemplo n.º 13
0
        public static IModelList <IModelListViewMasterDetail> Get_ListViews(IModelMasterDetail modelDetail)
        {
            var calculatedModelNodeList = new CalculatedModelNodeList <IModelListViewMasterDetail>();
            var collectionMember        = modelDetail.CollectionMember;

            if (collectionMember != null)
            {
                var listElementTypeInfo = collectionMember.MemberInfo.ListElementTypeInfo;
                var modelListViews      = ModelListViews(modelDetail, listElementTypeInfo);
                calculatedModelNodeList.AddRange(modelListViews);
            }
            return(calculatedModelNodeList);
        }
Exemplo n.º 14
0
        public static IModelList <IModelListView> Get_ChildListViews(IModelMasterDetailRule masterDetailRule)
        {
            var          calculatedModelNodeList = new CalculatedModelNodeList <IModelListView>();
            IModelMember collectionMember        = masterDetailRule.CollectionMember;

            if (collectionMember == null)
            {
                return(calculatedModelNodeList);
            }
            Type listType = masterDetailRule.CollectionMember.MemberInfo.ListElementTypeInfo.Type;

            calculatedModelNodeList.AddRange(masterDetailRule.Application.Views.OfType <IModelListView>().Where(view => view.ModelClass.TypeInfo.Type == listType));
            return(calculatedModelNodeList);
        }
Exemplo n.º 15
0
        public static IModelList<IModelView> Get_Views(IModelLogicRule modelLogicRule) {
            var calculatedModelNodeList = new CalculatedModelNodeList<IModelView>();
            if (modelLogicRule.ModelClass == null)
                return calculatedModelNodeList;
            var modelViews = modelLogicRule.Application.Views.OfType<IModelObjectView>().Where(view => view.ModelClass == modelLogicRule.ModelClass);

            if (modelLogicRule.ViewType != ViewType.Any)
                modelViews =
                    modelViews.Where(modelView => (modelLogicRule.ViewType == ViewType.ListView
                             ? modelView is IModelListView
                             : modelView is IModelDetailView));
            calculatedModelNodeList.AddRange(modelViews);
            return calculatedModelNodeList;
        }
 public static ICollection<IModelAction> Get_MenuActions(IModelMenuActionItem modelExtender)
 {
     CalculatedModelNodeList<IModelAction> calculatedModelNodeList = new CalculatedModelNodeList<IModelAction>();
     calculatedModelNodeList.AddRange(
         from a in modelExtender.Application.ActionDesign.Actions.Where(delegate(IModelAction a)
         {
             IModelWindowController modelWindowController = a.Controller as IModelWindowController;
             IModelViewController modelViewController = a.Controller as IModelViewController;
             if (modelWindowController != null)
                 return modelWindowController.TargetWindowType == WindowType.Any || modelWindowController.TargetWindowType == WindowType.Main;
             if (modelViewController != null)
                 return true;
             return false;
         })
         orderby a.Id
         select a);
     return calculatedModelNodeList;
 }
Exemplo n.º 17
0
        void UpdateDetailViewItems(CalculatedModelNodeList <IModelNode> items, IModelObjectView targetObjectView)
        {
            var detailView = targetObjectView as IModelDetailView;

            if (detailView != null)
            {
                for (int index = items.Count - 1; index >= 0; index--)
                {
                    var modelViewItem = items[index];
                    var id            = modelViewItem.Id();
                    var viewItem      = detailView.Items[id];
                    if (viewItem == null)
                    {
                        ModelEditorHelper.AddCloneNode((ModelNode)detailView.Items, (ModelNode)modelViewItem, id);
                    }
                }
            }
        }
        public static CalculatedModelNodeList <IModelDetailView> Get_DetailViews(IModelDetailViewWizardPage wizardPage)
        {
            var views = new CalculatedModelNodeList <IModelDetailView>();

            if (wizardPage.Parent == null)
            {
                return(views);
            }

            var parentView = wizardPage.Parent.Parent as IModelDetailView;

            if (parentView == null || parentView.ModelClass == null)
            {
                return(views);
            }

            views.AddRange(wizardPage.Application.Views.OfType <IModelDetailView>().Where(modelView => modelView.ModelClass == parentView.ModelClass));

            return(views);
        }
Exemplo n.º 19
0
        public static IModelList <IModelView> Get_Views(IModelLogicRule modelLogicRule)
        {
            var calculatedModelNodeList = new CalculatedModelNodeList <IModelView>();

            if (modelLogicRule.ModelClass == null)
            {
                return(calculatedModelNodeList);
            }
            IEnumerable <IModelObjectView> modelViews = modelLogicRule.Application.Views.OfType <IModelObjectView>().Where(view => view.ModelClass == modelLogicRule.ModelClass);

            if (modelLogicRule.ViewType != ViewType.Any)
            {
                modelViews =
                    modelViews.Where(modelView => (modelLogicRule.ViewType == ViewType.ListView
                             ? modelView is IModelListView
                             : modelView is IModelDetailView));
            }
            calculatedModelNodeList.AddRange(modelViews.Cast <IModelView>());
            return(calculatedModelNodeList);
        }
Exemplo n.º 20
0
 void CloneNodes(IModelMergedDifference mergedDifference, IModelObjectView targetObjectView, IModelObjectView sourceObjectView)
 {
     foreach (var nodePath in GetIncludedNodePaths(mergedDifference))
     {
         CalculatedModelNodeList <IModelNode> items = null;
         var needsUpdate = nodePath.NodePath == "Items" || nodePath.NodePath == "Columns";
         if (needsUpdate)
         {
             var modelDetailView = targetObjectView as IModelDetailView;
             var modelNodes      = modelDetailView != null? (IEnumerable <IModelNode>)modelDetailView.Items: ((IModelListView)targetObjectView).Columns;
             items = new CalculatedModelNodeList <IModelNode>(modelNodes);
         }
         RemoveUnrelatedNodes(targetObjectView, nodePath);
         CloneNodes(sourceObjectView, nodePath, targetObjectView);
         if (needsUpdate)
         {
             UpdateDetailViewItems(items, targetObjectView);
             UpdateColumns(items, targetObjectView, mergedDifference.InvisibleListViewColumns);
         }
     }
 }
 public static ICollection<IModelMenuItem> Get_AllItems(IModelMenu modelExtender)
 {
     CalculatedModelNodeList<IModelMenuItem> calculatedModelNodeList = new CalculatedModelNodeList<IModelMenuItem>();
     IList<IModelMenuItem> collection = RecursiveHelper.ToList<IModelMenuItem>(modelExtender, delegate(IModelMenuItem a)
     {
         if (a is IModelMenu)
         {
             return a as IModelMenu;
         }
         if (a is IModelMenuTemplateLink)
         {
             return (a as IModelMenuTemplateLink).Template;
         }
         if (a is IModelMenuFolder)
         {
             return a as IModelMenuFolder;
         }
         return null;
     }, (IModelMenuItem a) => a is IModelMenuViewItem || a is IModelMenuActionItem);
     calculatedModelNodeList.AddRange(collection);
     return calculatedModelNodeList;
 }
Exemplo n.º 22
0
        void UpdateColumns(CalculatedModelNodeList <IModelNode> columns, IModelObjectView targetObjectView, bool invisibleListViewColumns)
        {
            var modelListView = targetObjectView as IModelListView;

            if (modelListView != null)
            {
                for (int index = columns.Count - 1; index >= 0; index--)
                {
                    var column   = columns[index];
                    var id       = column.Id();
                    var viewItem = modelListView.Columns[id];
                    if (viewItem == null)
                    {
                        var source    = (ModelNode)column;
                        var cloneNode = ModelEditorHelper.AddCloneNode((ModelNode)modelListView.Columns, source, id);
                        if (invisibleListViewColumns)
                        {
                            cloneNode.Index = -1;
                        }
                    }
                }
            }
        }