private void InsertMenuCreateMenus(ObjectInfo rootItem, SubItemsCollection rootMenu) { foreach (ObjectInfo item in rootItem.Items) { ButtonItem menuItem = new ButtonItem(); menuItem.Text = Res.TryGet(item.Text); menuItem.Tag = item; rootMenu.Add(menuItem); if (item.Items.Count > 0) { // it's a category InsertMenuCreateMenus(item, menuItem.SubItems); } else { menuItem.Image = item.Image; menuItem.Click += insertMenu_Click; } } }
private void DoCreateButtons(ObjectInfo rootItem, SubItemsCollection items) { foreach (ObjectInfo item in rootItem.Items) { ButtonItem button = new ButtonItem(); button.Image = item.Image; string text = Res.TryGet(item.Text); if (items == Items) { button.Tooltip = text; button.FixedSize = new Size(25, 25); } else { button.Text = text; button.ButtonStyle = eButtonStyle.ImageAndText; } if (item.Items.Count > 0) { // it's a category DoCreateButtons(item, button.SubItems); button.PopupSide = ePopupSide.Right; button.AutoExpandOnClick = true; button.FixedSize = new Size(25, 32); } else { button.Tag = item; button.Click += button_Click; } items.Add(button); } }