Example #1
0
        void ChangeToVariant(VariantsInfo variantsInfo)
        {
            var currentFrameViewVariantsManager = _changeVariantController.CurrentFrameViewVariantsManager;

            currentFrameViewVariantsManager.SetFieldValue("viewVariants", variantsInfo);
            _changeVariantController.RefreshChangeVariantAction();
            if (variantsInfo != null)
            {
                _changeVariantController.CurrentFrameViewVariantsManager.ChangeToVariant(_currentVariantInfo);
            }
        }
        protected virtual void EditViewVariant(ViewVariantParameterObject parameter)
        {
            VariantsInfo variantsInfo = GetVariantsInfo();

            if (variantsInfo != null)
            {
                rootModelViewVariants[variantsInfo.CurrentVariantId].Caption = parameter.Caption;
            }
            if (changeVariantController != null)
            {
                changeVariantController.CurrentFrameViewVariantsManager.RefreshVariants();
            }
        }
Example #3
0
        void DeleteViewVariantCore(bool deleteView)
        {
            var variantsInfo     = _viewVariantsModule.FrameVariantsEngine.GetVariants(View);
            var rootModelVariant = ((IModelViewVariants)_rootListView).Variants[_currentVariantInfo.Id];

            rootModelVariant.Remove();
            if (deleteView)
            {
                Application.Model.Views[_currentVariantInfo.ViewID].Remove();
            }
            var          variantInfos = variantsInfo.Items.Where(info => info.Id != _currentVariantInfo.Id).ToArray();
            VariantsInfo infos        = null;

            if (variantInfos.Length > 1)
            {
                infos = new VariantsInfo(variantsInfo.RootViewId, DefaultVariantId, variantInfos);
            }
            ChangeToVariant(infos);
        }
        protected virtual void DeleteViewVariant()         //This method does almost the same work as NewViewVariant, but in reverse order.
        {
            VariantsInfo variantsInfo = GetVariantsInfo(); //You should not be able to remove the root view variant.

            if (variantsInfo != null && variantsInfo.CurrentVariantId != GetRootViewId())
            {
                UpdateCurrentViewVariant(string.Empty);
                rootModelViewVariants[variantsInfo.CurrentVariantId].Remove();
                modelViews[variantsInfo.CurrentVariantId].Remove();
                if (changeVariantController != null)
                {
                    changeVariantController.CurrentFrameViewVariantsManager.RefreshVariants();
                }
                UpdateUserViewVariantsAction();
            }
            if (rootModelViewVariants.Count == 1)
            {
                rootModelViewVariants.ClearNodes();
            }
        }
        private string GetRootViewId()
        {
            VariantsInfo variantsInfo = GetVariantsInfo();

            return(variantsInfo != null ? variantsInfo.RootViewId : View.Id);
        }