internal ChatTab GetChatTabBySocketAndRoomID(PengChat3ClientSock sock, uint roomid)
        {
            foreach (var tab in tabControl_Page.Items)
            {
                if (tab == tabItem_Main)
                    continue;

                ChatTab item = (ChatTab)tab;
                if (item.Sock == sock && item.Room.ID == roomid)
                    return item;
            }

            return null;
        }
Exemplo n.º 2
0
        public ChatTab(PengChat3ClientSock sock, Room room)
        {
            InitializeComponent();

            Sock = sock;
            Room = room;

            Header = Room.Name;

            Members = new ObservableCollection<Member>();
            listView_Members.ItemsSource = Members;

            button_Exit.Content = ResourceManager.GetStringByKey("Str_Exit");
        }
Exemplo n.º 3
0
        private void LoginToServer()
        {
            if (textBox_ID.Text != "" && textBox_PW.Password != "" && textBox_IP.Text != "")
            {
                PengChat3ClientSock sock = new PengChat3ClientSock();

                try
                {
                    sock.OnLogin += sock_OnLogin;
                    sock.OnDisconnected += sock_OnDisconnected;
                    sock.OnRoomInfo += sock_OnRoomInfo;
                    sock.OnCreateRoom += sock_OnCreateRoom;
                    sock.OnRemoveRoom += sock_OnRemoveRoom;
                    sock.OnAddClient += sock_OnAddClient;
                    sock.OnRemoveClient += sock_OnRemoveClient;
                    sock.OnGetMembers += sock_OnGetMembers;
                    sock.OnReceiveChat += sock_OnReceiveChat;
                    //sock.OnChangeState += sock_OnChangeState;
                    //sock.OnChangeMaster += sock_OnChangeMaster;

                    sock.Connect(textBox_IP.Text, App.Port);
                    sock.Login(textBox_ID.Text, textBox_PW.Password);
                }
                catch (System.Net.Sockets.SocketException ex)
                {
                    Utility.Error(ResourceManager.GetStringByKey("Str_CannotConnectToServer") + '\n' + ex.Message);

                    if (sock != null)
                    {
                        sock.Dispose();
                        sock = null;
                    }

                    return;
                }
            }
            else
            {
                Utility.Error(ResourceManager.GetStringByKey("Str_EmptyLabel"));
            }
        }
 internal ViewModel GetViewModelBySocket(PengChat3ClientSock sock)
 {
     ViewModel model = viewModel.Find(m => { return m.Sock == sock; });
     return model;
 }
 public ViewModel(PengChat3ClientSock sock)
 {
     Sock = sock;
     Rooms = new ObservableCollection<Room>();
 }