Ejemplo n.º 1
0
        public Rect CalcSize(XdObjectJson xdObject, Rect rect)
        {
            var clipPath  = xdObject.Meta.Ux.ClipPathResources.Children[0];
            var shapeRect = ShapeObjectParser.CalcSize(clipPath);

            shapeRect.position += new Vector2(clipPath.Transform?.Tx ?? 0f, clipPath.Transform?.Ty ?? 0f);
            return(shapeRect);
        }
Ejemplo n.º 2
0
        public (IComponent[], IAsset[]) Render(XdObjectJson xdObject, Obb obb, XdAssetHolder assetHolder)
        {
            var(imageComponent, assets) = ShapeObjectParser.RenderImage(xdObject, obb, assetHolder);

            IComponent scrollbar = new VerticalScrollbarComponent(imageComponent);

            if (xdObject.HasParameter("horizontal"))
            {
                scrollbar = new HorizontalScrollbarComponent(imageComponent);
            }
            return(new[] { scrollbar }, assets);
        }
Ejemplo n.º 3
0
        public (IComponent[], IAsset[]) Render(XdObjectJson xdObject, XdAssetHolder assetHolder, IObbGetter obbGetter)
        {
            var obb      = obbGetter.Get(xdObject);
            var clipPath = xdObject.Meta.Ux.ClipPathResources.Children[0];

            if (SvgUtil.IsAlphaOnly(clipPath))
            {
                return(new IComponent[] { }, new IAsset[] { });
            }

            var(imageComponent, assets) = ShapeObjectParser.RenderImage(clipPath, obb, assetHolder);
            return(new IComponent[] { new MaskComponent(imageComponent.Sprite) }, assets);
        }
Ejemplo n.º 4
0
        public bool Is(XdObjectJson xdObject, XdObjectJson[] parents)
        {
            var isLinkedElement = new[] { xdObject }.Concat(parents).Any(x =>
            {
                var hasParameter = x.HasParameter("vector");
                return(hasParameter);
            });

            bool IsShapeOnly(XdObjectJson x)
            {
                if (x.Type != "group" && !ShapeObjectParser.Is(x))
                {
                    return(false);
                }
                return((x.Group?.Children ?? new XdObjectJson[] { }).All(IsShapeOnly));
            }

            return(isLinkedElement && IsShapeOnly(xdObject));
        }
Ejemplo n.º 5
0
 public bool Is(XdObjectJson xdObject)
 {
     return(xdObject.NameEndsWith("scrollbar") && ShapeObjectParser.Is(xdObject));
 }
Ejemplo n.º 6
0
 public Rect CalcSize(XdObjectJson xdObject)
 {
     return(ShapeObjectParser.CalcSize(xdObject));
 }
Ejemplo n.º 7
0
        public bool Is(XdObjectJson xdObject)
        {
            var shapeObjectParser = new ShapeObjectParser();

            return(xdObject.NameEndsWith("scrollbar") && shapeObjectParser.Is(xdObject));
        }
Ejemplo n.º 8
0
        public Rect CalcSize(XdObjectJson xdObject)
        {
            var shapeObjectParser = new ShapeObjectParser();

            return(shapeObjectParser.CalcSize(xdObject));
        }