private void AddSortOrder(VariantList[] scopeValues, bool incrementCounter)
 {
     if (this.m_sortOrders == null)
     {
         this.m_sortOrders = new ScopeLookupTable();
     }
     if (scopeValues == null || scopeValues.Length == 0)
     {
         this.m_sortOrders.Add(this.m_eventSource.UserSort.GroupsInSortTarget, scopeValues, this.m_currentSortIndex);
     }
     else
     {
         int num = 0;
         for (int i = 0; i < scopeValues.Length; i++)
         {
             if (scopeValues[i] == null)
             {
                 num++;
             }
         }
         if (num >= this.m_nullScopeCount)
         {
             if (num > this.m_nullScopeCount)
             {
                 this.m_sortOrders.Clear();
                 this.m_nullScopeCount = num;
             }
             this.m_sortOrders.Add(this.m_eventSource.UserSort.GroupsInSortTarget, scopeValues, this.m_currentSortIndex);
         }
     }
     if (incrementCounter)
     {
         this.m_currentSortIndex++;
     }
 }
 public void AddDataSetUniqueName(VariantList[] scopeValues, int subReportUniqueName)
 {
     if (this.m_dataSetUniqueNameMap == null)
     {
         this.m_dataSetUniqueNameMap  = new ScopeLookupTable();
         this.m_saveDataSetUniqueName = true;
     }
     this.m_dataSetUniqueNameMap.Add(this.m_containingScopes, scopeValues, subReportUniqueName);
 }
 public bool ProcessSorting(ReportProcessing.ProcessingContext processingContext)
 {
     Global.Tracer.Assert(!this.m_processed, "(!m_processed)");
     if (this.m_eventTarget == null)
     {
         return(false);
     }
     this.m_eventTarget.ProcessUserSort();
     this.m_sortOrders = null;
     return(true);
 }