Beispiel #1
0
        /// <inheritdoc/>
        protected override bool ConstructRootElements(out ICollection <UIElement> rootElements, out UIAssetBase.UIDesign editorSettings)
        {
            var uiAsset = (UIAssetBase)Asset.Asset;

            if (uiAsset.Hierarchy.RootParts.Count > 1)
            {
                Editor.Logger.Error(UIPageRootViewModel.OneRootOnly);
                rootElements   = null;
                editorSettings = null;
                return(false);
            }

            return(base.ConstructRootElements(out rootElements, out editorSettings));
        }
Beispiel #2
0
        protected virtual bool ConstructRootElements(out ICollection <UIElement> rootElements, out UIAssetBase.UIDesign editorSettings)
        {
            var uiAsset = (UIAssetBase)AssetCloner.Clone(Asset.Asset, AssetClonerFlags.ReferenceAsNull);

            editorSettings = uiAsset.Design;
            var elements = new List <UIElement>();

            foreach (var part in uiAsset.Hierarchy.RootParts)
            {
                UIElementDesign elementDesign;
                if (uiAsset.Hierarchy.Parts.TryGetValue(part.Id, out elementDesign))
                {
                    elements.Add(elementDesign.UIElement);
                }
            }

            rootElements = elements;
            return(true);
        }