private void RaiseEvent(ItemEventHandler <T> eventHandler, T item) { if (eventHandler != null) { eventHandler(this, new ItemEventArgs <T>(item)); } }
protected virtual void OnItemInvoked(ItemEventArgs <Item> e) { ItemEventHandler <Item> handler = ItemInvoked; if (handler != null) { handler(this, e); } }
public static void RegisterEventHandler(ItemBehavior BehaviorType, ItemEventHandler EventHandler) { if (!mEventHandlers.ContainsKey(BehaviorType)) { mEventHandlers.Add(BehaviorType, new List<ItemEventHandler>()); } mEventHandlers[BehaviorType].Add(EventHandler); }
public static void RegisterEventHandler(ItemBehavior BehaviorType, ItemEventHandler EventHandler) { if (!mEventHandlers.ContainsKey(BehaviorType)) { mEventHandlers.Add(BehaviorType, new List <ItemEventHandler>()); } mEventHandlers[BehaviorType].Add(EventHandler); }
protected virtual void OnItemRemoved(ItemEventArgs <TItem> e) { ItemEventHandler <TItem> handler = ItemRemoved; if (handler != null) { handler(this, e); } OnCollectionChanged(e); }
static void Main(string[] args) { SetupConsole(); var menu = new Menu(); menu.HelpMessage = "Нажмите ESC для выхода из программы"; var todoListhandlers = new TodoListHandlers(); ItemEventHandler EscapeHandler = () => { return; }; menu.AddItem("Показать список", todoListhandlers.showList, EscapeHandler); menu.AddItem("Добавить задачу в список", todoListhandlers.addItem, EscapeHandler); menu.AddItem("Редактировать задачу из списка", todoListhandlers.editItem, EscapeHandler); menu.AddItem("Удалить задачу из списка", todoListhandlers.deleteItem, EscapeHandler); menu.Activate(); }
public void deleteItem() { using (var db = new TaskContext()) { var list = new Menu(); list.HelpMessage = "Нажмите ESC для возврата в МЕНЮ. Для удаления записи нажмите ENTER"; list.HandleEscape = () => { return(0); }; foreach (var todo in db.Todos) { ItemEventHandler handleEnter = () => { int id = todo.Id; db.Todos.Remove(todo); db.SaveChanges(); list.RemoveItemById(id); }; ItemEventHandler handleEscape = () => { return; }; var item = new Item(todo.Task, handleEnter, handleEscape); item.Id = todo.Id; list.AddItem(item); } list.Activate(); } }
public void editItem() { using (var db = new TaskContext()) { var list = new Menu(); list.HelpMessage = "Нажмите ESC для возврата в МЕНЮ. Для редактирования записи нажмите ENTER"; list.HandleEscape = () => { return(0); }; foreach (var todo in db.Todos) { ItemEventHandler handleEnter = () => { int id = todo.Id; int y = db.Todos.Count(); Console.SetCursorPosition(0, ++y); Console.Write("Редактирование записи: "); string dataToEdit = todo.Task; SendKeys.SendWait(dataToEdit); var updatedTask = Console.ReadLine(); todo.Task = updatedTask; db.SaveChanges(); list.RenameItemById(id, updatedTask); }; ItemEventHandler handleEscape = () => { return; }; var item = new Item(todo.Task, handleEnter, handleEscape); item.Id = todo.Id; list.AddItem(item); } list.Activate(); } Console.WriteLine("Editing list isn't done yet"); }
public void Add <TMessage>(Func <ClientContext, TMessage, bool> objectReceived) { if (_registeredTypes.Contains(typeof(TMessage))) { throw new InvalidOperationException(); } _registeredTypes.Add(typeof(TMessage)); var name = typeof(TMessage).FullName; ItemEventHandler <TypeData> handler = (o, e) => { if (e.Item.IsHandled || e.Item.Parts[0] != name) { return; } e.Item.IsHandled = objectReceived( e.Item.Context, JsonSerializer.Deserialize <TMessage>(e.Item.Parts[1])); }; lock (_unhandledData) { foreach (var unhandled in _unhandledData.ToArray()) { handler(this, unhandled); if (unhandled.IsHandled) { _unhandledData.Remove(unhandled); } } } DataReceived += handler; }
public void AddItem(string item, ItemEventHandler handleEnter, ItemEventHandler handleEscape) { items.Add(new Item(item, handleEnter, handleEscape)); }
protected void OnDropItem(ItemEventArgs e) { ItemEventHandler handler = DropItem; handler?.Invoke(this, e); }
public DrawableItems(Bitmap img, Rectangle bnd) { MouseMove+= new ItemMouseEventHandler(stubMouseEvent); MouseUp+= new ItemMouseEventHandler(stubMouseEvent); MouseDown+= new ItemMouseEventHandler(stubMouseEvent); MouseEnter+= new ItemEventHandler(stubEvent); MouseLeave+=new ItemEventHandler(stubEvent); this.Image=img; this.bounds=bnd; }
public DrawableItems() { MouseMove+= new ItemMouseEventHandler(stubMouseEvent); MouseUp+= new ItemMouseEventHandler(stubMouseEvent); MouseDown+= new ItemMouseEventHandler(stubMouseEvent); MouseEnter+= new ItemEventHandler(stubEvent); MouseLeave+=new ItemEventHandler(stubEvent); }
public Item(string name, ItemEventHandler handleEnter, ItemEventHandler handleEscape) { Name = name; this.HandleEnter = handleEnter; this.HandleEscape = handleEscape; }