예제 #1
0
 internal SubReport(Microsoft.ReportingServices.OnDemandReportRendering.SubReport source)
     : base(source)
 {
     m_itemPageSizes             = new ItemSizes(source);
     base.KeepTogetherVertical   = (base.UnresolvedKTV = source.KeepTogether);
     base.KeepTogetherHorizontal = (base.UnresolvedKTH = source.KeepTogether);
 }
 internal HiddenPageItem(double top, double left)
     : base(null)
 {
     m_itemPageSizes             = new ItemSizes(left, top, 0.0, 0.0);
     base.KeepTogetherHorizontal = false;
     base.KeepTogetherVertical   = false;
     base.UnresolvedKTV          = (base.UnresolvedKTH = false);
 }
예제 #3
0
 internal NoRowsItem(ReportItem source)
     : base(source)
 {
     m_itemPageSizes             = new ItemSizes(source);
     base.KeepTogetherHorizontal = false;
     base.KeepTogetherVertical   = false;
     base.UnresolvedKTV          = (base.UnresolvedKTH = false);
 }
예제 #4
0
 internal ReportBody(Body source, ReportSize width)
     : base(null)
 {
     m_itemPageSizes             = new ItemSizes(0.0, 0.0, width.ToMillimeters(), source.Height.ToMillimeters());
     m_originalWidth             = m_itemPageSizes.Width;
     m_source                    = source;
     base.KeepTogetherHorizontal = false;
     base.KeepTogetherVertical   = false;
     base.UnresolvedKTV          = (base.UnresolvedKTH = false);
 }
 internal HiddenPageItem(ReportItem source, PageContext pageContext, bool checkHiddenState)
     : base(source)
 {
     m_itemPageSizes             = new ItemSizes(source);
     base.KeepTogetherHorizontal = false;
     base.KeepTogetherVertical   = false;
     base.UnresolvedKTV          = (base.UnresolvedKTH = false);
     if (pageContext.EvaluatePageHeaderFooter && (m_source.Visibility == null || m_source.Visibility.ToggleItem != null || !m_source.Visibility.Hidden.IsExpression || (checkHiddenState && !m_source.Instance.Visibility.CurrentlyHidden)))
     {
         m_textBoxValues = new Dictionary <string, List <object> >();
         HeaderFooterEval.CollectTextBoxes(m_source, pageContext, useForPageHFEval: true, m_textBoxValues);
     }
 }
        private void ConsumeWhitespaceVertical(ItemSizes itemSizes, double adjustHeightTo)
        {
            double num = adjustHeightTo - itemSizes.Height;

            itemSizes.AdjustHeightTo(adjustHeightTo);
            if (!(num <= 0.0) && !(m_bottomPadding <= 0.0))
            {
                double num2 = num - m_bottomPadding;
                if (num2 > 0.0)
                {
                    itemSizes.AdjustHeightTo(itemSizes.Height - m_bottomPadding);
                    m_bottomPadding = 0.0;
                }
                else
                {
                    itemSizes.AdjustHeightTo(itemSizes.Height - num);
                    m_bottomPadding = 0.0 - num2;
                }
            }
        }
예제 #7
0
        internal Rectangle(Microsoft.ReportingServices.OnDemandReportRendering.Rectangle source, PageContext pageContext)
            : base(source)
        {
            Microsoft.ReportingServices.OnDemandReportRendering.Rectangle rectangle = (Microsoft.ReportingServices.OnDemandReportRendering.Rectangle)m_source;
            RectangleInstance rectangleInstance = (RectangleInstance)m_source.Instance;

            m_itemPageSizes       = new ItemSizes(source);
            m_pageBreakProperties = PageBreakProperties.Create(rectangle.PageBreak, this, pageContext);
            if (!pageContext.IgnorePageBreaks)
            {
                m_pageName = rectangleInstance.PageName;
            }
            else if (pageContext.Common.DiagnosticsEnabled && rectangle.PageBreak.BreakLocation != 0)
            {
                pageContext.Common.TracePageBreakIgnored(this, pageContext.IgnorePageBreaksReason);
            }
            base.KeepTogetherHorizontal = source.KeepTogether;
            base.KeepTogetherVertical   = source.KeepTogether;
            base.UnresolvedKTV          = (base.UnresolvedKTH = source.KeepTogether);
            base.UnresolvedPBE          = (base.UnresolvedPBS = true);
        }
