public void SelectActive(RoomObjExt room) { var tab = this.tabControl1.SelectedTab; roomName(tab.Text.ToString()); (tab.Tag as RoomObjExt).SetActive(); }
public void CreateRoom(string room) { RoomObjExt r = new RoomObjExt(room); //AddRoom(r); RequestManager.CreateRoom(room); MessageListUpdated?.Invoke(); RoomDataUpdated?.Invoke(); }
public void SendMessage(string msg) { var tab = tabControl1.SelectedTab; if (tab == null || tab.ToString() == "") { return; } RoomObjExt current = (RoomObjExt)tab.Tag; current.SendMessage(msg); }
private TreeNode RoomToTreeNode(RoomObjExt room) { TreeNode roomNode = new TreeNode(room.Name); roomNode.Tag = room; foreach (Person p in room.clients) { TreeNode clnt = new TreeNode(p.userName); clnt.Tag = p; roomNode.Nodes.Add(clnt); } return(roomNode); }
public void CloseRoom() { var tab = this.tabControl1.SelectedTab; if (tab == null || tab.ToString() == "") { return; } this.tabControl1.TabPages.Remove(tab); RequestManager.LeaveRoom(((RoomObjExt)(tab.Tag)).Name); RoomObjExt room = tab.Tag as RoomObjExt; room.Unbind(); }
public RoomObjExt FindRoom(string name) { RoomObjExt room = null; foreach (RoomObjExt r in Rooms) { if (r.Name == name) { room = r; break; } } return(room); }
public void AddRoom(RoomObjExt room) { foreach (TabPage tmp in this.tabControl1.TabPages) { if (tmp.Tag == room) { return; } } TabPage tp = new TabPage(room.Name); tp.Tag = room; ExtendedMessageView emv = new ExtendedMessageView(room); emv.Dock = DockStyle.Fill; tp.Controls.Add(emv); tabControl1.SelectedTab = tp; room.Bind(); room.SetActive(); this.tabControl1.TabPages.Add(tp); selectedTab = tp; tp.Select(); room.NotificationUpdated += (x) => { if (!(tp.Tag as RoomObjExt).active) { if (x > 0) { string label = room.Name + "(" + x + ")"; tp.Invoke(new Action(() => tp.Text = label)); } } else { tp.Invoke(new Action(() => tp.Text = room.Name)); } }; }
protected TreeNode RoomToTreeNode(RoomObjExt room) { TreeNode roomNode = new TreeNode(room.Name); roomNode.Tag = room; roomNode.ContextMenuStrip = new RoomContextMenu(room, this); if (room.Creator == Client.Username) { roomNode.NodeFont = new Font(SystemFonts.MenuFont, FontStyle.Bold); } foreach (string p in room.clients) { TreeNode clnt = new TreeNode(p); clnt.Tag = p; roomNode.Nodes.Add(clnt); } return(roomNode); }