Esempio n. 1
0
        public void DistributeSpaceBetweenTracksWithGap()
        {
            MockApplication app = MockApplication.Setup <FlexHorizontalWrap_DistributeSpaceBetweenTracks>();
            FlexHorizontalWrap_DistributeSpaceBetweenTracks root = (FlexHorizontalWrap_DistributeSpaceBetweenTracks)app.RootElement;

            root.style.SetFlexLayoutGapHorizontal(10, StyleState.Normal);
            root.style.SetFlexLayoutGapVertical(10, StyleState.Normal);

            root.style.SetDistributeExtraSpaceVertical(SpaceDistribution.AfterContent, StyleState.Normal);
            app.Update();

            Assert.AreEqual(new Rect(0, 0, 200, 100), root[0].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(210, 0, 200, 100), root[1].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 110, 390, 100), root[2].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(400, 110, 200, 100), root[3].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 220, 200, 100), root[4].layoutResult.AllocatedRect);

            root.style.SetDistributeExtraSpaceVertical(SpaceDistribution.BeforeContent, StyleState.Normal);
            app.Update();

            Assert.AreEqual(new Rect(0, 280, 200, 100), root[0].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(210, 280, 200, 100), root[1].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 390, 390, 100), root[2].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(400, 390, 200, 100), root[3].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 500, 200, 100), root[4].layoutResult.AllocatedRect);

            root.style.SetDistributeExtraSpaceVertical(SpaceDistribution.BetweenContent, StyleState.Normal);
            app.Update();

            Assert.AreEqual(new Rect(0, 0, 200, 100), root[0].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(210, 0, 200, 100), root[1].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 250, 390, 100), root[2].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(400, 250, 200, 100), root[3].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 500, 200, 100), root[4].layoutResult.AllocatedRect);

            // gap is not applied when AroundContent distribution is used.
            root.style.SetDistributeExtraSpaceVertical(SpaceDistribution.AroundContent, StyleState.Normal);
            app.Update();

            Assert.AreEqual(new Rect(0, 50, 200, 100), root[0].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(210, 50, 200, 100), root[1].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 250, 390, 100), root[2].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(400, 250, 200, 100), root[3].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 450, 200, 100), root[4].layoutResult.AllocatedRect);

            root.style.SetDistributeExtraSpaceVertical(SpaceDistribution.CenterContent, StyleState.Normal);
            app.Update();

            Assert.AreEqual(new Rect(0, 140, 200, 100), root[0].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(210, 140, 200, 100), root[1].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 250, 390, 100), root[2].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(400, 250, 200, 100), root[3].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 360, 200, 100), root[4].layoutResult.AllocatedRect);
        }
Esempio n. 2
0
        public void DistributeSpaceBetweenTracks()
        {
            MockApplication app = MockApplication.Setup <FlexHorizontalWrap_DistributeSpaceBetweenTracks>();
            FlexHorizontalWrap_DistributeSpaceBetweenTracks root = (FlexHorizontalWrap_DistributeSpaceBetweenTracks)app.RootElement;

            root.style.SetDistributeExtraSpaceVertical(SpaceDistribution.AfterContent, StyleState.Normal);
            app.Update();

            Assert.AreEqual(new Rect(0, 0, 200, 100), root[0].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(200, 0, 200, 100), root[1].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 100, 400, 100), root[2].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(400, 100, 200, 100), root[3].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 200, 200, 100), root[4].layoutResult.AllocatedRect);

            root.style.SetDistributeExtraSpaceVertical(SpaceDistribution.BeforeContent, StyleState.Normal);
            app.Update();

            Assert.AreEqual(new Rect(0, 300, 200, 100), root[0].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(200, 300, 200, 100), root[1].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 400, 400, 100), root[2].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(400, 400, 200, 100), root[3].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 500, 200, 100), root[4].layoutResult.AllocatedRect);

            root.style.SetDistributeExtraSpaceVertical(SpaceDistribution.BetweenContent, StyleState.Normal);
            app.Update();

            Assert.AreEqual(new Rect(0, 0, 200, 100), root[0].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(200, 0, 200, 100), root[1].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 250, 400, 100), root[2].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(400, 250, 200, 100), root[3].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 500, 200, 100), root[4].layoutResult.AllocatedRect);

            root.style.SetDistributeExtraSpaceVertical(SpaceDistribution.AroundContent, StyleState.Normal);
            app.Update();

            Assert.AreEqual(new Rect(0, 50, 200, 100), root[0].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(200, 50, 200, 100), root[1].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 250, 400, 100), root[2].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(400, 250, 200, 100), root[3].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 450, 200, 100), root[4].layoutResult.AllocatedRect);

            root.style.SetDistributeExtraSpaceVertical(SpaceDistribution.CenterContent, StyleState.Normal);
            app.Update();

            Assert.AreEqual(new Rect(0, 150, 200, 100), root[0].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(200, 150, 200, 100), root[1].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 250, 400, 100), root[2].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(400, 250, 200, 100), root[3].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(0, 350, 200, 100), root[4].layoutResult.AllocatedRect);
        }