Пример #1
0
        public override object PublishClone(AutomaticSubtotalContext context)
        {
            MapVectorLayer mapVectorLayer2 = context.CurrentMapVectorLayerClone = (MapVectorLayer)base.PublishClone(context);

            mapVectorLayer2.m_ID = context.GenerateID();
            if (this.MapDataRegionName != null)
            {
                mapVectorLayer2.MapDataRegionName = context.GetNewScopeName(this.MapDataRegionName);
            }
            if (this.m_mapBindingFieldPairs != null)
            {
                mapVectorLayer2.m_mapBindingFieldPairs = new List <MapBindingFieldPair>(this.m_mapBindingFieldPairs.Count);
                foreach (MapBindingFieldPair mapBindingFieldPair in this.m_mapBindingFieldPairs)
                {
                    mapVectorLayer2.m_mapBindingFieldPairs.Add((MapBindingFieldPair)mapBindingFieldPair.PublishClone(context));
                }
            }
            if (this.m_mapFieldDefinitions != null)
            {
                mapVectorLayer2.m_mapFieldDefinitions = new List <MapFieldDefinition>(this.m_mapFieldDefinitions.Count);
                foreach (MapFieldDefinition mapFieldDefinition in this.m_mapFieldDefinitions)
                {
                    mapVectorLayer2.m_mapFieldDefinitions.Add((MapFieldDefinition)mapFieldDefinition.PublishClone(context));
                }
            }
            if (this.m_mapSpatialData != null)
            {
                mapVectorLayer2.m_mapSpatialData = (MapSpatialData)this.m_mapSpatialData.PublishClone(context);
            }
            return(mapVectorLayer2);
        }
Пример #2
0
        internal override object PublishClone(AutomaticSubtotalContext context)
        {
            TextBox textBox = (TextBox)base.PublishClone(context);

            textBox.m_sequenceID = context.GenerateTextboxSequenceID();
            if (m_paragraphs != null)
            {
                textBox.m_paragraphs = new List <Paragraph>(m_paragraphs.Count);
                foreach (Paragraph paragraph2 in m_paragraphs)
                {
                    Paragraph paragraph = (Paragraph)paragraph2.PublishClone(context);
                    paragraph.TextBox = textBox;
                    textBox.m_paragraphs.Add(paragraph);
                }
            }
            if (m_hideDuplicates != null)
            {
                textBox.m_hideDuplicates = context.GetNewScopeName(m_hideDuplicates);
            }
            if (m_action != null)
            {
                textBox.m_action = (Action)m_action.PublishClone(context);
            }
            if (m_initialToggleState != null)
            {
                textBox.m_initialToggleState = (ExpressionInfo)m_initialToggleState.PublishClone(context);
            }
            if (m_userSort != null)
            {
                textBox.m_userSort = (EndUserSort)m_userSort.PublishClone(context);
            }
            return(textBox);
        }
        public override object PublishClone(AutomaticSubtotalContext context)
        {
            RunningValueInfo runningValueInfo = (RunningValueInfo)base.PublishClone(context);

            runningValueInfo.m_scope = context.GetNewScopeName(this.m_scope);
            return(runningValueInfo);
        }
Пример #4
0
 public void UpdateSortScopeAndTargetReference(AutomaticSubtotalContext context)
 {
     if (this.m_sortExpressionScopeString != null)
     {
         this.m_sortExpressionScopeString = context.GetNewScopeName(this.m_sortExpressionScopeString);
     }
     if (this.m_sortTargetString != null)
     {
         this.m_sortTargetString = context.GetNewScopeName(this.m_sortTargetString);
         if (this.m_sortTarget != null)
         {
             ISortFilterScope sortTarget = null;
             if (context.TryGetNewSortTarget(this.m_sortTargetString, out sortTarget))
             {
                 this.SetSortTarget(sortTarget);
             }
         }
     }
 }
