コード例 #1
0
ファイル: menu_chatting.cs プロジェクト: cocodejam/simsimtalk
        //채팅방 목록 갱신
        public void ChatList(string roomNum, string fndList, bool isLast)
        {
            //마지막 일 경우
            if (isLast)
            {
                //pntRoomList();
                updateChatRoom();
                Store.msgList.Clear();
                return;
            }

            int rNum = int.Parse(roomNum);

            //존재하는 채팅방인지 검사
            foreach (ChattingRoom item in Store.chatList)
            {
                if (item.getRoomNum() == rNum)
                {
                    return;
                }
            }

            string[]     str          = fndList.Split('/');
            ChattingRoom chattingRoom = new ChattingRoom(main, rNum);

            Store.chatList.Add(chattingRoom);
            foreach (string item in str)
            {
                if (item.Equals(""))
                {
                    break;
                }
                string[] fnd  = item.Split('?');
                int      uNum = int.Parse(fnd[0]);
                if (uNum != Store.myInfo.getUserNum())
                {
                    Friend friend;
                    try
                    {
                        friend = Store.friendList.Single((x) => x.getfNum() == uNum);
                    }
                    catch (InvalidOperationException)
                    {
                        friend = new Friend();
                        friend.setfNum(uNum);
                        friend.setfname(fnd[1]);
                    }
                    chattingRoom.addMember(friend);
                }
            }
            //미확인 메시지 검사
            for (int i = Store.msgList.Count - 1; i >= 0; i--)
            {
                Message message = Store.msgList.ElementAt(i);
                if (rNum.Equals(message.getRoomNum()))
                {
                    int      msgUser = message.getId();
                    string   msg     = message.getMsg();
                    DateTime msgTime = message.getTime();
                    chattingRoom.setRestMessage(msgUser, msg, msgTime);
                }
            }
        }