public EventInformation(EventInformation copy)
 {
     Global.Tracer.Assert(copy != null, "(null != copy)");
     m_hasShowHideInfo = copy.m_hasShowHideInfo;
     if (copy.m_toggleStateInfo != null)
     {
         m_toggleStateInfo = (Hashtable)copy.m_toggleStateInfo.Clone();
     }
     if (copy.m_hiddenInfo != null)
     {
         m_hiddenInfo = (Hashtable)copy.m_hiddenInfo.Clone();
     }
     m_hasSortInfo = copy.m_hasSortInfo;
     if (copy.m_sortInfo != null)
     {
         m_sortInfo = copy.m_sortInfo.Clone();
     }
     else if (copy.m_odpSortInfo != null)
     {
         m_odpSortInfo = copy.m_odpSortInfo.Clone();
     }
     if (copy.m_rendererEventInformation == null)
     {
         return;
     }
     m_rendererEventInformation = new Dictionary <string, RendererEventInformation>(copy.m_rendererEventInformation.Count);
     foreach (string key in copy.m_rendererEventInformation.Keys)
     {
         RendererEventInformation value = new RendererEventInformation(copy.m_rendererEventInformation[key]);
         m_rendererEventInformation[key] = value;
     }
 }
 private OdpSortEventInfo(OdpSortEventInfo copy)
 {
     this.m_collection = (ArrayList)copy.m_collection.Clone();
     if (copy.m_uniqueNameMap != null)
     {
         this.m_uniqueNameMap = new Dictionary <string, int>(copy.m_uniqueNameMap.Count);
         IDictionaryEnumerator dictionaryEnumerator = (IDictionaryEnumerator)(object)copy.m_uniqueNameMap.GetEnumerator();
         while (dictionaryEnumerator.MoveNext())
         {
             if (dictionaryEnumerator.Key != null)
             {
                 this.m_uniqueNameMap.Add(dictionaryEnumerator.Key as string, (int)dictionaryEnumerator.Value);
             }
         }
     }
 }