Exemple #1
0
        public FigmaBundleViewBase GetBundleView(FigmaBundle bundle, string name, FigmaNode figmaNode)
        {
            if (figmaNode.IsComponentContainer())
            {
                return(new FigmaContainerBundleWindow(bundle, name, figmaNode));
            }

            if (figmaNode is IFigmaNodeContainer nodeContainer)
            {
                foreach (var figmaInstance in nodeContainer.children)
                {
                    if (figmaInstance.IsWindowOfType(FigmaControlType.Window))
                    {
                        return(new FigmaBundleWindow(bundle, name, figmaNode));
                    }
                    if (figmaInstance.IsWindowOfType(FigmaControlType.WindowSheet))
                    {
                        return(new FigmaBundleWindow(bundle, name, figmaNode));
                    }
                    if (figmaInstance.IsWindowOfType(FigmaControlType.WindowPanel))
                    {
                        return(new FigmaBundleWindow(bundle, name, figmaNode));
                    }
                }
            }
            return(new FigmaBundleView(bundle, name, figmaNode));
        }