Пример #5
0
 internal void UpdateSortScopeAndTargetReference(AutomaticSubtotalContext context)
 {
     if (m_sortExpressionScopeString != null)
     {
         m_sortExpressionScopeString = context.GetNewScopeName(m_sortExpressionScopeString);
     }
     if (m_sortTargetString == null)
     {
         return;
     }
     m_sortTargetString = context.GetNewScopeName(m_sortTargetString);
     if (m_sortTarget != null)
     {
         ISortFilterScope target = null;
         if (context.TryGetNewSortTarget(m_sortTargetString, out target))
         {
             SetSortTarget(target);
         }
     }
 }
Пример #6
0
        public virtual object PublishClone(AutomaticSubtotalContext context)
        {
            DataAggregateInfo dataAggregateInfo = (DataAggregateInfo)base.MemberwiseClone();

            if (dataAggregateInfo.m_publishingInfo != null)
            {
                dataAggregateInfo.m_publishingInfo = this.m_publishingInfo.PublishClone();
                dataAggregateInfo.m_publishingInfo.NestedAggregates = null;
            }
            dataAggregateInfo.m_name = context.CreateAggregateID(this.m_name);
            bool flag = false;

            if (context.OuterAggregate != null)
            {
                flag = true;
                context.OuterAggregate.AddNestedAggregate(dataAggregateInfo);
            }
            if (this.IsAggregateOfAggregate)
            {
                context.OuterAggregate = dataAggregateInfo;
            }
            if (this.PublishingInfo.HasScope)
            {
                if (flag)
                {
                    dataAggregateInfo.SetScope(context.GetNewScopeNameForInnerOrOuterAggregate(this));
                }
                else
                {
                    dataAggregateInfo.SetScope(context.GetNewScopeName(this.PublishingInfo.Scope));
                }
            }
            if (this.m_expressions != null)
            {
                dataAggregateInfo.m_expressions = new ExpressionInfo[this.m_expressions.Length];
                for (int i = 0; i < this.m_expressions.Length; i++)
                {
                    dataAggregateInfo.m_expressions[i] = (ExpressionInfo)this.m_expressions[i].PublishClone(context);
                }
            }
            return(dataAggregateInfo);
        }
		public override object PublishClone(AutomaticSubtotalContext context)
		{
			RunningValueInfo obj = (RunningValueInfo)base.PublishClone(context);
			obj.m_scope = context.GetNewScopeName(m_scope);
			return obj;
		}
