Ejemplo n.º 1
0
 internal PageBreak(RenderingContext renderingContext, IReportScope reportScope, PageBreakLocation pageBreaklocation)
 {
     m_renderingContext            = renderingContext;
     m_reportScope                 = reportScope;
     m_pageBreaklocation           = pageBreaklocation;
     m_isOldSnapshotOrStaticMember = true;
 }
Ejemplo n.º 2
0
 internal void SetPageBreakLocation(PageBreakLocation pageBreakLocation)
 {
     if (m_isOldSnapshot)
     {
         m_propagatedPageBreak = pageBreakLocation;
     }
 }
Ejemplo n.º 3
0
 public PageBreak(RenderingContext renderingContext, IReportScope reportScope, PageBreakLocation pageBreaklocation)
 {
     this.m_renderingContext            = renderingContext;
     this.m_reportScope                 = reportScope;
     this.m_pageBreaklocation           = pageBreaklocation;
     this.m_isOldSnapshotOrStaticMember = true;
 }
Ejemplo n.º 4
0
 public void SetPageBreakLocation(PageBreakLocation pageBreakLocation)
 {
     if (base.m_isOldSnapshot)
     {
         this.m_propagatedPageBreak = pageBreakLocation;
     }
 }
Ejemplo n.º 5
0
        public void Deserialize(IntermediateFormatReader reader)
        {
            reader.RegisterDeclaration(PageBreak.m_Declaration);
            while (reader.NextMember())
            {
                switch (reader.CurrentMember.MemberName)
                {
                case MemberName.PageBreakLocation:
                    this.m_pageBreakLocation = (PageBreakLocation)reader.ReadEnum();
                    break;

                case MemberName.Disabled:
                    this.m_disabled = (ExpressionInfo)reader.ReadRIFObject();
                    break;

                case MemberName.ResetPageNumber:
                    this.m_resetPageNumber = (ExpressionInfo)reader.ReadRIFObject();
                    break;

                default:
                    Global.Tracer.Assert(false);
                    break;
                }
            }
        }
Ejemplo n.º 6
0
 internal static bool HasPageBreakAtEnd(PageBreakLocation pageBreakLoc)
 {
     if (pageBreakLoc != PageBreakLocation.End)
     {
         return(pageBreakLoc == PageBreakLocation.StartAndEnd);
     }
     return(true);
 }
 public static bool HasPageBreakAtStart(PageBreakLocation pageBreakLoc)
 {
     if (pageBreakLoc != PageBreakLocation.Start)
     {
         return(pageBreakLoc == PageBreakLocation.StartAndEnd);
     }
     return(true);
 }
        private PageBreakProperties(PageBreak pageBreak, object source)
        {
            PageBreakLocation breakLocation = pageBreak.BreakLocation;

            this.m_pageBreakAtStart = (breakLocation == PageBreakLocation.Start || breakLocation == PageBreakLocation.StartAndEnd);
            this.m_pageBreakAtEnd   = (breakLocation == PageBreakLocation.End || breakLocation == PageBreakLocation.StartAndEnd);
            this.m_resetPageNumber  = pageBreak.Instance.ResetPageNumber;
            this.m_source           = source;
        }
Ejemplo n.º 9
0
        private PageBreakLocation CalculatePropagatedPageBreak(DataRegionMemberCollection <TablixMember> members, bool thisOrAnscestorHasToggle, bool isTable)
        {
            PageBreakLocation result          = PageBreakLocation.None;
            bool             flag             = false;
            ShimTablixMember shimTablixMember = null;
            int num = 0;

            while (num < members.Count)
            {
                ShimTablixMember shimTablixMember2 = (ShimTablixMember)((ReportElementCollectionBase <TablixMember>)members)[num];
                if (shimTablixMember2.IsStatic)
                {
                    if (isTable)
                    {
                        if (shimTablixMember2.RepeatOnNewPage)
                        {
                            flag = true;
                        }
                    }
                    else if (shimTablixMember2.Children != null && shimTablixMember2.Children.Count > 0)
                    {
                        result = this.CalculatePropagatedPageBreak(shimTablixMember2.Children, thisOrAnscestorHasToggle, false);
                    }
                    num++;
                    continue;
                }
                shimTablixMember = shimTablixMember2;
                break;
            }
            if (shimTablixMember != null)
            {
                thisOrAnscestorHasToggle |= (shimTablixMember.Visibility != null && shimTablixMember.Visibility.HiddenState == SharedHiddenState.Sometimes);
                PageBreakLocation pageBreakLocation = PageBreakLocation.None;
                AspNetCore.ReportingServices.ReportRendering.Group currentShimRenderGroup = shimTablixMember.Group.CurrentShimRenderGroup;
                if (currentShimRenderGroup != null)
                {
                    pageBreakLocation = PageBreakHelper.GetPageBreakLocation(currentShimRenderGroup.PageBreakAtStart, currentShimRenderGroup.PageBreakAtEnd);
                }
                if (shimTablixMember.Children != null)
                {
                    pageBreakLocation = PageBreakHelper.MergePageBreakLocations(this.CalculatePropagatedPageBreak(shimTablixMember.Children, thisOrAnscestorHasToggle, isTable), pageBreakLocation);
                }
                shimTablixMember.SetPropagatedPageBreak(pageBreakLocation);
                if ((!isTable || flag) && pageBreakLocation != 0)
                {
                    if (!thisOrAnscestorHasToggle)
                    {
                        result = pageBreakLocation;
                    }
                    shimTablixMember.SetPropagatedPageBreak(PageBreakLocation.Between);
                }
            }
            return(result);
        }
