Example #1
0
        public void SelectActive(RoomObjExt room)
        {
            var tab = this.tabControl1.SelectedTab;

            roomName(tab.Text.ToString());
            (tab.Tag as RoomObjExt).SetActive();
        }
Example #2
0
        public void CreateRoom(string room)
        {
            RoomObjExt r = new RoomObjExt(room);

            //AddRoom(r);
            RequestManager.CreateRoom(room);
            MessageListUpdated?.Invoke();
            RoomDataUpdated?.Invoke();
        }
Example #3
0
        public void SendMessage(string msg)
        {
            var tab = tabControl1.SelectedTab;

            if (tab == null || tab.ToString() == "")
            {
                return;
            }
            RoomObjExt current = (RoomObjExt)tab.Tag;

            current.SendMessage(msg);
        }
Example #4
0
        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);
        }
Example #5
0
        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();
        }
Example #6
0
        public RoomObjExt FindRoom(string name)
        {
            RoomObjExt room = null;

            foreach (RoomObjExt r in Rooms)
            {
                if (r.Name == name)
                {
                    room = r;
                    break;
                }
            }
            return(room);
        }
Example #7
0
        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));
                }
            };
        }
Example #8
0
        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);
        }