Пример #8
0
        internal object PublishClone(AutomaticSubtotalContext context, ReportHierarchyNode owner)
        {
            Grouping grouping = (Grouping)MemberwiseClone();

            grouping.m_isClone = true;
            grouping.m_ID      = context.GenerateID();
            grouping.m_owner   = owner;
            if (DomainScope != null)
            {
                grouping.DomainScope = context.GetNewScopeName(DomainScope);
                if (string.CompareOrdinal(DomainScope, grouping.DomainScope) != 0)
                {
                    context.DomainScopeGroups.Add(grouping);
                }
                else
                {
                    grouping.m_scopeIDForDomainScope = Owner.DataScopeInfo.ScopeID;
                }
            }
            context.AddAggregateHolder(grouping);
            Global.Tracer.Assert(m_name != null);
            grouping.m_name = context.CreateAndRegisterUniqueGroupName(m_name, m_isClone);
            context.AddSortTarget(grouping.m_name, grouping);
            CloneGroupExpressions(context, grouping);
            if (m_groupLabel != null)
            {
                grouping.m_groupLabel = (ExpressionInfo)m_groupLabel.PublishClone(context);
            }
            if (m_sortDirections != null)
            {
                grouping.m_sortDirections = new List <bool>(m_sortDirections.Count);
                foreach (bool sortDirection in m_sortDirections)
                {
                    grouping.m_sortDirections.Add(sortDirection);
                }
            }
            grouping.m_aggregates          = new List <DataAggregateInfo>();
            grouping.m_recursiveAggregates = new List <DataAggregateInfo>();
            grouping.m_postSortAggregates  = new List <DataAggregateInfo>();
            if (m_filters != null)
            {
                grouping.m_filters = new List <Filter>(m_filters.Count);
                foreach (Filter filter in m_filters)
                {
                    grouping.m_filters.Add((Filter)filter.PublishClone(context));
                }
            }
            if (m_parent != null)
            {
                grouping.m_parent = new List <ExpressionInfo>(m_parent.Count);
                foreach (ExpressionInfo item in m_parent)
                {
                    grouping.m_parent.Add((ExpressionInfo)item.PublishClone(context));
                }
            }
            if (m_dataElementName != null)
            {
                grouping.m_dataElementName = (string)m_dataElementName.Clone();
            }
            if (m_userSortExpressions != null)
            {
                grouping.m_userSortExpressions = new List <ExpressionInfo>(m_userSortExpressions.Count);
                foreach (ExpressionInfo userSortExpression in m_userSortExpressions)
                {
                    grouping.m_userSortExpressions.Add((ExpressionInfo)userSortExpression.PublishClone(context));
                }
            }
            if (m_variables != null)
            {
                grouping.m_variables = new List <Variable>(m_variables.Count);
                foreach (Variable variable in m_variables)
                {
                    grouping.m_variables.Add((Variable)variable.PublishClone(context));
                }
            }
            if (m_nonDetailSortFiltersInScope != null)
            {
                grouping.m_nonDetailSortFiltersInScope = new InScopeSortFilterHashtable(m_nonDetailSortFiltersInScope.Count);
                foreach (DictionaryEntry item2 in m_nonDetailSortFiltersInScope)
                {
                    List <int> obj  = (List <int>)item2.Value;
                    List <int> list = new List <int>(obj.Count);
                    foreach (int item3 in obj)
                    {
                        list.Add(item3);
                    }
                    grouping.m_nonDetailSortFiltersInScope.Add(item2.Key, list);
                }
            }
            if (m_detailSortFiltersInScope != null)
            {
                grouping.m_detailSortFiltersInScope = new InScopeSortFilterHashtable(m_detailSortFiltersInScope.Count);
                foreach (DictionaryEntry item4 in m_detailSortFiltersInScope)
                {
                    List <int> obj2  = (List <int>)item4.Value;
                    List <int> list2 = new List <int>(obj2.Count);
                    foreach (int item5 in obj2)
                    {
                        list2.Add(item5);
                    }
                    grouping.m_detailSortFiltersInScope.Add(item4.Key, list2);
                }
            }
            if (m_pageBreak != null)
            {
                grouping.m_pageBreak = (PageBreak)m_pageBreak.PublishClone(context);
            }
            if (m_pageName != null)
            {
                grouping.m_pageName = (ExpressionInfo)m_pageName.PublishClone(context);
            }
            return(grouping);
        }
