/// <summary> /// Actualiza los datos de un usuario en el Árbol de usuarios /// </summary> /// <param name="netUser">El usuario que ha actualizado sus datos o estado</param> public void refreshUserHandler(NetUser netUser) { if (treeView.InvokeRequired) { NetUserCallback d = new NetUserCallback(refreshUserHandler); this.Invoke(d, new object[] { netUser }); } else { foreach (TreeNode node in treeView.Nodes) { NetUser tagNetUSer = (NetUser)node.Tag; if (tagNetUSer.Id == netUser.Id) { if (!node.Text.Equals(netUser.ToString())) { node.Text = netUser.ToString(); } if (!node.Tag.Equals(netUser)) { node.Tag = netUser; } if (!node.ImageIndex.Equals(tagNetUSer.SignalQuality)) { node.ImageIndex = tagNetUSer.SignalQuality; node.SelectedImageIndex = tagNetUSer.SignalQuality; } break; } } } }
/// <summary> /// Agrega a un usuario de la red al árbol de usuarios /// </summary> /// <param name="netUser">El nuevo usuario que ha ingresado a la red</param> public void addUserHandler(NetUser netUser) { if (treeView.InvokeRequired) { NetUserCallback d = new NetUserCallback(addUserHandler); this.Invoke(d, new object[] { netUser }); } else { TreeNode newNode = new TreeNode(netUser.ToString()); newNode.Tag = netUser; newNode.ImageIndex = netUser.SignalQuality; newNode.SelectedImageIndex = netUser.SignalQuality; int index = -1; foreach (TreeNode node in treeView.Nodes) { NetUser tagNetUSer = (NetUser)node.Tag; if (tagNetUSer.Id == netUser.Id) { index = node.Index; break; } } if (index == -1) { treeView.Nodes.Add(newNode); } else { refreshUserHandler(netUser); } } }
/// <summary> /// Actualiza los datos del usuario local en el grafo de la red /// </summary> /// <param name="netUser">El usario local</param> public void refreshLocalUserHandler(NetUser netUser) { if (viewer.InvokeRequired) { NetUserCallback d = new NetUserCallback(refreshLocalUserHandler); this.Invoke(d, new object[] { netUser }); } else { TreeNode newNode = new TreeNode(netUser.ToString()); newNode.Tag = netUser; newNode.ImageIndex = 0; newNode.SelectedImageIndex = 0; int index = netUsersNodes.IndexOf(new NetUserNode(netUser.Id)); if (index == -1) { addUserHandler(netUser); } else { refreshUserHandler(netUser); } } }
/// <summary> /// Ingresa o actualiza los datos del usuario local en el Árbol de usuarios /// </summary> /// <param name="netUser">El usario local</param> public void refreshLocalUserHandler(NetUser netUser) { if (treeView.InvokeRequired) { NetUserCallback d = new NetUserCallback(refreshLocalUserHandler); this.Invoke(d, new object[] { netUser }); } else { TreeNode newNode = new TreeNode(netUser.ToString()); newNode.Tag = netUser; newNode.ImageIndex = 0; newNode.SelectedImageIndex = 0; int index = -1; foreach (TreeNode node in treeView.Nodes) { NetUser tagNetUSer = (NetUser)node.Tag; if (tagNetUSer.Id == netUser.Id) { index = node.Index; break; } } if (index == -1) { treeView.Nodes.Add(newNode); } else { TreeNode node = treeView.Nodes[index]; NetUser tagNetUSer = (NetUser)node.Tag; if (!node.Text.Equals(netUser.ToString())) { node.Text = netUser.ToString(); } if (!node.Tag.Equals(netUser)) { node.Tag = netUser; } } } }
/// <summary> /// Agrega a un usuario de la red al árbol de usuarios /// </summary> /// <param name="netUser">El nuevo usuario que ha ingresado a la red</param> public void addUserHandler(NetUser netUser) { if (treeView.InvokeRequired) { NetUserCallback d = new NetUserCallback(addUserHandler); this.Invoke(d, new object[] { netUser }); } else { TreeNode newNode = new TreeNode(netUser.ToString()); newNode.Tag = netUser; newNode.ImageIndex = netUser.SignalQuality; newNode.SelectedImageIndex = netUser.SignalQuality; treeView.Nodes.Add(newNode); } }