예제 #8
0
 private static List <Declaration> BuildDeclarations()
 {
     return(new List <Declaration>(30)
     {
         PageItem.GetDeclaration(),
         PageItemContainer.GetDeclaration(),
         ItemSizes.GetDeclaration(),
         HiddenPageItem.GetDeclaration(),
         NoRowsItem.GetDeclaration(),
         SubReport.GetDeclaration(),
         ReportBody.GetDeclaration(),
         Rectangle.GetDeclaration(),
         TextBox.GetDeclaration(),
         TextBox.TextBoxOffset.GetDeclaration(),
         Paragraph.GetDeclaration(),
         TextRun.GetDeclaration(),
         Line.GetDeclaration(),
         DynamicImage.GetDeclaration(),
         Chart.GetDeclaration(),
         GaugePanel.GetDeclaration(),
         Image.GetDeclaration(),
         Tablix.GetDeclaration(),
         Tablix.RowInfo.GetDeclaration(),
         Tablix.SizeInfo.GetDeclaration(),
         Tablix.ColumnInfo.GetDeclaration(),
         Tablix.PageTalixCell.GetDeclaration(),
         Tablix.PageDetailCell.GetDeclaration(),
         Tablix.PageCornerCell.GetDeclaration(),
         Tablix.PageMemberCell.GetDeclaration(),
         Tablix.PageStructMemberCell.GetDeclaration(),
         Tablix.PageStructStaticMemberCell.GetDeclaration(),
         Tablix.PageStructDynamicMemberCell.GetDeclaration(),
         Map.GetDeclaration(),
         PageBreakProperties.GetDeclaration()
     });
 }
        private void HorizontalDependecy()
        {
            ItemSizes     itemSizes      = null;
            PageItem      pageItem       = null;
            ItemSizes     itemSizes2     = null;
            RoundedDouble roundedDouble  = new RoundedDouble(-1.0);
            RoundedDouble roundedDouble2 = new RoundedDouble(0.0);

            for (int i = 0; i < m_children.Length; i++)
            {
                itemSizes            = m_children[m_indexesLeftToRight[i]].ItemPageSizes;
                roundedDouble.Value  = -1.0;
                roundedDouble2.Value = itemSizes.Right;
                for (int j = i + 1; j < m_children.Length; j++)
                {
                    pageItem   = m_children[m_indexesLeftToRight[j]];
                    itemSizes2 = pageItem.ItemPageSizes;
                    if (roundedDouble >= 0.0 && roundedDouble <= itemSizes2.Left)
                    {
                        break;
                    }
                    if (roundedDouble2 <= itemSizes2.Left)
                    {
                        if (pageItem.PageItemsLeft == null)
                        {
                            pageItem.PageItemsLeft = new List <int>();
                        }
                        pageItem.PageItemsLeft.Add(m_indexesLeftToRight[i]);
                        if (roundedDouble < 0.0 || roundedDouble > itemSizes2.Right)
                        {
                            roundedDouble.Value = itemSizes2.Right;
                        }
                    }
                }
            }
        }
        private void VerticalDependency()
        {
            ItemSizes     itemSizes      = null;
            PageItem      pageItem       = null;
            ItemSizes     itemSizes2     = null;
            RoundedDouble roundedDouble  = new RoundedDouble(-1.0);
            RoundedDouble roundedDouble2 = new RoundedDouble(0.0);

            for (int i = 0; i < m_children.Length; i++)
            {
                itemSizes            = m_children[i].ItemPageSizes;
                roundedDouble2.Value = itemSizes.Bottom;
                roundedDouble.Value  = -1.0;
                for (int j = i + 1; j < m_children.Length; j++)
                {
                    pageItem   = m_children[j];
                    itemSizes2 = pageItem.ItemPageSizes;
                    if (roundedDouble >= 0.0 && roundedDouble <= itemSizes2.Top)
                    {
                        break;
                    }
                    if (roundedDouble2 <= itemSizes2.Top)
                    {
                        if (pageItem.PageItemsAbove == null)
                        {
                            pageItem.PageItemsAbove = new List <int>();
                        }
                        pageItem.PageItemsAbove.Add(i);
                        if (roundedDouble < 0.0 || roundedDouble > itemSizes2.Bottom)
                        {
                            roundedDouble.Value = itemSizes2.Bottom;
                        }
                    }
                }
            }
        }
