Esempio n. 1
0
 private void RaiseEvent(ItemEventHandler <T> eventHandler, T item)
 {
     if (eventHandler != null)
     {
         eventHandler(this, new ItemEventArgs <T>(item));
     }
 }
Esempio n. 2
0
        protected virtual void OnItemInvoked(ItemEventArgs <Item> e)
        {
            ItemEventHandler <Item> handler = ItemInvoked;

            if (handler != null)
            {
                handler(this, e);
            }
        }
Esempio n. 3
0
        public static void RegisterEventHandler(ItemBehavior BehaviorType, ItemEventHandler EventHandler)
        {
            if (!mEventHandlers.ContainsKey(BehaviorType))
            {
                mEventHandlers.Add(BehaviorType, new List<ItemEventHandler>());
            }

            mEventHandlers[BehaviorType].Add(EventHandler);
        }
Esempio n. 4
0
        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);
        }
Esempio n. 6
0
        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();
        }
Esempio n. 7
0
 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();
     }
 }
Esempio n. 8
0
        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;
        }
Esempio n. 10
0
 public void AddItem(string item, ItemEventHandler handleEnter, ItemEventHandler handleEscape)
 {
     items.Add(new Item(item, handleEnter, handleEscape));
 }
Esempio n. 11
0
        protected void OnDropItem(ItemEventArgs e)
        {
            ItemEventHandler handler = DropItem;

            handler?.Invoke(this, e);
        }
Esempio n. 12
0
 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;
 }
Esempio n. 13
0
 public DrawableItems()
 {
     MouseMove+= new ItemMouseEventHandler(stubMouseEvent);
     MouseUp+= new ItemMouseEventHandler(stubMouseEvent);
     MouseDown+= new ItemMouseEventHandler(stubMouseEvent);
     MouseEnter+= new ItemEventHandler(stubEvent);
     MouseLeave+=new ItemEventHandler(stubEvent);
 }
Esempio n. 14
0
 public Item(string name, ItemEventHandler handleEnter, ItemEventHandler handleEscape)
 {
     Name              = name;
     this.HandleEnter  = handleEnter;
     this.HandleEscape = handleEscape;
 }