void IMenuCreationService.ProcessMenuItems(MenuKind menuKind, MenuItemDescriptionCollection items) { foreach (var s in services) { s.ProcessMenuItems(menuKind, items); } }
private static int BuildHashCode(int menuItemID, MenuKind kind) { unchecked // Overflow is fine, just wrap { var hash = 17; hash = hash * 23 + menuItemID.GetHashCode(); hash = hash * 23 + kind.GetHashCode(); return(hash); } }
public void ProcessMenuItems(MenuKind menuKind, MenuItemDescriptionCollection items) { if (menuKind == MenuKind.FieldList) { var index = items.IndexOf(FieldListCommands.AddCalculatedField); if (index != -1) { items.Insert(index + 1, new MenuItemDescription(items[index].Parameter, "Add Summary Field", null, AddSummaryFieldCommand)); } } }
public void ProcessMenuItems(MenuKind menuKind, MenuItemDescriptionCollection items) { if (menuKind == MenuKind.Selection) { int index = Math.Max(0, items.IndexOf(ReportCommand.Cut)); MenuItemDescription itemShow = new MenuItemDescription("Show Grid", null, showGridCommandID); MenuItemDescription itemHide = new MenuItemDescription("Hide Grid", null, hideGridCommandID); items.Insert(index++, MenuItemDescription.Separator); items.Insert(index++, itemShow); items.Insert(index++, MenuItemDescription.Separator); items.Insert(index++, itemHide); items.Insert(index++, MenuItemDescription.Separator); } }
/// <summary> /// Creates a new MenyKey by menuItemId and MenuKind /// </summary> public MenuKey(long menuItemID, MenuKind kind) { if (menuItemID > int.MaxValue || menuItemID < int.MinValue) { throw new InvalidCastException( string.Format( "menuItemID value {0} is outside of integer range.", menuItemID ) ); } _MenuItemID = (int)menuItemID; _MenuKind = kind; }
/// <summary> /// メニューを取得します。 /// </summary> /// <param name="kind">取得するメニューの種類です。</param> /// <returns>該当するメニューを返します。</returns> public ICollectionView GetMenus(MenuKind kind) { return CollectionViewSource.GetDefaultView(this.kindToMenus[kind]); }
/// <summary> /// メニューを追加します。 /// </summary> /// <param name="kind">追加するメニューの種類です。</param> /// <param name="menu">追加するメニューです。</param> public void AddMenu(MenuKind kind, Menu menu) { Contract.Requires(menu != null); this.kindToMenus[kind].Add(menu); }
void IMenuCreationService.ProcessMenuItems(MenuKind menuKind, MenuItemDescriptionCollection items) { foreach (var s in services) s.ProcessMenuItems(menuKind, items); }
public void ProcessMenuItems(MenuKind menuKind, MenuItemDescriptionCollection items) { if (menuKind == MenuKind.FieldList) { var index = items.IndexOf(FieldListCommands.AddCalculatedField); if (index != -1) items.Insert(index + 1, new MenuItemDescription("Add Summary Field", null, addSummaryFieldCommand)); } }
/// <summary> /// Creates a new MenyKey by menuItemId and MenuKind /// </summary> public MenuKey(int menuItemID, MenuKind kind) { _MenuItemID = menuItemID; _MenuKind = kind; }