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

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

            root.style.SetDistributeExtraSpaceHorizontal(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.SetDistributeExtraSpaceHorizontal(SpaceDistribution.BeforeContent, StyleState.Normal);
            app.Update();

            Assert.AreEqual(new Rect(190, 0, 200, 100), root[0].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(400, 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(400, 220, 200, 100), root[4].layoutResult.AllocatedRect);

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

            Assert.AreEqual(new Rect(0, 0, 200, 100), root[0].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(400, 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(200, 220, 200, 100), root[4].layoutResult.AllocatedRect);

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

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

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

            Assert.AreEqual(new Rect(95, 0, 200, 100), root[0].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(305, 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(200, 220, 200, 100), root[4].layoutResult.AllocatedRect);
        }
Esempio n. 2
0
        public void DistributeSpaceInTrack()
        {
            MockApplication app = MockApplication.Setup <FlexHorizontalWrap_DistributeSpaceInTrack>();
            FlexHorizontalWrap_DistributeSpaceInTrack root = (FlexHorizontalWrap_DistributeSpaceInTrack)app.RootElement;

            root.style.SetDistributeExtraSpaceHorizontal(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.SetDistributeExtraSpaceHorizontal(SpaceDistribution.BeforeContent, StyleState.Normal);
            app.Update();

            Assert.AreEqual(new Rect(200, 0, 200, 100), root[0].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(400, 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(400, 200, 200, 100), root[4].layoutResult.AllocatedRect);

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

            Assert.AreEqual(new Rect(0, 0, 200, 100), root[0].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(400, 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(200, 200, 200, 100), root[4].layoutResult.AllocatedRect);

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

            Assert.AreEqual(new Rect(50, 0, 200, 100), root[0].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(350, 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(200, 200, 200, 100), root[4].layoutResult.AllocatedRect);

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

            Assert.AreEqual(new Rect(100, 0, 200, 100), root[0].layoutResult.AllocatedRect);
            Assert.AreEqual(new Rect(300, 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(200, 200, 200, 100), root[4].layoutResult.AllocatedRect);
        }