Ejemplo n.º 10
0
        private void CalculatePropagatedPageBreak()
        {
            AspNetCore.ReportingServices.ReportRendering.DataRegion dataRegion = (AspNetCore.ReportingServices.ReportRendering.DataRegion)base.m_owner.RenderReportItem;
            bool thisOrAnscestorHasToggle       = dataRegion.SharedHidden == AspNetCore.ReportingServices.ReportRendering.SharedHiddenState.Sometimes;
            PageBreakLocation pageBreakLocation = PageBreakHelper.GetPageBreakLocation(dataRegion.PageBreakAtStart, dataRegion.PageBreakAtEnd);

            if (base.m_members != null && base.m_members.Count > 0)
            {
                pageBreakLocation = PageBreakHelper.MergePageBreakLocations(this.CalculatePropagatedPageBreak(base.m_members, thisOrAnscestorHasToggle, this.OwnerTablix.SnapshotTablixType == DataRegion.Type.Table), pageBreakLocation);
            }
            this.OwnerTablix.SetPageBreakLocation(pageBreakLocation);
        }
Ejemplo n.º 11
0
 public PageBreakInfo(PageBreak pageBreak, string reportItemName)
 {
     if (pageBreak != null)
     {
         this.m_breakLocation   = pageBreak.BreakLocation;
         this.m_disabled        = pageBreak.Instance.Disabled;
         this.m_resetPageNumber = pageBreak.Instance.ResetPageNumber;
         if (RenderingDiagnostics.Enabled)
         {
             this.m_reportItemName = reportItemName;
         }
     }
 }
Ejemplo n.º 12
0
 internal static PageBreakLocation MergePageBreakLocations(PageBreakLocation outer, PageBreakLocation inner)
 {
     if (outer == inner)
     {
         return(outer);
     }
     if (PageBreakLocation.StartAndEnd == outer || inner == PageBreakLocation.None)
     {
         return(outer);
     }
     if (PageBreakLocation.StartAndEnd == inner || outer == PageBreakLocation.None)
     {
         return(inner);
     }
     if (PageBreakLocation.End == outer && PageBreakLocation.Start == inner)
     {
         return(PageBreakLocation.StartAndEnd);
     }
     if (PageBreakLocation.Start == outer && PageBreakLocation.End == inner)
     {
         return(PageBreakLocation.StartAndEnd);
     }
     return(PageBreakLocation.None);
 }
 public static PageBreakLocation MergePageBreakLocations(PageBreakLocation outer, PageBreakLocation inner)
 {
     if (outer == inner)
     {
         return(outer);
     }
     if (PageBreakLocation.StartAndEnd != outer && inner != 0)
     {
         if (PageBreakLocation.StartAndEnd != inner && outer != 0)
         {
             if (PageBreakLocation.End == outer && PageBreakLocation.Start == inner)
             {
                 return(PageBreakLocation.StartAndEnd);
             }
             if (PageBreakLocation.Start == outer && PageBreakLocation.End == inner)
             {
                 return(PageBreakLocation.StartAndEnd);
             }
             return(PageBreakLocation.None);
         }
         return(inner);
     }
     return(outer);
 }
Ejemplo n.º 14
0
 public virtual void SetPropagatedPageBreak(PageBreakLocation pageBreakLocation)
 {
     this.m_propagatedPageBreak = pageBreakLocation;
 }
Ejemplo n.º 15
0
 internal virtual void SetPropagatedPageBreak(PageBreakLocation pageBreakLocation)
 {
     m_propagatedPageBreak = pageBreakLocation;
 }