public Group(string xName,Panel pnl,Group pParent, delegate_NewGroupSelected delegate_NewGroupSelected_trigger,ref int yPos,int xbutton_height,int xfont_height) { button_height = xbutton_height; font_height = xfont_height; m_delegate_NewGroupSelected_trigger = delegate_NewGroupSelected_trigger; m_pnl = pnl; if (m_pnl!=null) { default_back_color = m_pnl.BackColor; } m_pParent = pParent; yPos += button_height + 2; m_Name = xName; if (xName == null) { m_Name_In_Language += " " + lngRPM.s_Other.s; } else { m_Name_In_Language = m_Name; } if (m_pParent != null) { if (m_pParent.m_GroupList== null) { m_pParent.m_GroupList = new GroupList(this); } m_pParent.m_GroupList.Add(this); } }
internal void Add(Group grp) { if (this.m_GroupList== null) { this.m_GroupList = new GroupList(this); } this.m_GroupList.Add(grp); }
public Group Select(int NumberOfGroupLevel,string[] sGroupArr) { if (IsRoot) { if (m_GroupList != null) { foreach (Group grp in m_GroupList.Items) { Group g = grp.Select(NumberOfGroupLevel - 1, sGroupArr); if (g!=null) { this.m_CurrentSubGroup_In_m_GroupList = g; return g; } } } else { foreach (string s in sGroupArr) { if (s!=null) { return null; } } return this; } } else { if (NumberOfGroupLevel >= 0) { if (sGroupArr[NumberOfGroupLevel] != null) { if (this.Name != null) { if (this.Name.Equals(sGroupArr[NumberOfGroupLevel])) { this.SingleSelected = true; if (m_GroupList != null) { foreach (Group grp in m_GroupList.Items) { Group g = grp.Select(NumberOfGroupLevel - 1, sGroupArr); if (g != null) { this.m_CurrentSubGroup_In_m_GroupList = g; return g; } } } else { return this; } } } else { if (m_GroupList != null) { foreach (Group grp in m_GroupList.Items) { Group g = grp.Select(NumberOfGroupLevel - 1, sGroupArr); if (g != null) { this.m_CurrentSubGroup_In_m_GroupList = g; return g; } } } } } else { if (this.Name == null) { if (NumberOfGroupLevel == 0) { this.SingleSelected = true; return this; } else { return Select(NumberOfGroupLevel - 1, sGroupArr); } } else { if (NumberOfGroupLevel > 0) { return Select(NumberOfGroupLevel - 1, sGroupArr); } } } } } return null; }
public void Add(Group grp) { Items.Add(grp); }
public GroupList(Group xGroupParent) { m_GroupParent = xGroupParent; }
internal void Remove(Group grp) { Items.Remove(grp); }
internal void PurgeNotNull(Panel pnl, System.Data.DataRow[] drs_not_null, Group.delegate_NewGroupSelected NewGroupSelected) { int ypos = 0; foreach (DataRow dr in drs_not_null) { string name = (string)dr["s1_name"]; Group grp = this.Find(name); if (grp==null) { grp = new Group(name,pnl,null, NewGroupSelected, ref ypos, 64,14); grp.rbtn.CheckedChanged += grp.rbtn_CheckedChanged; Add(grp); } } List<Group> groups_to_remove = new List<Group>(); foreach (Group xgrp in Items) { if (!find_in_drs_not_null(xgrp.Name,drs_not_null)) { groups_to_remove.Add(xgrp); } } foreach (Group xgrp in groups_to_remove) { Items.Remove(xgrp); pnl.Controls.Remove(xgrp.rbtn); xgrp.rbtn.Dispose(); xgrp.rbtn = null; } Arrange(pnl); }