int GetPos(CollapsableControl collapsable)
 {
     for (int i = 0; i < genUnits.Length; i++)
     {
         if (genUnits[i].Collapsable == collapsable)
         {
             return(i);
         }
     }
     return(-1);
 }
        void ShowOnly(CollapsableControl collapsable)
        {
            foreach (var item in genUnits)
            {
                var c = item.Collapsable;
                if (!c.Collapsed && c != collapsable)
                {
                    c.Collapsed = true;
                }
            }

            textBoxName.Text = genUnits[GetPos(collapsable)].DisplayName;

            if (null == collapsable)
            {
                return;
            }

            if (collapsable.Collapsed)
            {
                collapsable.Collapsed = false;
            }
        }
 public GeneratorUnit(UserControl genControl, CollapsableControl collapsableControl, string displayName)
 {
     GenControl  = genControl;
     Collapsable = collapsableControl;
     DisplayName = displayName;
 }
 void ActivateGen(CollapsableControl control, IGenSetter igen, BaseGen gen)
 {
     ShowOnly(control);
     igen.SetBaseGen(gen);
     textBoxName.Text = gen.Name;
 }