예제 #1
0
        /// <inheritdoc/>
        public override void Assign(Base source)
        {
            base.Assign(source);

            ReportPage src = source as ReportPage;

            Landscape        = src.Landscape;
            PaperWidth       = src.PaperWidth;
            PaperHeight      = src.PaperHeight;
            RawPaperSize     = src.RawPaperSize;
            LeftMargin       = src.LeftMargin;
            TopMargin        = src.TopMargin;
            RightMargin      = src.RightMargin;
            BottomMargin     = src.BottomMargin;
            MirrorMargins    = src.MirrorMargins;
            FirstPageSource  = src.FirstPageSource;
            OtherPagesSource = src.OtherPagesSource;
            Duplex           = src.Duplex;
            Columns.Assign(src.Columns);
            Guides.Assign(src.Guides);
            Border = src.Border.Clone();
            Fill   = src.Fill.Clone();
            Watermark.Assign(src.Watermark);
            TitleBeforeHeader   = src.TitleBeforeHeader;
            OutlineExpression   = src.OutlineExpression;
            PrintOnPreviousPage = src.PrintOnPreviousPage;
            ResetPageNumber     = src.ResetPageNumber;
            ExtraDesignWidth    = src.ExtraDesignWidth;
            StartOnOddPage      = src.StartOnOddPage;
            StartPageEvent      = src.StartPageEvent;
            FinishPageEvent     = src.FinishPageEvent;
            ManualBuildEvent    = src.ManualBuildEvent;
        }
예제 #2
0
 /// <inheritdoc/>
 public override void Delete()
 {
     if (ReportPage != null)
     {
         ReportPage.Dispose();
         Report.Designer.InitPages(Report.Pages.IndexOf(Page) + 1);
     }
     ReportPage = null;
     base.Delete();
 }
예제 #3
0
 /// <inheritdoc/>
 public override void OnAfterInsert(InsertFrom source)
 {
     ReportPage = new ReportPage();
     Report.Pages.Add(ReportPage);
     ReportPage.SetDefaults();
     ReportPage.ReportTitle.Dispose();
     ReportPage.PageHeader.Dispose();
     ReportPage.PageFooter.Dispose();
     ReportPage.CreateUniqueName();
     FReportPage.PageName = Name;
     Report.Designer.InitPages(Report.Pages.Count);
 }
예제 #4
0
        internal virtual void UpdateWidth()
        {
            // update band width. It is needed for anchor/dock
            ReportPage page = Page as ReportPage;

            if (page != null && !(page.UnlimitedWidth && IsDesigning))
            {
                if (page.Columns.Count <= 1 || !IsColumnDependentBand)
                {
                    Width = PageWidth;
                }
            }
        }
예제 #5
0
        /// <inheritdoc/>
        public override void Assign(Base source)
        {
            base.Assign(source);

            ReportPage src = source as ReportPage;

            ExportAlias   = src.ExportAlias;
            Landscape     = src.Landscape;
            PaperWidth    = src.PaperWidth;
            PaperHeight   = src.PaperHeight;
            RawPaperSize  = src.RawPaperSize;
            LeftMargin    = src.LeftMargin;
            TopMargin     = src.TopMargin;
            RightMargin   = src.RightMargin;
            BottomMargin  = src.BottomMargin;
            MirrorMargins = src.MirrorMargins;
            AssignPreview(src);
            Columns.Assign(src.Columns);
            Guides.Assign(src.Guides);
            Border = src.Border.Clone();
            Fill   = src.Fill.Clone();
            Watermark.Assign(src.Watermark);
            TitleBeforeHeader    = src.TitleBeforeHeader;
            OutlineExpression    = src.OutlineExpression;
            PrintOnPreviousPage  = src.PrintOnPreviousPage;
            ResetPageNumber      = src.ResetPageNumber;
            ExtraDesignWidth     = src.ExtraDesignWidth;
            BackPage             = src.BackPage;
            StartOnOddPage       = src.StartOnOddPage;
            StartPageEvent       = src.StartPageEvent;
            FinishPageEvent      = src.FinishPageEvent;
            ManualBuildEvent     = src.ManualBuildEvent;
            UnlimitedHeight      = src.UnlimitedHeight;
            PrintOnRollPaper     = src.PrintOnRollPaper;
            UnlimitedWidth       = src.UnlimitedWidth;
            UnlimitedHeightValue = src.UnlimitedHeightValue;
            UnlimitedWidthValue  = src.UnlimitedWidthValue;
        }
예제 #6
0
 private void RemoveSubReport(bool delete)
 {
     if (reportPage != null)
     {
         if (Report != null)
         {
             foreach (Base obj in Report.AllObjects)
             {
                 if (obj is SubreportObject && obj != this)
                 {
                     SubreportObject subReport = obj as SubreportObject;
                     if (subReport.ReportPage == reportPage)
                     {
                         reportPage.Subreport = subReport;
                         reportPage.PageName  = subReport.Name;
                         reportPage           = null;
                         break;
                     }
                 }
             }
         }
         if (reportPage != null)
         {
             if (delete && Report != null)
             {
                 reportPage.Dispose();
             }
             else
             {
                 reportPage.Subreport = null;
                 reportPage.PageName  = reportPage.Name;
             }
             reportPage = null;
         }
     }
 }
