public void BoxChangedHandler(object obj, EventArgsBox e) { this.BeginInvoke( (MethodInvoker) delegate() { ChangeItem(e.BoxArg); } ); }
// when room name changes topology removes the box and adds the new box. // this handler removes the event handler for the box in the old room. // the new box box changed handler will be added in AddBox. private void BoxRemovedHandler(object obj, EventArgsBox e) { lock (this) { e.BoxArg.EventBoxChanged -= BoxChangedHandler; Box box = e.BoxArg; iBoxList.Remove(box); } }
protected override void BoxChangedHandler(object obj, EventArgsBox e) { if (e.BoxArg.State == Box.EState.eOn && !e.BoxArg.IsProxy) { iUi.Enable(); } else { iUi.Disable(); } }
private void BoxAddedHandler(object obj, EventArgsBox e) { lock (this) { e.BoxArg.EventBoxChanged += BoxChangedHandler; Box box = e.BoxArg; foreach (Box existingBox in iBoxList) { if (existingBox.MacAddress == box.MacAddress) { // don't add this box if it's already in the list (discovered on a different net adaptor) return; } } iBoxList.Add(box); } }
private void AddItem(EventArgsBox e) { Target target = new Target(e.BoxArg); TargetMediator targetMediator = new TargetMediator(target, iManager); ListViewItem item = new ListViewItem(new string[] { "", "", "", "", "", "", "", "", "", "", "", "", "" }); SetListViewItem(targetMediator, item); listView1.Items.Add(item); //on startup set selected item to the last user selected device if (e.BoxArg.MacAddress == iHelper.ApplicationOptions.LastBoxSelected) { item.Selected = true; pictureBox1.ImageLocation = e.BoxArg.ImageUri; } if (iFormTree != null && !iFormTree.IsDisposed) { iFormTree.UpdateTree(); } }
public void BoxAddedHandler(object obj, EventArgsBox e) { e.BoxArg.EventBoxChanged += BoxChangedHandler; // made synchronous to handle starting from fallback case, box added and box changed called in succession, so targetMediator.Target.AddBoxChangeEvent is missed otherwise this.Invoke( (MethodInvoker) delegate() { if (listView1.Items.ContainsKey(e.BoxArg.MacAddress)) { //if the box is being added due to a room change update the item TargetMediator targetMediator = (TargetMediator)listView1.Items[e.BoxArg.MacAddress].Tag; targetMediator.Target.AddBoxChangeEvent(e.BoxArg); ChangeItem(e.BoxArg); } else { AddItem(e); } } ); }
private void BoxChangedHandler(object obj, EventArgsBox e) { lock (this) { Console.WriteLine("BoxChangedHandler {0} ip [{1}] state [{2}] iBoxList count {3}", e.BoxArg.Name, e.BoxArg.IpAddress, e.BoxArg.State, iBoxList.Count); Box box = e.BoxArg; bool found = false; foreach (Box b in iBoxList) { if (b.MacAddress == box.MacAddress) { iBoxList[iBoxList.IndexOf(b)] = box; // modify existing entry found = true; break; } } if (found == false) { iBoxList.Add(box); // add new entry } } }
protected abstract void BoxChangedHandler(object obj, EventArgsBox e);
//when room name changes topology removes and adds the box the new box. this handler removed the event handler for the box //in the old room. the new box box changed handler will be added in AddBox. public void BoxRemovedHandler(object obj, EventArgsBox e) { e.BoxArg.EventBoxChanged -= BoxChangedHandler; }