Exemplo n.º 1
0
        public void NextAndPrevInSelectionSeq()
        {
            var styles = new AssembledStyles();
            var root   = new RootBox(styles);

            Assert.That(root.NextInSelectionSequence(true), Is.Null);
            Assert.That(root.PreviousInSelectionSequence, Is.Null);
            var block = new BlockBox(styles, Color.Red, 6000, 6000);

            root.AddBox(block);
            Assert.That(root.NextInSelectionSequence(true), Is.EqualTo(block));
            Assert.That(block.PreviousInSelectionSequence, Is.EqualTo(root));
            var div = new DivBox(styles);

            root.AddBox(div);
            Assert.That(block.NextInSelectionSequence(true), Is.EqualTo(div));
            Assert.That(div.PreviousInSelectionSequence, Is.EqualTo(block));
            var divChild = new DivBox(styles);

            div.AddBox(divChild);
            var block2 = new BlockBox(styles, Color.Red, 6000, 6000);

            divChild.AddBox(block2);
            var block3 = new BlockBox(styles, Color.Red, 6000, 6000);

            divChild.AddBox(block3);
            var block4 = new BlockBox(styles, Color.Red, 6000, 6000);

            div.AddBox(block4);
            // up and forward
            Assert.That(block3.NextInSelectionSequence(true), Is.EqualTo(block4));
            Assert.That(block4.PreviousInSelectionSequence, Is.EqualTo(block3));
            // Can go back from a box to a previous empty group
            var emptyDiv = new DivBox(styles);

            root.AddBox(emptyDiv);
            var block5 = new BlockBox(styles, Color.Red, 6000, 6000);

            root.AddBox(block5);
            Assert.That(emptyDiv.NextInSelectionSequence(true), Is.EqualTo(block5));
            Assert.That(block5.PreviousInSelectionSequence, Is.EqualTo(emptyDiv));
            Assert.That(div.NextInSelectionSequence(true), Is.EqualTo(divChild));
            Assert.That(div.NextInSelectionSequence(false), Is.EqualTo(emptyDiv));
        }
Exemplo n.º 2
0
		public void NextAndPrevInSelectionSeq()
		{
			var styles = new AssembledStyles();
			var root = new RootBox(styles);
			Assert.That(root.NextInSelectionSequence(true), Is.Null);
			Assert.That(root.PreviousInSelectionSequence, Is.Null);
			var block = new BlockBox(styles, Color.Red, 6000, 6000);
			root.AddBox(block);
			Assert.That(root.NextInSelectionSequence(true), Is.EqualTo(block));
			Assert.That(block.PreviousInSelectionSequence, Is.EqualTo(root));
			var div = new DivBox(styles);
			root.AddBox(div);
			Assert.That(block.NextInSelectionSequence(true), Is.EqualTo(div));
			Assert.That(div.PreviousInSelectionSequence, Is.EqualTo(block));
			var divChild = new DivBox(styles);
			div.AddBox(divChild);
			var block2 = new BlockBox(styles, Color.Red, 6000, 6000);
			divChild.AddBox(block2);
			var block3 = new BlockBox(styles, Color.Red, 6000, 6000);
			divChild.AddBox(block3);
			var block4 = new BlockBox(styles, Color.Red, 6000, 6000);
			div.AddBox(block4);
			// up and forward
			Assert.That(block3.NextInSelectionSequence(true), Is.EqualTo(block4));
			Assert.That(block4.PreviousInSelectionSequence, Is.EqualTo(block3));
			// Can go back from a box to a previous empty group
			var emptyDiv = new DivBox(styles);
			root.AddBox(emptyDiv);
			var block5 = new BlockBox(styles, Color.Red, 6000, 6000);
			root.AddBox(block5);
			Assert.That(emptyDiv.NextInSelectionSequence(true), Is.EqualTo(block5));
			Assert.That(block5.PreviousInSelectionSequence, Is.EqualTo(emptyDiv));
			Assert.That(div.NextInSelectionSequence(true), Is.EqualTo(divChild));
			Assert.That(div.NextInSelectionSequence(false), Is.EqualTo(emptyDiv));

		}