Пример #9
0
        public object PublishClone(AutomaticSubtotalContext context, ReportHierarchyNode owner)
        {
            Grouping grouping = (Grouping)base.MemberwiseClone();

            grouping.m_isClone = true;
            grouping.m_ID      = context.GenerateID();
            grouping.m_owner   = owner;
            if (this.DomainScope != null)
            {
                grouping.DomainScope = context.GetNewScopeName(this.DomainScope);
                if (string.CompareOrdinal(this.DomainScope, grouping.DomainScope) != 0)
                {
                    context.DomainScopeGroups.Add(grouping);
                }
                else
                {
                    grouping.m_scopeIDForDomainScope = this.Owner.DataScopeInfo.ScopeID;
                }
            }
            context.AddAggregateHolder(grouping);
            Global.Tracer.Assert(this.m_name != null);
            grouping.m_name = context.CreateAndRegisterUniqueGroupName(this.m_name, this.m_isClone);
            context.AddSortTarget(grouping.m_name, grouping);
            this.CloneGroupExpressions(context, grouping);
            if (this.m_groupLabel != null)
            {
                grouping.m_groupLabel = (ExpressionInfo)this.m_groupLabel.PublishClone(context);
            }
            if (this.m_sortDirections != null)
            {
                grouping.m_sortDirections = new List <bool>(this.m_sortDirections.Count);
                foreach (bool sortDirection in this.m_sortDirections)
                {
                    grouping.m_sortDirections.Add(sortDirection);
                }
            }
            grouping.m_aggregates          = new List <DataAggregateInfo>();
            grouping.m_recursiveAggregates = new List <DataAggregateInfo>();
            grouping.m_postSortAggregates  = new List <DataAggregateInfo>();
            if (this.m_filters != null)
            {
                grouping.m_filters = new List <Filter>(this.m_filters.Count);
                foreach (Filter filter in this.m_filters)
                {
                    grouping.m_filters.Add((Filter)filter.PublishClone(context));
                }
            }
            if (this.m_parent != null)
            {
                grouping.m_parent = new List <ExpressionInfo>(this.m_parent.Count);
                foreach (ExpressionInfo item in this.m_parent)
                {
                    grouping.m_parent.Add((ExpressionInfo)item.PublishClone(context));
                }
            }
            if (this.m_dataElementName != null)
            {
                grouping.m_dataElementName = (string)this.m_dataElementName.Clone();
            }
            if (this.m_userSortExpressions != null)
            {
                grouping.m_userSortExpressions = new List <ExpressionInfo>(this.m_userSortExpressions.Count);
                foreach (ExpressionInfo userSortExpression in this.m_userSortExpressions)
                {
                    grouping.m_userSortExpressions.Add((ExpressionInfo)userSortExpression.PublishClone(context));
                }
            }
            if (this.m_variables != null)
            {
                grouping.m_variables = new List <Variable>(this.m_variables.Count);
                foreach (Variable variable in this.m_variables)
                {
                    grouping.m_variables.Add((Variable)variable.PublishClone(context));
                }
            }
            if (this.m_nonDetailSortFiltersInScope != null)
            {
                grouping.m_nonDetailSortFiltersInScope = new InScopeSortFilterHashtable(this.m_nonDetailSortFiltersInScope.Count);
                IDictionaryEnumerator enumerator6 = this.m_nonDetailSortFiltersInScope.GetEnumerator();
                try
                {
                    while (enumerator6.MoveNext())
                    {
                        object          current6        = enumerator6.Current;
                        DictionaryEntry dictionaryEntry = (DictionaryEntry)current6;
                        List <int>      list            = (List <int>)dictionaryEntry.Value;
                        List <int>      list2           = new List <int>(list.Count);
                        foreach (int item2 in list)
                        {
                            list2.Add(item2);
                        }
                        grouping.m_nonDetailSortFiltersInScope.Add(dictionaryEntry.Key, list2);
                    }
                }
                finally
                {
                    IDisposable disposable = enumerator6 as IDisposable;
                    if (disposable != null)
                    {
                        disposable.Dispose();
                    }
                }
            }
            if (this.m_detailSortFiltersInScope != null)
            {
                grouping.m_detailSortFiltersInScope = new InScopeSortFilterHashtable(this.m_detailSortFiltersInScope.Count);
                IDictionaryEnumerator enumerator8 = this.m_detailSortFiltersInScope.GetEnumerator();
                try
                {
                    while (enumerator8.MoveNext())
                    {
                        object          current8         = enumerator8.Current;
                        DictionaryEntry dictionaryEntry2 = (DictionaryEntry)current8;
                        List <int>      list3            = (List <int>)dictionaryEntry2.Value;
                        List <int>      list4            = new List <int>(list3.Count);
                        foreach (int item3 in list3)
                        {
                            list4.Add(item3);
                        }
                        grouping.m_detailSortFiltersInScope.Add(dictionaryEntry2.Key, list4);
                    }
                }
                finally
                {
                    IDisposable disposable2 = enumerator8 as IDisposable;
                    if (disposable2 != null)
                    {
                        disposable2.Dispose();
                    }
                }
            }
            if (this.m_pageBreak != null)
            {
                grouping.m_pageBreak = (PageBreak)this.m_pageBreak.PublishClone(context);
            }
            if (this.m_pageName != null)
            {
                grouping.m_pageName = (ExpressionInfo)this.m_pageName.PublishClone(context);
            }
            return(grouping);
        }