public IVisio.Page CreatePage(FormPage formpage)
        {
            this._form_page = formpage;

            this._page      = this._visio_pages.Add();
            this._page.Name = formpage.Name;

            // Update the Page Cells
            var pagesheet = this._page.PageSheet;
            var writer    = new SrcWriter();

            var page_fmt_cells = new Pages.PageFormatCells();

            page_fmt_cells.Width  = formpage.Size.Width;
            page_fmt_cells.Height = formpage.Size.Height;

            var page_print_cells = new Pages.PagePrintCells();

            page_print_cells.LeftMargin   = formpage.PageMargin.Left;
            page_print_cells.RightMargin  = formpage.PageMargin.Right;
            page_print_cells.TopMargin    = formpage.PageMargin.Top;
            page_print_cells.BottomMargin = formpage.PageMargin.Bottom;

            writer.SetValues(page_fmt_cells);
            writer.SetValues(page_print_cells);

            writer.CommitFormulas(pagesheet);

            this.Reset();
            return(this._page);
        }
示例#2
0
        public IVisio.Page CreatePage(FormPage formpage)
        {
            this._form_page = formpage;

            this._page      = this._visio_pages.Add();
            this._page.Name = formpage.Name;

            // Update the Page Cells
            var pagesheet = this._page.PageSheet;
            var writer    = new SrcWriter();

            var pagecells = new Pages.PageCells();

            pagecells.PageWidth         = formpage.Size.Width;
            pagecells.PageHeight        = formpage.Size.Height;
            pagecells.PrintLeftMargin   = formpage.Margin.Left;
            pagecells.PrintRightMargin  = formpage.Margin.Right;
            pagecells.PrintTopMargin    = formpage.Margin.Top;
            pagecells.PrintBottomMargin = formpage.Margin.Bottom;
            pagecells.SetFormulas(writer);

            writer.Commit(pagesheet);

            this.Reset();
            return(this._page);
        }
        public void ShapeSheet_Writer_ResultsInt_SingleShape()
        {
            var page1  = this.GetNewPage();
            var shape1 = page1.DrawRectangle(0, 0, 1, 1);

            // Setup the modifications to the cell values
            var writer = new SrcWriter();

            writer.SetValue(LinePattern, 7);

            writer.CommitResults(shape1);

            // Build the query
            var query       = new CellQuery();
            var col_linepat = query.Columns.Add(LinePattern, nameof(LinePattern));

            // Retrieve the values
            var data_formulas = query.GetFormulas(shape1);
            var data_results  = query.GetResults <double>(shape1);

            int rownum = 0;

            // Verify
            Assert.AreEqual("7", data_formulas[rownum][col_linepat]);
            Assert.AreEqual(7, data_results[rownum][col_linepat]);
            page1.Delete(0);
        }
        public void Check_Consistent_ResultTypes()
        {
            var page1  = this.GetNewPage();
            var shape1 = page1.DrawRectangle(0, 0, 1, 1);

            // Setup the modifications to the cell values
            var writer = new SrcWriter();

            writer.SetResult(LinePattern, "7");
            writer.SetResult(XFormPinX, 2);
            writer.Commit(shape1);

            // Build the query
            var query       = new CellQuery();
            var col_linepat = query.Columns.Add(LinePattern, nameof(LinePattern));
            var col_pinx    = query.Columns.Add(XFormPinX, nameof(XFormPinX));

            // Retrieve the values
            var data_formulas = query.GetFormulas(shape1);
            var data_results  = query.GetResults <double>(shape1);

            // Verify
            Assert.AreEqual("7", data_formulas.Cells[col_linepat]);
            Assert.AreEqual(7, data_results.Cells[col_linepat]);

            Assert.AreEqual("2 in", data_formulas.Cells[col_pinx]);
            Assert.AreEqual(2, data_results.Cells[col_pinx]);

            page1.Delete(0);
        }
示例#5
0
 public void SetFormulas(SrcWriter writer)
 {
     foreach (var pair in this.SrcValuePairs)
     {
         writer.SetFormula(pair.Src, pair.Value);
     }
 }
示例#6
0
        public void ShapeSheet_Writer_ResultsInt_SingleShape()
        {
            var page1  = this.GetNewPage();
            var shape1 = page1.DrawRectangle(0, 0, 1, 1);

            // Setup the modifications to the cell values
            var writer = new SrcWriter();

            writer.SetResult(ShapeSheetWriterTests.src_linepat, 7);

            writer.Commit(shape1);

            // Build the query
            var query       = new ShapeSheetQuery();
            var col_linepat = query.AddCell(ShapeSheetWriterTests.src_linepat, "LinePattern");

            // Retrieve the values
            var data_formulas = query.GetFormulas(shape1);
            var data_results  = query.GetResults <double>(shape1);

            // Verify
            Assert.AreEqual("7", data_formulas.Cells[col_linepat]);
            Assert.AreEqual(7, data_results.Cells[col_linepat]);
            page1.Delete(0);
        }
示例#7
0
        public void Check_Consistent_ResultTypes()
        {
            var page1  = this.GetNewPage();
            var shape1 = page1.DrawRectangle(0, 0, 1, 1);

            // Setup the modifications to the cell values
            var writer = new SrcWriter();

            writer.SetResult(ShapeSheetWriterTests.src_linepat, "7");
            writer.SetResult(VA.ShapeSheet.SrcConstants.XFormPinX, 2);
            writer.Commit(shape1);

            // Build the query
            var query       = new ShapeSheetQuery();
            var col_linepat = query.AddCell(ShapeSheetWriterTests.src_linepat, "LinePattern");
            var col_pinx    = query.AddCell(VA.ShapeSheet.SrcConstants.XFormPinX, "PinX");

            // Retrieve the values
            var data_formulas = query.GetFormulas(shape1);
            var data_results  = query.GetResults <double>(shape1);

            // Verify
            Assert.AreEqual("7", data_formulas.Cells[col_linepat]);
            Assert.AreEqual(7, data_results.Cells[col_linepat]);

            Assert.AreEqual("2 in", data_formulas.Cells[col_pinx]);
            Assert.AreEqual(2, data_results.Cells[col_pinx]);

            page1.Delete(0);
        }
示例#8
0
 public void SetFormulas(SrcWriter writer, short row)
 {
     foreach (var pair in this.SrcFormulaPairs)
     {
         var new_src = pair.Src.CloneWithNewRow(row);
         writer.SetFormula(new_src, pair.Formula);
     }
 }
        public void ShapeSheet_Writer_Write_nothing()
        {
            var page1  = this.GetNewPage();
            var shape1 = page1.DrawRectangle(0, 0, 1, 1);

            // Setup the modifications to the cell values
            var writer = new SrcWriter();

            writer.CommitFormulas(shape1);

            page1.Delete(0);
        }