예제 #11
0
        public bool TryCreateObject(ObjectType objectType, out IPersistable persistObj)
        {
            switch (objectType)
            {
            case ObjectType.ItemSizes:
                persistObj = new ItemSizes();
                break;

            case ObjectType.PageBreakProperties:
                persistObj = new PageBreakProperties();
                break;

            case ObjectType.HiddenPageItem:
                persistObj = new HiddenPageItem();
                break;

            case ObjectType.NoRowsItem:
                persistObj = new NoRowsItem();
                break;

            case ObjectType.SubReport:
                persistObj = new SubReport();
                break;

            case ObjectType.ReportBody:
                persistObj = new ReportBody();
                break;

            case ObjectType.Rectangle:
                persistObj = new Rectangle();
                break;

            case ObjectType.TextBox:
                persistObj = new TextBox();
                break;

            case ObjectType.Paragraph:
                persistObj = new Paragraph();
                break;

            case ObjectType.TextRun:
                persistObj = new TextRun();
                break;

            case ObjectType.TextBoxOffset:
                persistObj = new TextBox.TextBoxOffset();
                break;

            case ObjectType.Line:
                persistObj = new Line();
                break;

            case ObjectType.Chart:
                persistObj = new Chart();
                break;

            case ObjectType.GaugePanel:
                persistObj = new GaugePanel();
                break;

            case ObjectType.Map:
                persistObj = new Map();
                break;

            case ObjectType.Image:
                persistObj = new Image();
                break;

            case ObjectType.Tablix:
                persistObj = new Tablix();
                break;

            case ObjectType.RowInfo:
                persistObj = new Tablix.RowInfo();
                break;

            case ObjectType.SizeInfo:
                persistObj = new Tablix.SizeInfo();
                break;

            case ObjectType.ColumnInfo:
                persistObj = new Tablix.ColumnInfo();
                break;

            case ObjectType.PageDetailCell:
                persistObj = new Tablix.PageDetailCell();
                break;

            case ObjectType.PageCornerCell:
                persistObj = new Tablix.PageCornerCell();
                break;

            case ObjectType.PageMemberCell:
                persistObj = new Tablix.PageMemberCell();
                break;

            case ObjectType.PageStructStaticMemberCell:
                persistObj = new Tablix.PageStructStaticMemberCell();
                break;

            case ObjectType.PageStructDynamicMemberCell:
                persistObj = new Tablix.PageStructDynamicMemberCell();
                break;

            default:
                persistObj = null;
                return(false);
            }
            return(true);
        }
예제 #12
0
 internal Image(Microsoft.ReportingServices.OnDemandReportRendering.Image source)
     : base(source)
 {
     m_itemPageSizes = new ItemSizes(source);
 }
예제 #13
0
 internal DynamicImage(ReportItem source)
     : base(source)
 {
     m_itemPageSizes    = new ItemSizes(source);
     base.UnresolvedPBS = (base.UnresolvedPBE = true);
 }