예제 #7
0
        /// <inheritdoc/>
        public override void Serialize(FRWriter writer)
        {
            ReportPage c = writer.DiffObject as ReportPage;

            base.Serialize(writer);
            if (ExportAlias != c.ExportAlias)
            {
                writer.WriteStr("ExportAlias", ExportAlias);
            }
            if (Landscape != c.Landscape)
            {
                writer.WriteBool("Landscape", Landscape);
            }
            if (FloatDiff(PaperWidth, c.PaperWidth))
            {
                writer.WriteFloat("PaperWidth", PaperWidth);
            }
            if (FloatDiff(PaperHeight, c.PaperHeight))
            {
                writer.WriteFloat("PaperHeight", PaperHeight);
            }
            if (RawPaperSize != c.RawPaperSize)
            {
                writer.WriteInt("RawPaperSize", RawPaperSize);
            }
            if (FloatDiff(LeftMargin, c.LeftMargin))
            {
                writer.WriteFloat("LeftMargin", LeftMargin);
            }
            if (FloatDiff(TopMargin, c.TopMargin))
            {
                writer.WriteFloat("TopMargin", TopMargin);
            }
            if (FloatDiff(RightMargin, c.RightMargin))
            {
                writer.WriteFloat("RightMargin", RightMargin);
            }
            if (FloatDiff(BottomMargin, c.BottomMargin))
            {
                writer.WriteFloat("BottomMargin", BottomMargin);
            }
            if (MirrorMargins != c.MirrorMargins)
            {
                writer.WriteBool("MirrorMargins", MirrorMargins);
            }
            WritePreview(writer, c);
            Columns.Serialize(writer, c.Columns);
            if (Guides.Count > 0)
            {
                writer.WriteValue("Guides", Guides);
            }
            Border.Serialize(writer, "Border", c.Border);
            Fill.Serialize(writer, "Fill", c.Fill);
            Watermark.Serialize(writer, "Watermark", c.Watermark);
            if (TitleBeforeHeader != c.TitleBeforeHeader)
            {
                writer.WriteBool("TitleBeforeHeader", TitleBeforeHeader);
            }
            if (OutlineExpression != c.OutlineExpression)
            {
                writer.WriteStr("OutlineExpression", OutlineExpression);
            }
            if (PrintOnPreviousPage != c.PrintOnPreviousPage)
            {
                writer.WriteBool("PrintOnPreviousPage", PrintOnPreviousPage);
            }
            if (ResetPageNumber != c.ResetPageNumber)
            {
                writer.WriteBool("ResetPageNumber", ResetPageNumber);
            }
            if (ExtraDesignWidth != c.ExtraDesignWidth)
            {
                writer.WriteBool("ExtraDesignWidth", ExtraDesignWidth);
            }
            if (StartOnOddPage != c.StartOnOddPage)
            {
                writer.WriteBool("StartOnOddPage", StartOnOddPage);
            }
            if (BackPage != c.BackPage)
            {
                writer.WriteBool("BackPage", BackPage);
            }
            if (StartPageEvent != c.StartPageEvent)
            {
                writer.WriteStr("StartPageEvent", StartPageEvent);
            }
            if (FinishPageEvent != c.FinishPageEvent)
            {
                writer.WriteStr("FinishPageEvent", FinishPageEvent);
            }
            if (ManualBuildEvent != c.ManualBuildEvent)
            {
                writer.WriteStr("ManualBuildEvent", ManualBuildEvent);
            }
            if (UnlimitedHeight != c.UnlimitedHeight)
            {
                writer.WriteBool("UnlimitedHeight", UnlimitedHeight);
            }
            if (PrintOnRollPaper != c.PrintOnRollPaper)
            {
                writer.WriteBool("PrintOnRollPaper", PrintOnRollPaper);
            }
            if (UnlimitedWidth != c.UnlimitedWidth)
            {
                writer.WriteBool("UnlimitedWidth", UnlimitedWidth);
            }
            if (FloatDiff(UnlimitedHeightValue, c.UnlimitedHeightValue))
            {
                writer.WriteFloat("UnlimitedHeightValue", UnlimitedHeightValue);
            }
            if (FloatDiff(UnlimitedWidthValue, c.UnlimitedWidthValue))
            {
                writer.WriteFloat("UnlimitedWidthValue", UnlimitedWidthValue);
            }
        }
예제 #8
0
 /// <summary>
 /// Does nothing
 /// </summary>
 /// <param name="writer"></param>
 /// <param name="reportPage"></param>
 partial void WritePreview(FRWriter writer, ReportPage reportPage);
예제 #9
0
 /// <summary>
 /// Does nothing
 /// </summary>
 /// <param name="reportPage"></param>
 partial void AssignPreview(ReportPage reportPage);
예제 #10
0
 internal PageColumns(ReportPage page)
 {
     FPage      = page;
     FPositions = new FloatCollection();
     Count      = 1;
 }
예제 #11
0
 /// <summary>
 /// Does nothing
 /// </summary>
 /// <param name="writer"></param>
 /// <param name="reportPage"></param>
 private void WritePreview(FRWriter writer, ReportPage reportPage)
 {
 }
예제 #12
0
 /// <summary>
 /// Does nothing
 /// </summary>
 /// <param name="reportPage"></param>
 private void AssignPreview(ReportPage reportPage)
 {
 }