Esempio n. 1
0
        private static IModelObjectView NewModelView(IModelViews modelViews, CloneModelViewAttribute cloneViewAttribute, IModelClass modelClass)
        {
            if (cloneViewAttribute.ViewType == CloneViewType.ListView)
            {
                var listView = modelViews.AddNode <IModelListView>(cloneViewAttribute.ViewId);
                listView.ModelClass = modelClass;
                ModelListViewNodesGenerator.GenerateNodes(listView, modelClass);
                return(listView);
            }

            if (cloneViewAttribute.ViewType == CloneViewType.LookupListView)
            {
                var listViewModel = modelViews.AddNode <IModelListView>(cloneViewAttribute.ViewId);
                listViewModel.ModelClass = modelClass;
                listViewModel.SetValue("IsLookupView", true);
                if (!modelClass.TypeInfo.IsPersistent)
                {
                    listViewModel.DataAccessMode = CollectionSourceDataAccessMode.Client;
                }
                listViewModel.IsGroupPanelVisible = false;
                listViewModel.AutoExpandAllGroups = false;
                listViewModel.IsFooterVisible     = false;
                return(listViewModel);
            }

            if (cloneViewAttribute.ViewType == CloneViewType.DetailView)
            {
                var detailView = modelViews.AddNode <IModelDetailView>(cloneViewAttribute.ViewId);
                detailView.ModelClass = modelClass;
                return(detailView);
            }

            throw new NotImplementedException();
        }