public void DiffRuns() { var styles = new AssembledStyles(); var root = new RootBoxFdo(styles); var mock1 = new MockData1(23, 23); mock1.SimpleThree = "new stuff"; var mock2 = new MockData1(23, 23); mock2.SimpleThree = "old contents"; var mock3 = new MockData1(23, 23); mock3.SimpleThree = "different things"; var engine = new FakeRenderEngine() { Ws = 23, SegmentHeight = 13 }; var factory = new FakeRendererFactory(); factory.SetRenderer(23, engine); root.Builder.Show(Paragraph.Containing(Display.Of(() => mock1.SimpleThree, 23), Display.Of(() => mock2.SimpleThree, 23), Display.Of(() => mock3.SimpleThree, 23))); var layoutArgs = MakeLayoutInfo(Int32.MaxValue / 2, m_gm.VwGraphics, factory); root.Layout(layoutArgs); PaintTransform ptrans = new PaintTransform(2, 2, 96, 96, 0, 0, 96, 96); MockSite site = new MockSite(); site.m_transform = ptrans; site.m_vwGraphics = m_gm.VwGraphics; root.Site = site; int x = FakeRenderEngine.SimulatedWidth("new stuf") + 2; var location = new Point(x, 8); EventArgs e = new EventArgs(); MouseEventArgs m = new MouseEventArgs(MouseButtons.Left, 1, location.X, location.Y, 0); root.OnMouseDown(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnMouseClick(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnDoubleClick(e); Assert.That(!root.Selection.IsInsertionPoint, "Should be ranged selection"); Assert.That((root.Selection as RangeSelection).SelectedText(), Is.EqualTo("stuff")); x = FakeRenderEngine.SimulatedWidth("new stuff") + 2; location = new Point(x, 8); m = new MouseEventArgs(MouseButtons.Left, 1, location.X, location.Y, 0); root.OnMouseDown(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnMouseClick(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnDoubleClick(e); Assert.That(!root.Selection.IsInsertionPoint, "Should be ranged selection"); Assert.That((root.Selection as RangeSelection).SelectedText(), Is.EqualTo("old ")); x = FakeRenderEngine.SimulatedWidth("new stuff old contents") + 2; location = new Point(x, 8); m = new MouseEventArgs(MouseButtons.Left, 1, location.X, location.Y, 0); root.OnMouseDown(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnMouseClick(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnDoubleClick(e); Assert.That(!root.Selection.IsInsertionPoint, "Should be ranged selection"); Assert.That((root.Selection as RangeSelection).SelectedText(), Is.EqualTo("different ")); }
public void Select() { var styles = new AssembledStyles(); var root = new RootBoxFdo(styles); var mock1 = new MockData1(23, 23); mock1.SimpleThree = "new old contents"; var engine = new FakeRenderEngine() { Ws = 23, SegmentHeight = 13 }; var factory = new FakeRendererFactory(); factory.SetRenderer(23, engine); root.Builder.Show(Display.Of(() => mock1.SimpleThree, 23)); var layoutArgs = MakeLayoutInfo(Int32.MaxValue / 2, m_gm.VwGraphics, factory); root.Layout(layoutArgs); PaintTransform ptrans = new PaintTransform(2, 2, 96, 96, 0, 0, 96, 96); MockSite site = new MockSite(); site.m_transform = ptrans; site.m_vwGraphics = m_gm.VwGraphics; root.Site = site; int x = FakeRenderEngine.SimulatedWidth("new ") + 2; var location = new Point(x, 8); EventArgs e = new EventArgs(); MouseEventArgs m = new MouseEventArgs(MouseButtons.Left, 1, location.X, location.Y, 0); root.OnMouseDown(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnDoubleClick(e); Assert.That(!root.Selection.IsInsertionPoint, "Should be ranged selection"); Assert.That((root.Selection as RangeSelection).SelectedText(), Is.EqualTo("old ")); mock1.SimpleThree = "new old:contents"; x = FakeRenderEngine.SimulatedWidth("new o") + 2; location = new Point(x, 8); m = new MouseEventArgs(MouseButtons.Left, 1, location.X, location.Y, 0); root.OnMouseDown(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnMouseClick(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnDoubleClick(e); Assert.That(!root.Selection.IsInsertionPoint, "Should be ranged selection"); Assert.That((root.Selection as RangeSelection).SelectedText(), Is.EqualTo("old")); mock1.SimpleThree = "new(old contents"; x = FakeRenderEngine.SimulatedWidth("new ol") + 2; location = new Point(x, 8); m = new MouseEventArgs(MouseButtons.Left, 1, location.X, location.Y, 0); root.OnMouseDown(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnMouseClick(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnDoubleClick(e); Assert.That(!root.Selection.IsInsertionPoint, "Should be ranged selection"); Assert.That((root.Selection as RangeSelection).SelectedText(), Is.EqualTo("old ")); mock1.SimpleThree = "newo1dcontents"; x = FakeRenderEngine.SimulatedWidth("new o1d") + 2; location = new Point(x, 8); m = new MouseEventArgs(MouseButtons.Left, 1, location.X, location.Y, 0); root.OnMouseDown(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnMouseClick(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnDoubleClick(e); Assert.That(!root.Selection.IsInsertionPoint, "Should be ranged selection"); Assert.That((root.Selection as RangeSelection).SelectedText(), Is.EqualTo("newo1dcontents")); }
public void DiffWS() { var tsf = TsStrFactoryClass.Create(); var styles = new AssembledStyles(); var root = new RootBoxFdo(styles); var mock1 = new MockData1(23, 23); mock1.SimpleTwo = tsf.MakeString("newoldcontents", 23); var bldr = mock1.SimpleTwo.GetBldr(); bldr.SetIntPropValues(3, 6, (int)FwTextPropType.ktptWs, (int)FwTextPropVar.ktpvDefault, 24); bldr.SetIntPropValues(6, 14, (int)FwTextPropType.ktptWs, (int)FwTextPropVar.ktpvDefault, 25); mock1.SimpleTwo = bldr.GetString(); var engine = new FakeRenderEngine() { Ws = 23, SegmentHeight = 13 }; var factory = new FakeRendererFactory(); factory.SetRenderer(23, engine); root.Builder.Show(Display.Of(() => mock1.SimpleTwo)); var layoutArgs = MakeLayoutInfo(Int32.MaxValue / 2, m_gm.VwGraphics, factory); root.Layout(layoutArgs); PaintTransform ptrans = new PaintTransform(2, 2, 96, 96, 0, 0, 96, 96); MockSite site = new MockSite(); site.m_transform = ptrans; site.m_vwGraphics = m_gm.VwGraphics; root.Site = site; int x = FakeRenderEngine.SimulatedWidth("ne") + 2; var location = new Point(x, 8); EventArgs e = new EventArgs(); MouseEventArgs m = new MouseEventArgs(MouseButtons.Left, 1, location.X, location.Y, 0); root.OnMouseDown(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnMouseClick(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnDoubleClick(e); Assert.That(!root.Selection.IsInsertionPoint, "Should be ranged selection"); Assert.That((root.Selection as RangeSelection).SelectedText(), Is.EqualTo("new")); x = FakeRenderEngine.SimulatedWidth("new") + 2; location = new Point(x, 8); m = new MouseEventArgs(MouseButtons.Left, 1, location.X, location.Y, 0); root.OnMouseDown(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnMouseClick(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnDoubleClick(e); Assert.That(!root.Selection.IsInsertionPoint, "Should be ranged selection"); Assert.That((root.Selection as RangeSelection).SelectedText(), Is.EqualTo("old")); x = FakeRenderEngine.SimulatedWidth("newold") + 2; location = new Point(x, 8); m = new MouseEventArgs(MouseButtons.Left, 1, location.X, location.Y, 0); root.OnMouseDown(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnMouseClick(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnDoubleClick(e); Assert.That(!root.Selection.IsInsertionPoint, "Should be ranged selection"); Assert.That((root.Selection as RangeSelection).SelectedText(), Is.EqualTo("contents")); x = FakeRenderEngine.SimulatedWidth("newold"); location = new Point(x, 8); // at the right edge of the d at the end of newold m = new MouseEventArgs(MouseButtons.Left, 1, location.X, location.Y, 0); root.OnMouseDown(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnMouseClick(m, Keys.None, site.m_vwGraphics, site.m_transform); root.OnDoubleClick(e); Assert.That(!root.Selection.IsInsertionPoint, "Should be ranged selection"); Assert.That((root.Selection as RangeSelection).SelectedText(), Is.EqualTo("old")); }