// Constructor
 public CMiniTreeGroup()
 {
     m_alMembers = null;
       m_size = new SizeF( 0.0f, 0.0f );
       m_mtgParent = null;
       m_uIndividuals = 0;
       m_uStalkedIndividuals = 0;
       m_mtiBoxLeft = null;
       m_mtiBoxRight = null;
       m_mtoLastAddedObject = null;
       m_ecCrossbar = ECrossbar.eCB_Solid;
 }
        // Creates a CMiniTreeIndividual for the individual specified and adds it to the group.
        // Informs neighbouring boxes about this box.
        // bCreateLink decides whether to make this box a clickable link in the HTML.
        public CMiniTreeIndividual AddIndividual( CIndividualRecord ir, string sFirstnames, string sSurname, string sDate, bool bCreateLink, bool bCreateStalk, bool bHighlight, bool bConcealed, bool bShade )
        {
            CMiniTreeIndividual mti = new CMiniTreeIndividual( ir, sFirstnames, sSurname, sDate, bCreateLink, bCreateStalk, bHighlight, bConcealed, bShade, MainForm.s_config.m_bConserveTreeWidth );

              if( m_alMembers == null )
              {
            m_alMembers = new ArrayList();
              }
              m_alMembers.Add( mti );

              m_uIndividuals++;

              if( bCreateStalk )
              {
            m_uStalkedIndividuals++;
              }

              mti.LeftObject = m_mtoLastAddedObject;

              if( m_mtoLastAddedObject != null )
              {
            m_mtoLastAddedObject.RightObject = mti;
              }

              m_mtoLastAddedObject = mti;

              return mti;
        }